Está en la página 1de 9

2013

UNIVERSIDAD IBEROAMERICANA
1.0

Nombre: Henry Alberto Rodrguez Gernimo Profesora: Rina Familia. Matricula: 12-0875

Periodo: Septiembre Diciembre 2013

Asignatura: Lenguajes Formales y Autmatas.

[ Reducibilidad ]

Una reduccin es una forma de convertir un problema en otro problema de tal forma que la solucin que se le da al segundo problema pueda ser usada para resolver el primero.

Introduccin
El presente documento tiene por objetivo profundizar en la reducibilidad para ellos hemos investigado en diferentes fuentes de informacin entre ella el MIT massachuse Intituted of Tecnologie como fuente principal se espera que con esta investigacin puedan tener conocimientos de las diferentes formas en cmo podemos darle solucin a un problema principal a partir de la solucin de un problema secundario. En muchas ocasiones en problemas matemticos tenemos que realizar conversiones y despejes en frmula para que un problema reduzca su complejidad y podamos proveer una solucin, esto no quiere decir que no se pueda solucionar con su estado inicial sino que pueden existir formas ms fcil de poder proveer una solucin sin disminuir la calidad y la eficiencia y a eso estamos llamados ms en estos tiempos donde el tiempo es sinnimo de dinero.

Funciones computable Definicin: Una funcin f: 1 * 2 * es computable si hay una mquina de Turing (o programa) de forma que, para cada w en 1 *, M en la entrada w detiene con slo f (w) en su cinta. Para ser definitiva, utilizar el modelo bsico de TM, excepto reemplazar qacc y qrej con uno qhalt estado. Funciones computables son usadas para discutir computabilidad sin referir a ningn modelo de computacin concreto, como mquina de Turing o mquina de registros. Los axiomas de Blum pueden ser usados para definir una teora de complejidad computacional abstracta sobre el conjunto de funciones computables En teora de la complejidad computacional, el problema de determinar la complejidad de una funcin computable esta conocido como un problema de funciones. Una funcin parcial

Se llama parcialmente computable si el grfico de f es un conjunto recursivamente numerable. El conjunto de funciones parcialmente computables con un parmetro es normalmente escrito o si el nmero de parmetros puede deducirse del contexto. Una funcin total

Se llama computable si el grfico de f es un conjunto recursivo. El conjunto de funciones totalmente computables con un parmetro normalmente se escribe o una funcin computable f se llama predicado computable si es una funcin con valor booleano. Requerimos F a ser total = definidos para cada cadena. Tambin podramos definir computable parcial (= recursivas parciales) funciones, que se definen en algn subconjunto de 1 *. A continuacin, M no debe detener si f (w) no est definido. Ejemplo 1: Calcular los nmeros primos. -F: {0, 1} * {0, 1} * -En la entrada w que es una representacin binaria del nmero entero positivo i, resultado es la representacin binaria estndar del nmero primos. -En las entradas que representan a 0, resultado es el cadena vaca. Es probable que no les importa lo que el resultado es, en este caso, pero la totalidad requiere que definamos algo. -Por ejemplo: f () = f (0) = f (00) = f (1) = f (01) = f (001) = 10 (rep binaria de 2, el primer Primer) f (10) = f (010) = 11 (3, segundo primo) f (11) = 101 (5, tercer primer) f (100) = 111 (7, cuarto principal) Computables, por ejemplo, por el algoritmo de tamiz. SOLUBLE: Que se pueden resolver problemas. INSOLUBLE: Que no se pueden resolver problemas.

Mapeando la Reducibilidad m Definicin: Sea A 1 *, B 2 * Se idiomas. Entonces A es el mapeo reducible a B, A m B, siempre que se cumpla una funcin computable f: 1 * 2 * tal que, para cada cadena w en 1 *, w A si y slo si f (w) B. Hasta ahora hemos hablado de la reduccin de un problema a otro lugar de manera informal. Ahora debemos formalizar la nocin discutiendo reducibilidad mapeo (o muchos-uno reducibilidad).

Antes de que podamos hacer eso, tenemos que darnos cuenta de que un TM puede calcular una funcin mediante la sustitucin de la entrada en la cinta con la salida deseada. Es decir, en lugar de limitarse a aceptar o rechazar una entrada, se puede utilizar una TM para realizar clculos. Por lo tanto, si una TM implementa la funcin f, entonces se da entrada w, TM es la salida f (w). Ejemplos reducibilidad Mapping Acc01TM = (Acepta la cadena 01, posiblemente otras) Ejemplo: ACCTM m Acc01TM <M, W> <M'M,w>, por funcin computable f. M'M, comporta w como sigue: Si M acepta w, entonces lo acepta todo, de lo contrario, no acepta nada. Esto demuestra f reducibilidad mapeo porque: -Si <M, W> AccTMthen <M'M,w> Acc01TM. -Si <M, W> AccTMthen <M'M,w> Acc01TM. -Por lo tanto, tenemos que "si y slo si", segn sea necesario. -Y f es computable. Tecnificacin: tambin debe asignar no en factores de forma <M, W> alguna parte. (ETM) ^c = Nonemptiness, { M | M accepts some string} Ejemplo: ACCTM m (ETM) c <M, W> <M'M,w>, por funcin computable f. Use el mismo f que antes: Si M acepta w entonces M'M, waccepts todo, de lo contrario, no acepta nada. Pero ahora tenemos que mostrar algo diferente: -Si <M, W> AccTMthen <M'M,w> (ETM) c. Acepta algo, de hecho, acepta todo. -Si <M, W> AccTMthen <M'M,w> ETM. Acepta nada. -F es computable. Nota: No nos mostramos ACCTM m ETM. -Invertida el sentido de la respuesta (tom el complemento).

MPCP = Modificado Mensaje Correspondencia Problema Ejemplo: ACCTM m MPCP. <M, W> <TM,w, tM,w>, por la funcin f computable, donde <TM,w, tM,w> es una instancia de MPCP (juego de fichas + distinguido baldosas). Definimos f para que <M, W> ACCTM si TM, W tiene un partido empezando por tM, w

si <TM,w, tM,w> MPCP Ejemplo: ACCTM m PCP. <M, W> <TM, w> donde <M, W> AccTMiff TM, W tiene un partido si y slo si <TM, w> PCP.

Teoremas bsicos acerca m


Teorema 1 3 4 5 6 7 8 Descripcin Si A m B y B es Turing-decidible entonces A es Turing-decidible. Si A m B y B es Turing-reconocible entonces A es Turing-reconocible. Si A m B y A no es Turing-reconocible entonces B no es Turing-reconocible A m B si y slo si A^c m B^c. Si A m B y B m C entonces A m C. EQTM no es Turing-reconocible (EQTM)^c no es Turing-reconocible

Estos teoremas tienen Corolario, pruebas y conclusiones. Reducibilidad La reducibilidad siempre envuelve dos problemas, a los cuales les podemos llamar A y B, si A se reduce a B, podemos usar la solucin de B para solucionar A. P2 en tiempo polinomial determinstico. Se dice que un problema L1 se reduce en tiempo polinomial determinstico a otro problema L2, si asumiendo que existe un algoritmo A2 en P que resuelve L2 es posible construir un algoritmo A1 en P que resuelva L1. Escribiremos L1 W L2 para significar que L1 se reduce a L2. Intuitiva: Una problema P1 se reduce polinomialmente a otro problema P2, si existe un algoritmo que transforme una instancia del problema P1 en una instancia del problema Por ejemplo suponiendo que quieres encontrar un camino para una nueva ciudad. T sabes que esto podra ser fcil si t tuvieras un mapa. As t puedes reducir el problema encontrando un camino para ir por la ciudad, al problema de obtener un mapa para ir por la ciudad. En el ejemplo: A es el problema para encontrar un camino para cruzar la ciudad, y B es el problema de obtener el mapa. Note que la reducibilidad no dice nada acerca de resolver A y B de forma separada, pero si habla acerca de la solucin de A con respecto a obtener la solucin de B. Reducibilidad de Tuning. Puesto que cada reduccin de un sistema B a un sistema A tiene que determinarse si un solo elemento est adentro A en solamente finito muchos pasos, puede hacer solamente finito muchas preguntas de calidad de miembro en el sistema B. Cuando la cantidad de informacin sobre el sistema B computaban un de un solo bit de A se discute, esto es hecho exacto por la funcin del uso. Formalmente, uso de una reduccin est la funcin que enva cada nmero natural n al nmero natural ms grande m de quin calidad de miembro en el sistema B fue preguntado por la reduccin mientras que determinaba la calidad de miembro de n en A.

Caractersticas Cada sistema es Turing equivalente a su complemento Cada sistema computable es Turing reducible a cada otro sistema computable. Porque estos sistemas se pueden computar sin orculo, pueden ser computados por una mquina del orculo que no haga caso del orculo que se da. La relacin es transitivo: si y entonces. Por otra parte asimientos para cada sistema A, y as la relacin es a pre orden (no es a orden parcial porque y no implica necesariamente A = B). Hay pares de sistemas (A,B) tales que A no es Turing reducible a B y B no es Turing reducible a A. As no es una orden linear.

Teorema de Rice. En teora de la computacin, el teorema de Rice es un teorema enunciado por Henry Gordon Rice y luego generalizado junto con John Myhill y Norman Shapiro a lo que se conoce como el teorema de RiceShapiro. Bsicamente se puede enunciar el teorema de la siguiente manera. Dada una propiedad no trivial de las funciones parciales, no es computable determinar si una funcin arbitraria la posee o no. Otra forma de expresar el teorema de Rice que es ms til en la teora de la computacin dice que: Sea S un conjunto de lenguajes no trivial, es decir, existe una mquina de Turing que reconoce un lenguaje en S existe una mquina de Turing que reconoce un lenguaje no en S Entonces, es indecidible determinar si un lenguaje decidido por una mquina de Turing arbitraria se encuentra en S. En la prctica, esto significa que no hay una mquina que siempre pueda decidir si el lenguaje de una mquina de Turing dada tiene una propiedad no trivial particular. Los casos especiales incluyen la indecidibilidad de si una mquina de Turing acepta una cadena particular, si una mquina de Turing reconoce un lenguaje reconocible particular, y si el lenguaje reconocido por una mquina de Turing podra ser reconocido por una mquina no trivial ms simple, tal como un autmata finito. Es importante tener en cuenta que el teorema de Rice no dice nada acerca de las propiedades de las mquinas o programas que no son propiedades de las funciones y los lenguajes. Por ejemplo, si una mquina tiene una duracin de ms de 100 pasos en alguna entrada es una propiedad decidible, a pesar de que no es trivial. Implementando exactamente el mismo lenguaje, dos mquinas diferentes pueden requerir un diferente nmero de pasos para reconocer la misma entrada. De manera similar, si una mquina tiene ms de 5 estados es una propiedad decidible de la mquina, ya que el nmero de estados puede ser contado simplemente. Cuando una propiedad es del tipo que cualquiera de las dos mquinas pueden o no tener, mientras implementan exactamente el mismo lenguaje, la propiedad es de las mquinas y no de la lengua, y el teorema de Rice no se aplica. Usando caracterizacin de Rogers de Numeracin admisible, el teorema de Rice esencialmente se puede generalizar a partir de mquinas de Turing para la mayora de lenguajes de programacin: no existe ningn mtodo automtico que decida con generalidad no triviales preguntas sobre el comportamiento de un programa BlackBox.

Hemos visto muchos resultados indecibilidad para las propiedades de memorias de traduccin, por ejemplo, para: -Acc01TM = {<M> | 01 L (M)} -ETM = {<M> | L (M) = } -REGTM = {<M> | L (M) es un lenguaje regular} Estas son todas las propiedades de la lengua reconocida por la mquina. Contraste con: - {<M> | M nunca trata de mover a la izquierda del extremo izquierdo de la cinta} - {<M> | M tiene ms de 20 estados} Theoremsays de Rice (esencialmente) que cualquier propiedad de la lengua reconocida por una TM es indecidible. Muy potente teorema. Cubre muchos problemas adems de los anteriores, por ejemplo: - {<M> | L (M) es un conjunto finito} - {<M> | L (M) contiene algunos palndromo} Aplicaciones del teorema de rice. Las aplicaciones de teorema de Rice son numerosas. La primer aplicacin que se nota a simple vista es que no es computable saber si una funcin arbitraria se detiene para algn valor de entrada (hay al menos una que s lo hace, y otra que no, por lo que se trata de una propiedad no trivial). Otra aplicacin que se puede dar a este teorema es saber que no es computable determinar si un programa es malicioso (que realizar acciones maliciosas como por ejemplo, escribir en cierta zona reservada de memoria, copiarse a s mismo en otro programa, etc.). Esto no quiere decir que ningn programa malicioso sea detectable, sino que para cualquier procedimiento de deteccin fiable, siempre se puede definir un programa malicioso que lo burle.

Conclusin
Como resultado de la investigacin de reducibilidad, es posible concluir que para un problema puede existir muchas formas de cmo ofrecer una solucin. Muchas veces creemos que no podemos solucionar un problema porque solo lo estamos viendo desde un punto de vista y no con un mirada de 360 grados. Podramos mencionar que cuando cierto matemtico despierta cada maana, se sienta a la mesa leyendo su diario favorito de matemticas como su esposa hace caf para l. Una semana que se va la esposa de vacaciones, y cuando se despierta, se da cuenta que tiene que hacer su propio caf. Afortunadamente, l recuerda cmo lo hizo, ella abre el armario, saca el caf y una taza, pone unas cucharadas de caf en la taza, agrega el agua, y la coloca en el microondas. As lo hace, y todo est bien. Por desgracia, cuando se despierta al da siguiente, se da cuenta una vez ms que tiene que hacer su propio caf. Para su horror, descubre que el caf y la taza no se encuentran en el armario-que estn en el mostrador. Al pensar por un momento, se da cuenta que puede reducir el problema a uno que ha resuelto con anterioridad. l pone el caf y la taza en el armario y cierra la puerta. l procede a hacer el caf como lo hizo el da anterior. Esto nos confirma que as como podemos encontrar problemas los cuales tenga soluciones fciles podemos enfrentarnos a problemas que su solucin si y solo si podramos encontrarla trabajando un problema diferente en el cual cuando encontramos la solucin del ultimo tambin encontramos la solucin del primero. Estos casos son buenos para problemas que son recurrentes.

Referencias
webgrafa. Mit (Massachusetts Institute of Technology)
http://ocw.mit.edu/index.htm http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-automatacomputability-and-complexity-spring-2011/lecture-notes/MIT6_045JS11_lec09.pdf http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-045j-automatacomputability-and-complexity-spring-2011/assignments/MIT6_045JS11_assn04.pdf
Reducibility.ppt REDUCIBILIDAD.ppt 06Reducibility.ppt