La pregunta tiene dos problemas:
(1) No es necesariamente cierto que 0⁰ = 1 en el IEEE Std 754-2008 (la versión más reciente).
(2) ¿Qué quieres decir con “eso” y por qué dices “no tiene sentido”?
Primero, abordemos cómo debe considerarse 0.. El es un teorema a veces denominado principio de operación nular que dice: dado un conjunto en el que se define una operación binaria asociativa y esa operación tiene un elemento de identidad en el conjunto, entonces la operación binaria se puede extender a una versión anaria para todos los valores enteros no negativos de. En el caso de = 0 (una operación nular), el resultado es siempre el elemento de identidad de la operación binaria. La exponenciación ^ implica multiplicar copias de (que asumiremos que es cualquier número real aquí), por lo que esta es una extensión -ary de la operación binaria de multiplicación cuyo elemento de identidad es 1. Por lo tanto, cuando = 0, el resultado es siempre 1 , independientemente de qué valor pueda tener. Ahora, técnicamente hemos abordado lo que debería ser el valor de 0⁰ solo en el contexto de exponentes enteros. Para extender al contexto de exponentes reales, podríamos argumentar desde el punto de vista de una incorporación que 0⁰ debería ser 1 en el caso más general de exponentes reales tal como lo es en el caso más específico de exponentes enteros; sin embargo, algunas aplicaciones que involucran análisis real necesitan que las funciones / operaciones bajo consideración sean continuas, lo que ^ no está en (0; 0), por lo que 0⁰ debe considerarse indefinido en ese contexto. Si la continuidad es importante, entonces 0⁰ debe considerarse como indefinido en el contexto de exponentes reales; de lo contrario, 0⁰ debe considerarse como 1 (de hecho, debe ser en el caso de exponentes enteros, basado en el principio de operación nular). La continuidad no es relevante para exponentes enteros. ¿Tiene sentido esta determinación del valor apropiado para 0⁰, si eso es lo que significaba la parte de la pregunta original?
Ahora, ¿qué dice IEEE Std 754-2008 sobre 0⁰? En primer lugar, está cubierto por la Cláusula 9, Operaciones recomendadas, que proporciona asesoramiento (no requisitos) a diseñadores e implementadores de lenguajes de programación combinados con implementadores de hardware (aunque en este caso la carga recae principalmente en los idiomas) para manejar ciertas operaciones , incluida la exponenciación. Los escritores de IEEE Std 754 hicieron todo lo posible para ser tan matemáticamente razonables como pudieron en el contexto de las computadoras cuya aritmética de coma flotante no puede tener muchas de las propiedades típicas que los matemáticos asocian con las operaciones aritméticas. En el caso de 0⁰, se dan tres opciones: (1) la función de pown (que está restringida a exponentes enteros) es devolver 1 para ⁰ para todos los valores de, incluido 0; (2) la función pow (que cubre exponentes reales) es devolver 1 para ⁰ para todos los valores de, incluido 0; (3) la función powr es considerar 0⁰ como no válido y desencadenar una excepción. Estos corresponden exactamente a lo que se concluyó acerca del comportamiento matemático apropiado de 0⁰: (1) 1 cuando el dominio de exponentes está restringido a enteros; (2) 1 cuando los exponentes reales están involucrados y la continuidad no está involucrada; (3) indefinido cuando la continuidad es importante. El programador simplemente necesita seleccionar la correcta de las funciones pown, pow o powr para que se correspondan con el dominio y el comportamiento del exponente deseado.
- ¿Puedo obtener el código fuente para la exponenciación de bases fraccionarias con exponentes fraccionales en Java al igual que la función Math.pow pero sin usar la función?
- ¿Cómo obtengo un límite superior para T (n) = T (n / 2) + n?
- ¿Cuáles son algunos compromisos fundamentales en informática?
- ¿Qué es el análisis p delta?
- ¿Cómo se puede dividir un conjunto de números en dos subconjuntos de modo que el XOR de los elementos en un subconjunto sea igual al XOR de los elementos en el otro y sea lo más grande posible?