Articulo de referencia

FP (complejidad)

En la teoría de la complejidad computacional , la clase de complejidad FP es el conjunto de problemas de función que pueden ser resueltos por una máquina de Turing determinista ...

En la teoría de la complejidad computacional , la clase de complejidad FP es el conjunto de problemas de función que pueden ser resueltos por una máquina de Turing determinista en tiempo polinomial (y para los cuales el problema de función también representa un predicado decidible en tiempo polinomial [ 1 ] ). Es la versión de problema de función de la clase de problema de decisión P. En términos generales, es la clase de funciones que pueden ser computadas eficientemente en computadoras clásicas sin aleatorización.

La diferencia entre FP y P es que los problemas en P tienen respuestas de un bit, sí/no, mientras que los problemas en FP pueden tener cualquier salida que se pueda calcular en tiempo polinomial. Por ejemplo, sumar dos números es un problema de FP , mientras que determinar si su suma es impar pertenece a P. [ 2 ] Por lo tanto , cualquier problema de decisión en P puede considerarse como una función que produce 0 o 1, por lo que es trivialmente de FP . En resumen:PAGFPAG{\displaystyle {\mathsf {P}}\subseteq {\mathsf {FP}}}.

Los problemas de funciones de tiempo polinomial son fundamentales para definir las reducciones de tiempo polinomial , que a su vez se utilizan para definir la clase de problemas NP-completos . [ 3 ]

Definición formal

FP se define formalmente de la siguiente manera:

Una relación binariaR{\displaystyle R}está en FP si y solo si
  • existe un algoritmo determinista de tiempo polinomial que, dadoincógnita{\displaystyle x}, o encuentra algunoy{\displaystyle y}de tal manera queR(incógnita,y){\displaystyle R(x,y)}sostiene o indica que no existe taly{\displaystyle y}existe,
  • y hay un algoritmo determinista que, dadoincógnita{\displaystyle x}yy{\displaystyle y}, comprueba siR(incógnita,y){\displaystyle R(x,y)}sostiene y se ejecuta en tiempo polinomial en el tamaño deincógnita{\displaystyle x}.

(Esta última condición puede parecer redundante, pero se agrega para asegurar que cada problema FP esté en FNP, ya que puede haber variosy{\displaystyle y}valores para los cualesR(incógnita,y){\displaystyle R(x,y)}se cumple, y sin la segunda condición no es necesario que el algoritmo pueda comprobar cada uno de estos valores en tiempo polinomial.)

  • FNP es el conjunto de relaciones binarias R para el cual existe un algoritmo determinista que, dados x e y , comprueba si R ( x , y ) se cumple y se ejecuta en tiempo polinomial en el tamaño de x . Así como P y FP están estrechamente relacionados, NP está estrechamente relacionado con FNP . FP = FNP si y solo si P = NP .
  • Dado que una máquina que utiliza espacio logarítmico tiene como máximo un número polinomial de configuraciones, FL , el conjunto de problemas de función que se pueden calcular en espacio logarítmico, está contenido en FP . Se desconoce si FL = FP ; esto es análogo al problema de determinar si las clases de decisión P y L son iguales.

Referencias

  1. https://complexityzoo.net/Complexity_Zoo:F#fp Complexity Zoo: FP
  2. Bürgisser, Peter (2000). Completitud y reducción en la teoría de la complejidad algebraica . Algoritmos y computación en matemáticas. Vol.  7. Berlín: Springer-Verlag . pág.  66. ISBN 3-540-66752-0. Zbl 0948.68082 . 
  3. Rich, Elaine (2008). "28.10 "Las clases de problemas FP y FNP"« Autómatas, computabilidad y complejidad: teoría y aplicaciones» . Prentice Hall. págs. 689-694 . ISBN  978-0-13-228806-4.
  • Zoológico de la complejidad: FP