You are on page 1of 5

MA-53G Intr.

a la Criptografa Semestre Primavera, 1996


Catedra No. 15 : 15 de Octubre
Transcriptor: Alejandro Hevia

1 Clases de Lenguajes
Nos abocaremos ahora a la tarea de de nir mas formalmente ciertos conceptos so-
bre los cuales descansa la criptografa moderna. Por ello, algunos conceptos basicos de
complejidad como lenguajes y maquinas de Turing (determinsticas, no-determinsticas,
probabilsticas) se supondran conocidos. 1

De nicion 1 Lenguaje Sea  un conjunto nito de smbolos. Diremos que  es un


alfabeto ( nito). Sea  el conjunto de todos las posibles palabras sobre el alfabeto .
Un lenguaje L es un conjunto de palabras sobre un alfabeto nito , tal que L  .

De nicion 2 Maquina de Turing (Determinista) De niremos informalmente


una Maquina de Turing (M T ) como consistente de un control nito de estado (lla-
mado usualmente cabeza), una cinta de entrada y una cinta de salida. Ambas cintas,
la de entrada como la de trabajo consisten de celdas que pueden almacenar un solo
smbolo o letra de un alfabeto nito . La cinta de trabajo tiene una cantidad in nita
de celdas que pueden ser usadas por la M T . El control nito tiene dos cabezales, cada
uno apuntando a una celda espec ca en cada cinta, y con la habilidad de moverse
cada una hacia la izquierda o derecha. Los estados posibles del control nito pueden
ser cualquiera de un conjunto nito Q de estados, uno de los cuales se distinguira
como estado de aceptacion y otro como estado inicial. Asociado al control nito de
estados tendremos una funcion de transicion  la cual, en base a las celdas actual-
mente apuntadas por los cabezales y el estado actual de la cabeza, describe donde
mover los cabezales (izquierda o derecha) y el nuevo estado al cual entra la cabeza.
Esta funcion puede tambien especi car un cambio en la celda actualmente apuntada
por el cabezal de la cinta de trabajo (no as en la cinta de entrada).
La entrada de una M T consiste de una palabra (una concatenacion nita de letras del
alfaveto ). Esta palabra es colocada entre un smbolo especial de , $, al comienzo
Para un tratamiento mas profundo, el lector interesado puede consultar el texto Computational
1
Complexity, C. Papadimitriou, Addison Wesley, 1994.

1
1 CLASES DE LENGUAJES 2

de la cinta de entrada, un smbolo en cada celda. Inicialmente, cada celda de la cinta


de trabajo posee el smbolo blanco y los cabezales apuntan a la primera celda de la
cinta de entrada y a la primera celda de la cinta de trabajo.
De nicion 3 Maquina de Turing Probabilista Una maquina de Turing proba-
bilista M , es una M T que posee un estado especial de peticion de lanzamiento de
moneda. Cuando M entra en este estado, adquiere conocimiento sobre el resultado
del lanzamiento de una moneda, el cual puede ser \cara" (1) o \sello" (0) (cada uno
con probabilidad 21 ). Cada lanzamiento de moneda se considera que ocurre en forma
independiente de cualquier otro lanzamiento.
De nicion 4 Aceptacion de Palabras
Diremos que una maquina de Turing M acepta una palabra x de un lenguaje Lsi la
maquina M al recibir en su cinta de entrada la codi cacion 2 de la palabra x, even-
tualmente se detiene quedando en su cinta de trabajo la codi cacion de la palabra
aceptar.3 Esto ultimo lo notaremos por M ( x ) = acepta.

De nicion 5 Aceptacion de Lenguajes


Diremos que una maquina de Turing M acepta un lenguaje Lsi ocurre que: M acepta
olo si x 2 L.
x si y s

De nicion 6 Decimos que un lenguaje Lesta en P si existe una maquina de Turing


M y un polinomio p tal que
1. x 2 L si y solo si M acepta x, es decir M (x) = acepta.
2. Al operar M en la entrada x realiza a lo mas p( j x j ) pasos, donde j x j es el
numero de caracteres de x.
La clase de lenguajes P es considerada clasicamente como la clase de los lenguajes
\e cientemente computables".
Observacion 1 Notar que P es cerrado bajo complemento, pues pertenencia en el
lenguaje L puede ser decidida en tiempo polinomial por la maquina de Turnig M 0 tal
6 acepta.
que M 0 (x) = acepta si y solo si M (x) =
2 No entraremos aqu en el detalle de c omo debe hacerse esta codi cacion y consideraremos la
nocion intuitiva de este proceso, bajo el supuesto que este solo realiza lo \justo y necesario".
3 Basta que sea alguna codi caci on prede nida de ella.
1 CLASES DE LENGUAJES 3

De nicion 7 Decimos que un lenguaje Lpertenece a NP si existe una maquina de


Turing M (  ;  ) y polinomios p y q tales que

1. Si x 2 Lentonces 9 y; jyj  q(jxj) tal que M (x; y) = acepta.

2. Si x 62 Lentonces 8 y; jyj  q(jxj) tal que M (x; y) 6= acepta.

3. M en la entrada x se detiene en a lo mas p( jxj ) pasos.

Notar que esta de nicion es equivalente a la de nicion de L2 NP si existe una maquina


de Turing no-determinista de tiempo polinomial M , la cual acepta x si y solo si x 2
L. Aqu, la palabra y de la de nicion corresponde a la adivinanza de la maquina de
Turing no-determinista.

Observacion 2 Si NP es cerrado o no es un problema abierto. Su complemento se


denomina coNP .

De nicion 8 Decimos que un lenguaje Lesta en BPP si existe una maquina de Tur-
ing M (  ;  ) y polinomios p y q tales que

1. Si x 2 Lentonces P2f0;1gq x [ M (x; ) =


(j j)  acepta] 2
3

2. Si x 62 Lentonces P2f ; g [ M (x; ) = acepta] 


0 1 q (jxj)
1
3

3. Al operar M sobre la entrada x realiza a lo mas p(jxj) pasos.

Ejercicio 1 Demuestre que en la de nicion de BPP es posible reemplazar las con-


stantes 23 y 31 por 1  y  respectivamente (con 0 <  < 12 ) y la clase BPP no se
modi ca.

Dem: Denotemos por BPP al conjunto de nido en forma analoga a BPP , cam-
biando las constantes y por 1  y  respectivamente.
2 1

Supongamos que L2 BPP  y probemos que L2BPP  donde


3 3

0<<< . 1

Con ello, se sigue que existe una maquina de Turing M , tal que si x 2 L
2

P2f0;1gq( x ) [ M (x; )
j j = acepta] 1 :
1 CLASES DE LENGUAJES 4

Luego, si x 62 Lsigue que


P2f0;1gq( x ) [ M (x; )
j j = acepta]  :
Sea M 0 otra maquina de Turing que simula k veces la maquina M y acepta si y solo
si al menos k de estas simulaciones llevan a M a aceptar. Sea  el numero de veces
2
que M acepta.

Si x 2 L, entonces como   Bin(k; 1 ) tendremos que


P[ M 0 acepta ] = P[  k2 ]
k
=1 P[ <
2]
=1 P[E ()
1 )]
 > k(
2
1 P[  j E ()j > k (
1 )]
2
Var
1 ( ) k 2 12 2

= 1 k1 (1 )
( ) 1
2
2

=1 
(donde denotamos por  a k   ).
1 (1
1
(2
)
)2
Si  es constante, esta probabilidad puede hacerse arbitrariamente cercana a 1 al
aumentar k.
Analogamente, si x 62 L, entonces como   Bin(k; ) tendremos que
P[ M 0 acepta ]  P[  k2 ]
= P[ E ()  k ( 12 )]

 P[j E () j  k ( 21 )]

 k (Var)
2 1 2
2

= 1 (1 )
k( 1
2
) 2

=
1 CLASES DE LENGUAJES 5

Luego se tiene que la maquina de Turing M 0 acepta cuando x 2 Lcon probabilidad


al menos 1  tal que 0 <  <  < y con probabilidad  cuando x 62 L. Luego
1

L 2BPP .
2

Queda al lector propuesto demostrar que se tiene el resultado incluso para  = p n 1


2
1
( )
donde p es un polinomio cualquiera y n = jxj.

De nicion 9 Decimos que un lenguaje Lesta en RP si existe una maquina de Turing


M (  ;  ) y polinomios p y q tales que

1. Si x 2 Lentonces P 2f g [ M (x; ) = acepta] 


 0;1 q (jxj)
2
3

2. Si x 62 L entonces P 2f g [ M (x; ) = acepta] = 0


 0;1 q (jxj)

3. Al operar M sobre la entrada x realiza a lo mas p(j x j) pasos.


Ejercicio 2 Demuestre que en la de nicion de RP es irrelevante el valor de la cota 2

para la probabilidad de aceptar en el caso x 2 L y puede ser reemplazada por cualquier


3

constante  2 ( 0 ; 1 ).
Observacion 3 La de nicion de coRP es analoga solo que exige que la probabilidad
de aceptar cuando x 2 Lsea igual a 1 y la probabilidad de aceptar cuando x 62 Lsea
menor o igual a 31 .
De nicion 10 Decimos que un lenguaje Lesta en ZPP si existe una maquina de
Turing probabilstica M (  ) y un polinomio p tal que
1. x 2 L si y solo si M ( x ) = acepta.
2. La esperanza del numero de pasos que M ejecuta en la entrada x es a lo mas
p( jxj ).

Relaciones entre lenguajes


Se sabe que P NP , que P RP BPP . Ademas se cumple que ZPP = RP \
coRP , que coRP  BPP y que RP  NP (basta adivinar el resultado del \lanza-
miento de monedas" que realiza la maquina de Turing probabilsta).
Actualmente no se sabe si es cierto que NP6= P aunque se conjetura que es cierto.
Asimismo, aun no se clari ca cual es la relacion entre BPP y NP o entre BPP y P . 4

4 Un ejemplo de lenguaje que esta es BPP y no se sabe aun si esta en P es el lenguaje de todos los
enteros primos (esto es, veri car primalidad).

You might also like