Decidabilidad de comprobar un antiderivado?

9

Supongamos que tengo dos funciones y y estoy interesado en determinar siFG

F(x)=G(x)dx.

Supongamos que mis funciones están compuestas de funciones elementales (polinomios, exponenciales, registros y funciones trigonométricas), pero no, digamos, series de Taylor.

¿Es este problema decidible? Si no, ¿es semidecidable?

(Lo pregunto porque estoy enseñando una clase sobre computabilidad y un estudiante me preguntó si un TM podría ayudarlo a integrar una función cuya integral no se conocía actualmente. Sospecho que las funciones que no sabemos cómo integrar son más adecuadamente funciones cuya integral no puede expresarse como una combinación de las funciones elementales anteriores en lugar de funciones para las cuales no conocemos la integral, pero eso me hizo pensar si el problema general de verificar integrales era decidible).

templatetypedef
fuente
Pareces estar preguntando acerca de la diferenciación simbólica. Puede echar un vistazo a en.wikipedia.org/wiki/Symbolic_computation y en.wikipedia.org/wiki/Computer_algebra_system . No me queda claro qué clase de funciones permiten. ¿Qué tipo de composición permiten? por ejemplo, ¿está permitido ? Le sugiero que intente formalizar la clase de funciones que le interesan utilizando una definición recursiva. ¿Has intentado ver qué sucede cuando usas la regla de la cadena y ver si puedes obtener un algoritmo recursivo que maneje todos los casos? F(x)=sin(cos(ex))+log(2x3+3)
DW
3
Como la diferenciación es fácil, realmente se pregunta si podemos decidir si una expresión es idénticamente cero. Este es probablemente un problema en el que la información es más fácil de encontrar. F
Yuval Filmus

Respuestas:

8

La respuesta corta a su pregunta es "no". El teorema de Richardson y sus extensiones posteriores básicamente afirman que tan pronto como incluya las funciones trigonométricas elementales, el problema de decidir si (y, por lo tanto, si f ( x ) = g ( x ) , ya que esto es lo mismo que f ( x ) - g ( x ) = 0 ) no tiene solución.f(x)=0f(x)=g(x)f(x)g(x)=0

Lo interesante de esto es que la teoría de primer orden de los campos cerrados reales es decidible. Intuitivamente, la razón por la cual agregar funciones trigonométricas hace que el sistema de primer orden sea indecidible es porque puedes construir los enteros a través de , y la teoría de los enteros es indecidible.{xR:sin(πx)=0}

Si la teoría de los campos cerrados reales con es decidible es un problema abierto bastante famoso .ex

Aún más interesante es que si tuviera un oráculo que "resolviera" el problema constante (es decir, un oráculo que le diga si o no), entonces la integración de funciones elementales en términos finitos es decidible , y Se conoce un algoritmo práctico. Entonces, dado G ( x ) , podríamos encontrar F ( x ) o saber que no hay una integral elemental de G en términos finitos.f(x)=0G(x)F(x)G

Seudónimo
fuente
6

Su problema parece reducir la siguiente pregunta más simple:

Dadas dos funciones en la clase de funciones, ¿tenemos F ( x ) = G ( x ) para todas las x ? (En otras palabras, ¿tienen el mismo valor en todas partes?)F,GF(x)=G(x)x

No sé si esto es decidible, para esta clase de funciones. Si es así, entonces su problema también debería ser decidible.


Para su problema, un enfoque general es: diferenciar simbólicamente para obtener , luego verifique si tenemos para todas las .F(x)F ( x ) = G ( x ) xF(x)F(x)=G(x)x

Entonces, el paso clave es la diferenciación simbólica. Veamos cómo hacerlo con más detalle. Podemos definir la clase de funciones permitidas de forma recursiva:

F(x)::=c|x|ex|log(x)|sin(x)|cos(x)|tan(x)|F1(x)+F2(x)|F1(x)×F2(x)|F1(x)/F2(x)|F1(F2(x))

donde extiende sobre las constantes y sobre las funciones.cF,F1,F2

Entonces es posible diseñar un algoritmo recursivo para diferenciar simbólicamente esta clase de funciones, utilizando las reglas estándar de cálculo (por ejemplo, la regla de la cadena, etc.). En particular, podemos manejar todos los casos anteriores y mostrar recursivamente que la derivada se puede expresar simbólicamente como una función dentro de esta clase. Por ejemplo:

  • Si , .F(x)=cF(x)=0

  • Si , .F(x)=xF(x)=1

  • Si , .F(x)=exF(x)=ex

  • Si , .F(x)=log(x)F(x)=1/x

  • Si , .F(x)=sin(x)F(x)=cos(x)

  • Si , .F(x)=tan(x)F(x)=1+(tan(x))2

  • Si , .F(x)=F1(x)+F2(x)F(x)=F1(x)+F2(x)

  • Si , .F(x)=F1(x)×F2(x)F(x)=F1(x)F2(x)+F1(x)F2(x)

  • Si , (regla de la cadena).F(x)=F1(F2(x))F(x)=F1(F2(x))F2(x)

Y así. En cada caso, si está en la clase de funciones permitidas, también lo está , y puede calcular recursivamente una expresión simbólica para ; esto se conoce como diferenciación simbólica .F(x)F(x)F(x)

Finalmente, todo lo que queda es verificar si para todo . Ese es el problema que menciono en la parte superior de mi respuesta.F(x)=G(x)x


Hay un método simple para verificar si dos funciones son idénticamente iguales que esperaría que funcionen bastante bien en la práctica. El algoritmo es el siguiente: seleccione repetidamente un valor aleatorio de y compruebe si cumple para ese valor de . Si se mantiene con igualdad para muchas elegidas al azar , entonces la salida "son idénticamente iguales". Si encuentra alguna para la cual , entonces emite "son diferentes".F ( x ) = G ( x ) x x x F ( x ) G ( x )xF(x)=G(x)xxxF(x)G(x)

No hay garantía de que esto funcione, pero para muchas clases de funciones, la salida de este procedimiento será correcta con alta probabilidad. En particular, supongamos que tenemos alguna distribución en representada por la variable aleatoria y algo de tal manera que cumple para todas las en la clase. Supongamos, además, que la clase de funciones permitidas se cierra por resta (como lo es su clase). Luego se deduce que rondas del procedimiento anterior da la respuesta incorrecta con probabilidad como máximo .X ϵ > 0 Pr [ F ( X ) = 0 ] ϵxXϵ>0Pr[F(X)=0]ϵr ( 1 - ϵ ) rFr(1ϵ)r

Además, si hay un procedimiento aleatorio para la prueba de igualdad polinómica, entonces el problema es decidible.

Queda por preguntarse si tal resultado es válido para su clase particular de funciones. La declaración anterior probablemente no sea válida. Sin embargo, si tenemos suerte, quizás podamos probar algo como lo siguiente:

Para todos los , tal vez podamos encontrar una distribución en números reales, es decir, una variable aleatoria , y una constante , tal que se cumple para todas las funciones que están en su clase y tienen "tamaño" como máximo .X s ϵ s > 0 Pr [ F ( X ) = 0 ] F ssNXsϵs>0Pr[F(X)=0]Fs

Si esto es cierto, se deducirá que existe un algoritmo aleatorio para la prueba de igualdad polinómica y, por lo tanto, su problema es decidible.

DW
fuente