Las ecuaciones funcionales, en sus términos más generales, son realmente muy difíciles. No es coincidencia que prácticamente todas las competiciones internacionales de matemática tengan uno de ellos, generalmente tan inocente como el que has escrito. Los métodos para resolverlos varían desde la inducción simple hasta el análisis espacial de Banach de dimensión infinita y es muy poco probable un enfoque de programación genérico para resolverlos.
En este caso particular, aquí es una aproximación directa hacia adelante:
Supongamos que para cualquier par de números enteros m, n tenemos F (m) = F (n) = k. Pero entonces m = F (F (m)) = F (k) = F (F (n)) = n: por lo tanto m = ny F nunca toma el mismo valor en dos entradas diferentes. Pero sabemos que F (F (n)) = n = F (F (n + 2) +2) - por lo tanto, F (n) y F (n + 2) +2 deben ser el mismo número, lo que quiere decir , F (n + 2) == F (n) - 2 == F (n-2) - 4 = .... Ahora sabemos que F (0) = 1, entonces F (1) = F (F (0)) = 0. Pero luego F (129) = F (127) - 2 = F (125) - 4 = ... = F (1) - 128 = -128
Así que está su solución, pero un algoritmo mecánico para resolver cualquier variación simplemente no existe.
Lo son las condiciones en F? Cuando n = 0, F (n) = 1. ¿En qué condiciones calcula F F (F (n)) y F (F (n + 2) +2)? – inspectorG4dget
@ inspectorG4dget F es continuo en R. – Sharathiitr
¿Puede dar una descripción más precisa de qué tipo de restricciones podrían surgir al resolver este tipo de problemas? Es fácil describir secuencias que no están definidas en todas partes si permite expresiones matemáticas arbitrarias. – templatetypedef