Any idea why all([]) is true while any([]) is false

2 visualizaciones (últimos 30 días)
Khaled Hamed
Khaled Hamed el 29 de Jul. de 2012
>> all([])
ans =
1
>> any([])
ans =
0
  2 comentarios
Ryan
Ryan el 29 de Jul. de 2012
It's written into the documentation as such, but no explanation is given.
Khaled Hamed
Khaled Hamed el 29 de Jul. de 2012
I have just noticed the same with Nan! more confusing
>> all(nan)
ans =
1
>> any(nan)
ans =
0

Iniciar sesión para comentar.

Respuesta aceptada

Daniel Shub
Daniel Shub el 29 de Jul. de 2012
This post by Loren lead to some comments that address the issue, especially the one by Matt Fig.

Más respuestas (1)

the cyclist
the cyclist el 29 de Jul. de 2012
I can't say I know definitively, but I expect that one reason is for consistency when taking the union of sets with the empty set. For example, one would want
all(union(true,[]))
to be true, and also
any(union(false,[]))
to be false. The definitions in your question make sense in that context.
  1 comentario
Khaled Hamed
Khaled Hamed el 29 de Jul. de 2012
I have just noticed the same with NaN! more confusing
>> all(nan)
ans =
1
>> any(nan)
ans =
0

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by