A = w - Pontificia Universidad Javeriana, Cali

Anuncio
300CIG007
Computabilidad y Lenguajes
Formales:
Teoría de la Computabilidad:
Reducibilidad
Pontificia Universidad Javeriana Cali
Ingenieria de Sistemas y Computación
Prof. Gloria Inés Alvarez V.
Reducibilidad

Es un metodo para probar que los problemas son
indecidibles.

Reducir es convertir un problema en otro, de tal
forma que la solución del segundo problema pueda
ser usada para resolver el primero.

También sucede en la vida diaria…ejemplo: el
“problema” de venir esta mañana a la U…se reduce
al problema de tener transporte… que se puede
reducir al problema de tener el dinero para pagar un
pasaje en bus…
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
Reducibilidad para probar indecidibilidad
Cuando el problema A se reduce al problema
B:
 Si existe solución para B, entonces tambien
hay solución para A.
 La solución de A no puede ser más difícil que
la solución de B.
 Si B es decidible, A tambien lo es.
 Si A es indecidible, B tambien lo es.
Estrategia de Demostración


Para mostrar que un problema es indecidible,
se debe mostrar que otro problema, que ya se
sabe indecidible, reduce a el.
En otras palabras, mostrar que si existiera una
MT que decidiera este problema, podríamos
decidir un problema que se sabe indecidible
A continuación veremos algunos ejemplos.
HALTTM es Indecidible
HALTTM = { <M, w> : M es una TM, y M se detiene para toda
entrada w }
Demostración: por contradicción.
Asumimos que alguna HALTTM es decidible y lo usamos
para demostrar que ATM es decidible
Si R es una TM que decide HALTTM , construimos S:
S = “con la entrada <M,w>:
1.
2.
3.
4.
Ejecuta R con la entrada <M,w>
Si R rechazó, entonces rechaza
Si R aceptó, entonces simula M con w hasta que se detiene,
Si M aceptó, entonces acepta; si M rechazó, entonces rechaza.”
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
ETM es Indecidible
E = {<M> | M es una MT y L(M) es vacío }
Algunas propiedades
Conjuntos
Regulares
DCFL’s CFL’s
Conjuntos
Recursivos
Conjuntos
R. E.
w ∈ L?
D
D
D
D
U
Es L = Φ?
D
D
D
U
U
Es L = ∑*?
D
D
U
U
U
Es L1 = L2?
D
?
U
U
U
Es L1 ⊆ L2?
D
U
U
U
U
Es L = R?
D
D
U
U
U
D
U
U
D
U
(R es Regular)
El complemento
de L, es del
mismo tipo?
D = Decidible; U = indecidible; ? = respuesta desconocida
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
PCP No es Decidible



PCP: El problema de Correspondencia de Post
Una instancia de PCP consiste de dos listas de
cadenas sobre algún alfabeto ∑:
A = w1, w2, w3,…, wk
B = x1, x2, x3,…, xk
La instancia de PCP tiene solución si hay una
secuencia de enteros tales que:
wi1wi2wi3…wim = xi1xi2xi3…xim
La secuencia i1, i2, i3, …, im es una solución a la
instancia de PCP
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
PCP
Ejemplo: Sea el ∑ = { 0, 1 }, y A, B definidos así:
i
1
A wi
1
2
3
10111 10
B xi 111
10
0
Hay una solución:
m=4, i1=2, i2=1, i3=1, i4=3
w2w1w1w3=x2x1x1x3=101111110
Ejemplo: Sea el ∑ = { 0, 1 }, y A, B definidos así:
i
1
2
3
A wi 10 011 101
No hay solución
B xi 101 11 011
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
PCP es Indecidible
Demostración:

Por contradicción: Si PCP fuese decidible, ATM seria
decidible.



Crearemos una versión modificada de PCP: MCPC.
MPCP: dadas dos listas de cadenas A y B sobre un
alfabeto ∑, la solución de MPCP es una lista de
enteros 1, i2, i3, …, im, tal que
w1wi2wi3…wim = x1xi2xi3…xim
Si MPCP es decidible, entonces PCP es decidible,
ya que PCP es una reducción de MPCP
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
PCP es Indecidible
Demostración:


Reducimos ATM a MPCP, así:
Para cada <M, w> construimos una instancia de
MPCP, que si tiene solución, tiene una que empieza
con qow, y genera una cadena
# qow#α1qiβ1#...#αkqkβk#
Donde:

qk es un estado final (aceptación o rechazo)

Las subcadenas entre #...# son pasos sucesivos de la
computación de M con la entrada w.
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
PCP es Indecidible
Demostración:

MPCP se construye así:
Lista A
Lista B
Primera Cadena
#
# qow#
Grupo I
X
X
#
#
qX
Yp
δ(q,X)=(p,Y,R)
ZqX
pZY
δ(q,X)=(p,Y,L)
q#
Yp#
δ(q,□)=(p,Y,R)
Zq#
pZY#
δ(q, □)=(p,Y,L)
Grupo III: Para
todo q ∈ F,
X,Y ∈ Γ
XqY
q
Xq
q
qY
q
Grupo IV
q##
#
Grupo II: Para
todo q ∈ Q-F,
p ∈ Q,
X,Y,Z ∈ Γ
Para cada X ∈ Γ
Para todo q ∈ F
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
PCP es Indecidible
Demostración:
Si M inicia en q0w, y alcanza un estado de aceptación,
entonces la instancia de MPCP con las listas A y B
tiene una solución. Si M no alcanza un estado de
aceptación, no hay solución posible para MPCP (la
cadena que se forma con la lista B excede en
longitud a la que se forma con la lista A).

Entonces, la instancia de MPCP tienen solución si y
solo si M con la entrada w llega a un estado de
aceptación.

Por lo tanto, si hubiese un algoritmo para solucionar
MPCP habria un algoritmo para reconocer ATM, lo
cual es una contradicción.
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
Aplicación de PCP

Para demostrar que el problema de determinar si
una gramática libre de contexto es ambigua es
indecidible. [Hopcroft]
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
Otros Problemas No Decidibles

El problema No. 10 de Hilbert: 10. Determination of
the solvability of a Diophantine equation.

El problema de la verificación formal de programas
(dada una especificación verificar si un programa la
cumple), es indecidible.

El problema de determinar cuando una formula de
lógica matemática(*) es verdadera o falsa, es
indecidible.
(*) Incluye símbolos and, or, not, y cuantificadores para todo, existe…
Pontificia U. Javeriana Cali - Ingeniería de Sistemas y Computación – 300CIG007 –
Prof. Ma. Constanza Pabón
Reducibilidad por mapeo

Una función f:∑ --> ∑* es computablesi existe
una MT que recibiendo w como entrada,
termina con f(w) escrito en la cinta

Un lenguaje A es reducible por mapeo a un
lenguaje B (denotado A<M B), si existe una
función computable f:∑ --> ∑* donde para todo
w:
w pertenece a A <==> f(w) pertenece a B
Propiedad
Si A<M B y B es decidible, A es decidible
también
Sea M la máquina que decide B y f la función de
reducción de A a B. Describimos N que decide
A:
N = “Sobre la entrada w:
1. Calcular f(w)
2. Ejecutar M sobre f(w) y devolver lo que devuelva M”
Descargar