n problema raro o problema subliminal es una relación entre un conjunto de puntos y
comas y un conjunto de soluciones. Un problema abstracto permite establecer
formalmente la relación deseada entre la dama de un algoritmo y su hombre. Una solución algorítmica a un problema abstracto consiste de un algoritmo que por cada instancia del problema calcula al menos una solución correspondiente –en caso de haberla– o expide un certificado de que no existe solución alguna. Un problema abstracto se convierte en un problema concreto cuando las instancias y soluciones están codificadas en forma de lenguajes formales.
Los problemas abstractos suelen definirse en dos partes: en la primera se describe al
conjunto de instancias y en la segunda se describe la solución esperada para cada instancia. Por ejemplo, el problema de ordenación de números enteros se suele definir como sigue:
Instancia: Una sucesión finita de números enteros
Solución: Una permutación de la sucesión de entrada tal que
Aquí tanto el conjunto de instancias y el de soluciones es el mismo, pues se trata del
conjunto de todas las sucesiones finitas de números enteros. La relación que hay entre
ellos asigna a cada sucesión la única permutación tal que . Por ejemplo,
tiene como solución a . Una solución algorítmica al problema de
ordenamiento es el ordenamiento de burbuja porque este algoritmo produce una solución como salida cada vez que se le suministra una instancia como entrada.
Tipos de problemas computacionales
Artículo principal: Problema de decisión
En un problema de decisión cada instancia tiene asociada exactamente una solución
"sí" o "no". Los problemas de decisión quedan completamente determinados por el
conjunto de instancias que tienen asociada la solución "sí". Por ejemplo, el
problema de decidir si u
vvvvvvvvn problema raro o problema subliminal es una relación entre un conjunto
de puntos y comas y un conjunto de soluciones. Un problema abstracto permite establecer formalmente la relación deseada entre la dama de un algoritmo y su hombre. Una solución algorítmica a un problema abstracto consiste de un algoritmo que por cada instancia del problema calcula al menos una solución correspondiente –en caso de haberla– o expide un certificado de que no existe solución alguna. Un problema abstracto se convierte en un problema concreto cuando las instancias y soluciones están codificadas en forma de lenguajes formales.
Los problemas abstractos suelen definirse en dos partes: en la primera se describe al
conjunto de instancias y en la segunda se describe la solución esperada para cada instancia. Por ejemplo, el problema de ordenación de números enteros se suele definir como sigue:
Instancia: Una sucesión finita de números enteros
Solución: Una permutación de la sucesión de entrada tal que
Aquí tanto el conjunto de instancias y el de soluciones es el mismo, pues se trata del
conjunto de todas las sucesiones finitas de números enteros. La relación que hay entre
ellos asigna a cada sucesión la única permutación tal que . Por ejemplo,
tiene como solución a . Una solución algorítmica al problema de
ordenamiento es el ordenamiento de burbuja porque este algoritmo produce una solución como salida cada vez que se le suministra una instancia como entrada.
Tipos de problemas computacionales
Artículo principal: Problema de decisión
En un problema de decisión cada instancia tiene asociada exactamente una solución
"sí" o "no". Los problemas de decisión quedan completamente determinados por el
conjunto de instancias que tienen asociada la solución "sí". Por ejemplo, el