Está en la página 1de 60

Lenguajes

Semántica: significado
Sintaxis: reglas gramaticales.
Naturales
Ejemplos: Lenguaje de humanos:
chino, español, inglés.
y

 Sintaxis: reglas gramaticales.


Formales  Reglas gramaticales
preestablecidas.
Ejemplos: Lenguajes de programación.
Lenguajes
Alfabeto
Formales

Letra o
Caracter

Lenguajes
Cadena o
Formales palabra

Autómatas
Un alfabeto es un conjunto no vacío y finito de símbolos.

Los símbolos del alfabeto son las letras, strings o caracteres.

La cadena o palabra es una secuencia finita de caracteres del


alfabeto, que se obtiene mediante operaciones de los símbolos del
mismo.

V* denota a todas las palabras del alfabeto V, es decir que cada


elemento de V* es una secuencia finita ya que es una palabra.
La longitud de una cadena es la cantidad de símbolos que la
forman.

Se identifica con la letra griega λ a la cadena o palabra vacía o nula,


es decir que carece de caracteres o símbolos, con longitud cero,
long(λ) = 0.
Operaciones con Palabras

Concatenación

¨Si x e y son palabras, la concatenación, x.y es


una palabra formada por los símbolos de x
seguidos por los símbolos de y.

Si w  V*, z  V* entonces wz V*y se dice


concatenación o producto
¿Qué estructura alcanza V* con la concatenación?

(V*, . ) es SEMIGRUPO CON NEUTRO 

¿Es abeliano? La concatenación NO es conmutativa

long(xt) = long(x) + long(t)


Sea V un alfabeto y sean x, y, t V* tal que t = x y 

Si x≠ es prefijo propio de t


Si x= es prefijo de t
Si y≠ es sufijo propio de t
Si y= es sufijo de t
Potenciación
Si concatenamos n veces una cadena x, es decir
xxxxxx.... x n veces, obtendremos xn.

Sea V un alfabeto , kN{0},  la palabra nula y w,zV*

w0 = , w1 = w  wk = w.wk-1  k  2

long(wk) = k long(w)

no necesariamente (wz)k = (zw)k


Reflexión, Inversa o Trasposición
Si la palabra x está formada por los símbolos A1, A2, ...., An,
entonces la palabra inversa de x, xR , se forma invirtiendo el orden
de los símbolos en la palabra; xR = An, ...., A2, A1.

wV*  (wR)R = w

R=

w,z  V*  (wz)R = zR wR
Sea V={a, o,c,p}, |V|=4, | V* | no es finito
a es un símbolo de V, p es un símbolo de V
coco ; ca ; opaco ;  son palabras de V*
long(coco) = 4 ; long(ca) = 2 ; long(opaco) = 5
long() = 0
(opaco)R= ocapo (coco)2= cocococo
Long((ca)3)=3.lon(ca)=3.2=6
(ca)(coco)=cacoco≠(coco)(ca)=cococa
(opaco)=opaco, (coco)(ca)=cococa
Sea V un alfabeto, llamamos lenguaje L a
todo subconjunto de V*: LV*
L = {} = Λ es el lenguaje NULO, |Λ| = 1

L =  es el lenguaje VACÍO, || = 0

Todo lenguaje L que no es vacío es FINITO o NUMERABLE

LV*  LP(V*) con P(V*) = {L tal que L V* }

Se aplican para lenguajes todas las operaciones de conjuntos


¿Qué estructura alcanza P(V*) con la unión?
(P(V*),) es un SEMIGRUPO ABELIANO con neutro L=

¿Qué estructura alcanza P(V*) con la intersección?

(P(V*),) es un SEMIGRUPO ABELIANO con neutro L=V*

¿Qué estructura alcanza P(V*) con la concatenación?

(P(V*),.) es un SEMIGRUPO con neutro L={}


Operaciones con Lenguajes
Concatenación
Dados dos lenguajes L1 y L2, su concatenación, L1 . L2
contendrá todas las palabras que se puedan formar por la
concatenación de una palabra de L1 y otra de L2.

Reflexión, Inversa o Trasposición


La reflexión de un lenguaje L está formada por la aplicación
de la reflexión a cada una de las palabras del lenguaje;
L R = { x R tal que x ε L }
Unión

Dados dos lenguajes L1 y L2, su unión L1 L2 contendrá todas las


palabras que pertenezcan a cualquiera de los dos lenguajes,
L1  L2 = { x tal que x ε L1  x ε L2 }

Intersección
Dados dos lenguajes L1 y L2, su intersección L1  L2
contendrá todas las palabras que pertenezcan a los dos lenguajes;
L1 L2 = { x tal que x ε L1  x ε L2 }
Resta
Si L1 y L2 son lenguajes la resta de L1 y L2: L1 - L2, contendrá
todas las palabras que pertenezcan a L1 y no pertenezcan a L2 ,
L1 - L2 = { x tal que x  L1  x  L2 }

Potenciación
La potencia i-ésima de un lenguaje corresponde a la
concatenación i veces del lenguaje en él mismo:

L0 = {} = Λ , L1 = L  Lk = L.Lk-1  k  2
Clausura de Kleene
Sea V un alfabeto, sea N el conjunto de los números naturales, sea n
ε N U {0} y sea L un lenguaje de V* entonces:
n

L* = Lº U L¹ U L² U L³ U....U Ln U…es la clausura de Kleene


del lenguaje L. 
L 
*
Ln

n 0

Clausura Positiva
Sea V un alfabeto, sea N el conjunto de los números naturales,
sea n ε N y sea L un lenguaje de V* entonces:
L+ = L¹ U L² U L³ U....U Ln U… es la clausura de positiva
del lenguaje L. 
L  Ln
n 1
L = {} = Λ es el lenguaje NULO:
Λ* = Λ0Λ…Λn….= {}0 {} … {}n …=
={} {} … {} …= {} = Λ
Λ+ = Λ…Λn….= {} … {}n …= {} = Λ

L =  es el lenguaje VACÍO:
* = 0  … n …= {}   …   …= {} =Λ
+ =   … n …=   …    …= 

Λ* = Λ + = Λ
* = Λ y + = 
Complemento

L  {x  V * / x  L}  V *  L

  {x  V * / x  }  V * 

  {x  V * / x  }  V *
Dados los lenguajes L1={1010; 0101; }, L2={00; 10} y L3={}
se pide:
1. Indique si las palabras 1010000101, 010101010101 y 00
pertenecen al lenguaje L1RL2L1
2. Indique la longitud de las palabras con el mayor y el menor
número de letras de L23L12
3. ¿Qué condiciones debe tener un lenguaje L para que L*-
{}=L+
Considere al alfabeto V={0, 1} y
el lenguaje L = {02n+1 / 1 n  4}, se pide
1. Todas las palabras del lenguaje L
2. El lenguaje inverso del lenguaje L
3. L.LT
4. Indicar si L y/o LT son cerrados para la concatenación.
Lenguaje regular
EXPRESIÓN REGULAR LENGUAJE
REGULAR
a L={a}
 L={}
ab L={a, b}
aba L={a, ba}
baa L={a, ba}
ab |  = ab   L={, ab}
a(ab) L={aa, ab}
abbaab = a(bbab) = a(ba)b L={abb, aab}
aa+ab+ba+bb = L={aa, ab,ba,bb}
a(ab)b(ab)=(ab) (ab)=(ab)2
EXPRESIÓN REGULAR LENGUAJE REGULAR
a* L={an / n0}
a.a*=a+ L={an / n1}
L={todas las palabras de 5
(ab)5
caracteres sobre el alfabeto {a,b}}
aba L={a, ba}
ab* L={abn / n0}
ab+ L={abn / n1}
a*b* L={arbn / r0, n0}
(ab)* L={(ab)n / n0}

Dos expresiones regulares son equivalentes si representan al


mismo lenguaje.
A cada expresión regular le corresponde un único lenguaje
regular.
Las gramáticas son descripciones estructurales de las
sentencias de los lenguajes, tanto naturales como formales.
Una gramática es un conjunto finito de reglas que
generan un lenguaje L.

Se define a la Gramática formal G, como la cuádrupla


G = (Vn; Vt ; P ; s)

v Vn es un conjunto de elementos no terminales.


v Vt es un conjunto de elementos terminales.
v P es un conjunto de producciones
(reglas de sustitución).
v S es un elemento de Vn llamado símbolo inicial.
¿Cómo genera una gramática G a un lenguaje L?

El proceso de generar palabras usando una gramática G =


(Vn; Vt; P; s), se denomina “derivación”.
i. Se comienza con el símbolo inicial s.
ii. Se aplican las producciones de P al símbolo inicial s
hasta obtener sólo
elementos terminales.
iii Cualquier hilera que se consigue usando el ii. es un
elemento del lenguaje L(G).
Ejemplo:
G = (Vn ={S, T, Q}; Vt = {a, b}, P, S),
donde P: S  |aT; T aQ Q  a | b
L(G)={; aaa; aab}
El lenguaje generado por una gramática G se denomina
L(G).

Una gramática genera un lenguaje. G  L(G)

Dos gramáticas G1 y G2 son equivalentes si


generan el mismo lenguaje: L(G1) = L(G2).
Ejemplo:
G1 = (Vn ={x; y; z; t; u}; Vt = {0,1}, P, x),
donde P: x  |1y|0z ; y 0; z 1t; t 1u; u 0
Árbol de derivación: L(G1)={; 10; 0110}
x x x

 1 y 0 z
0 1 t
1 u
0

G2 = (Vn ={x;y;z}; Vt = {0,1}, P, x), L(G2)={; 10; 0110}


donde P: x  |1y|01z ; y 0; z 1y
Sin restricciones
Gramática Tipo 0 Genera lenguajes recursivamente numerables

Dependientes del contexto (se tiene en cuenta lo que viene


antes y después del símbolo que se sustituye).
Genera lenguajes sensibles (o dependientes) al contexto
Gramática Tipo I Las producciones son del tipo: α  β donde α, β Є
{Vn U Vt}
Las producciones son no-contractivas: | α |  | β |
Nunca genera a la palabra nula

Libres de contexto
Genera lenguajes libres al contexto
Gramática Tipo II El lado izquierdo debe consistir en un sólo no terminal
No hay restricciones al lado derecho

Regulares
Genera lenguajes regulares
El lado izquierdo debe consistir en un sólo no terminal
Gramática Tipo III El lado derecho debe ser un terminal seguido de un
no terminal, o un sólo terminal o la cadena vacía
Gramática Tipo 0 x y
o NO RESTRINGIDA x  (VnVt)+ y  (VnVt)*

Gramática Tipo I
x y
O SENSIBLE AL
CONTEXTO x  (VnVt)+ y  (VnVt)*
long x  |long y

x y
Gramática Tipo II x  Vn y  (VnVt)*
O INDEPENDIENTE DEL
CONTEXTO

x y
Gramática Tipo III x  Vn y= t.n  y = n.t  y = t  y=
O REGULAR
donde t es un símbolo terminal
y n es un símbolo no terminal.
G=({S,T}; {a, b, c};P;S) Gramática tipo 0
Donde P: S  aSb
Sb  bT L0={c; acb; aacbb; …}
abT  c
G=({S,T,U,V,W}; {a, b, c};P;S)
Donde P: S  a|Sb|UV Gramática tipo 1
aSb aTb
V  a|b|c L1={a; aa;ab; ac; abb; aabb; abbb;
U a acbb;…}
Wb
G=({S,T,U}; {a, b};P;S)
Donde P: S  UT|TU Gramática tipo 2
U a
T b L2={ab;ba}
G=({S,T,U}; {a, b};P;S)
Donde P: S  bT|bU Gramática tipo 3
U Ta|
T  |a L3={b; ba; baa}
Dependientes del contexto significa que se tiene en cuenta
lo que viene antes y después del símbolo que se sustituye.

Existe una jerarquía entre los distintos tipos de gramáticas


tal que las gramáticas del tipo i son más generales que las
de tipo i + 1.

G3  G2  G1  G0
DE LA GRAMÁTICA REGULAR AL
LENGUAJE REGULAR:
Cada No Terminal y sus producciones generan una ecuación:

M   M |  le corresponde la ecuación: M =  M  

Cuya solución resulta M = * 

Ejemplo:
Sea G=({S,T}; {a,b}; P, S) donde P: SaS|aT; Tb
Las producciones se traducen en las ecuaciones:
SaS|aT S = aS  aT
Tb T=b
Se resuelven sustituyendo:
S = aS  ab = a*ab = a+b
L(G) = {anb, n  1}
Probar que la concatenación en V* es un semigrupo.
Sean x = x1 x2 x3 ... xn  V* y t = t1 t2 t3 ... tr  V* entonces:
x.t = x1 x2 x3 ... xn t1 t2 t3 ... tr  V* luego
V* x V*  V*, es decir que  x  V*,  y  V*  x.y  V*, de donde se dice que la
concatenación es cerrada y binaria en V* (1)
Sean x  V* y y V*, z  V*, tales que:
x = x1 x2 x3 .... xm  V*
y = y1 y2 ....yn  V*
z = z1 z2 .....zt  V*, entonces
x.(y.z) 0 (x1 x2 x3 .... xm).[y1 .... ym z1 .... zt] =
= x1 x2 x3 .... xm y1 ... yn z1 ... zt =
= (x1 x2 x3 .... xm y1 ... yn).( z1 ... zt) =
= (x.y).z, entonces la concatenación es asociativa (2)
La palabra nula λ es un elemento de V* y para cualquier x de V* con x = x1 x2 .... xm se verifica
λ .x = λ x1 x2 ... xmλ = x. λ = x de donde la palabra nula λ es el elemento neutro (3)
Por (1), (2) y (3) queda demostrado que V* bajo la concatenación es un semigrupo con neutro.
Probar utilizando inducción matemática en n, que: long wn = n long w.

P(1): n= 1  long w¹ = w y 1. long w = w por lo cual v(P(1) = V.

P(h): n = h  long w h = h long w HIPOTESIS INDUCTIVA

P(h+1): n = h+1  long w ( h+1)= (h+1) long w TESIS INDUCTIVA

D/ long w( h+1) = long ( w wh )


= long w + long wh
= long w + h long w reemplazando por la hipótesis inductiva.
= long w ( 1 + h) sacando factor común long w
= (h+1) long w utilizando propiedad conmutativa del producto.
Con lo cual queda probado.
Sea el lenguaje L = {111, 000} mostrar que la
concatenación es cerrada en L*.

Por Propiedad, Si V es un alfabeto


entonces el conjunto V* bajo la
concatenación es un semigrupo con neutro.
Con lo cual L* bajo la concatenación es
un semigrupo con neutro,
consiguientemente cumple que la
concatenación es cerrada en L*.
Lenguajes y
¿Qué relación hay
Gramáticas Regulares
entre ellos?
Autómatas
Gramáticas
Regulares

Equivalentes

Genera

Lenguajes Autómatas
Regulares Finitos
Reconoce
Lenguajes Regulares

Un lenguaje es regular si existe una gramática regular que lo genere.


Un lenguaje regular sobre un alfabeto V se define recursivamente
de la siguiente forma:
1.  es un lenguaje regular.
2. {  } es un lenguaje regular.
3. a Vı, {a} es un lenguaje regular.
4. Si Lı y L son dos lenguajes regulares entonces:
Lı  L , Lı L y Lı* son lenguajes regulares.
5. Ningún otro lenguaje sobre V es regular.
Observaciones:
Un lenguaje formal es finito entonces es un Lenguaje Regular.
Un lenguaje es regular si puede ser reconocido por un Autómata Finito
Dar el valor de verdad:
La gramática definida sobre el alfabeto V ={a, b, c, d} de
producciones: SAaB, AcA/a, BBd/c genera un
lenguaje regular.

Verdadero: c*aacd*

Dar el valor de verdad:


El lenguaje generado por la gramática G=({S};{a,b};P;S)
donde las producciones P están dadas por: SaSbb,
Sabb es L(G) = {ai b2i / i0}

Falso: es L(G) = {ai b2i / i1}


AUTÓMATAS
FINITOS
Máquinas de Estado Finito.

Señales de entrada Señales de salida


Máquina procesadora de
INPUT SET información OUTPUT SET

Máquinas sin memoria: la salida depende de la señal de entrada


(ej: circuitos combinatorios)
Máquinas con memoria: la salida depende en cada instante de la
entrada en ese instante y de las entradas en los instantes previos
Estado es el resumen de la historia pasada de una máquina.
Cuando llega otra señal la máquina pasa de un estado a otro.
Una máquina con un número finito de estados se llama MÁQUINA
DE ESTADO FINITO

Máquinas de estado finito como reconocedoras de


lenguajes:
Un lenguaje L es de estado finito si hay una máquina de estados
finitos que acepte todos los enunciados del lenguaje.
Jerarquía de CHOMSKY

TIPO LENGUAJE GRAMÁTICA AUTÓMATA

3 REGULAR REGULAR FINITO

2 LIC G INDEP. Del DE PILA


CONTEXTO

1 LSENSIBLE al G. SENSIBLE al Máquina de


CONTEXTO CONTEXTO Turing

0 IRRESTRCTO G. IRRESTRICTA Máquina de


Turing
Los AUTÓMATAS FINITOS reconocen
LENGUAJES REGULARES y se usan para la
construcción de compiladores.
a b Diagrama de
* 0 1 2
transición

El AF comienza su actividad en el estado inicial (0) y es


alimentado con una cadena, aquella que debe reconocer o rechazar.
a b
Ej: ab * 0 1 2 reconoce

a
Ej: a * 0 1 NO reconoce

* a b a
Ej: abab 0 1 2 ?? NO reconoce

Ej:baa b ??? NO reconoce


* 0
El autómata finito reconoce una palabra si y
solo si la sucesión de transiciones hace que
el autómata pase de su estado inicial a algún
estado final.

Cada autómata finito reconoce un único


lenguaje regular.

Para un lenguaje regular pueden existir


muchos autómatas finitos que lo
reconozcan.
DEL AUTÓMATA FINITO A LA EXPRESIÓN
REGULAR.
a 0 = a1
* 0 1 0=a
1=

a 0 = a1 2 = a1  2
* 0 1
1= 0 = a   = a  

2 2=
a
b 0 = a0  b1  
* 0 1 0 = a 0  (b1  )
1= 0 = a*(b )
AUTÓMATAS FINITOS QUE RECONOCEN
LENGUAJES REGULARES INFINITOS

a* L = {an / n  0} a
*
q

a
a*b L = {b, ab, aab, …} *
b
q q1
AUTÓMATAS FINITOS QUE RECONOCEN
LENGUAJES REGULARES INFINITOS

a
(ab)*
* q q1

(ab)+
b
a
* q q1 q2
a
Autómatas Finitos Determinísticos

Autómatas Diferencia
Entre ambos

Autómatas Finitos No Determinísticos


Autómatas Finitos Determinísticos

A = (Q; V; ; q; F) con  = Q x V  Q
Un autómata finito es un modelo matemático de un sistema que determina para
cada cadena del alfabeto V si pertenece al lenguaje que el autómata reconoce.
Es una máquina de estado finito, que se define como:

la 5-upla M = (Q; V; δ; q; F) donde:


i) Q = {q1, q2, ..., qn } es el conjuntofinito de estados de la máquina.
ii) V es el alfabeto de entrada.
iii) δ: Q x V  Q es la relación de transición.
iv) q  Q y se dice estado inicial.
v)   F  Q es el conjunto de estados finales.
M = ({q0,q1}; {0, 1}; δ; q0; {q1}) tabla de transición
con δ(q0;0)=q0 δ 0 1
δ(q1;0)=q1
δ(q0;1)=q1 q0 q0 q1
δ(q1;1)=q0
q1 q1 q0
Diagrama de
transición

0 1
* 0
q q1

1
Para cualquier estado, la lectura de una letra determina, sin
ambigüedades, el estado de llegada.
Para todo (q, a)  Q x V  (q, a) = p si y sólo si la máquina puede
pasar del estado q al estado p al “leer” el símbolo a.
Para cada estado en un diagrama de transición debe existir a lo sumo
una arista etiquetada para cada letra del alfabeto V.
Un A.F.D. es completo si cada estado tiene una transición por cada
letra del alfabeto.
Ninguna arista está etiquetada con .
La relación de transición es una función.
Un A.F.D. Es completo si cada estado tiene una transición por cada
letra del alfabeto.
Expresiones Regulares

Sea A un alfabeto. Una expresión regular sobre A es un secuencia de elementos de


A conectados por los siguientes símbolos (,), v, *,  (palabra nula) que
verifican:
 Es una expresión regular.
Si a  A entonces a es un expresión regular.
Si x e y son expresiones regulares entonces xy es una expresión regular.
Si x e y son expresiones regulares entonces x  y es una expresión regular.
Si x es una expresión regular entonces (x)* es una expresión regular.

Observación:
Asociado a cada expresión regular sobre el alfabeto A hay un subconjunto de
A*, que se llama subconjunto o lenguaje regular.
Autómatas Finitos No Determinísticos

A = (Q; V; ; q; F) con  = Q x (V  {  }) P(Q)


Un autómata finito no determinístico es un autómata finito que puede realizar
transiciones por la palabra .

Una transición por la palabra , es un cambio de estado sin la intervención de ningún


carácter de la palabra en estudio.
La transición que se ejecuta en una etapa dada puede ser incierta pues nada lo
determina, por eso se dicen no determinístico.
Cada estado puede tener, en el diagrama de transición, más de una arista etiquetada
con cada letra del alfabeto V.
Para cualquier estado q se pueden tener cero ó más alternativas a elegir como estado
siguiente, todas para el mismo símbolo de entrada.

Si A = (Q; V; ; q; F) es un autómata finito no determinístico, el lenguaje que acepta


A se indica L(A) y es regular.
A = ( {q, q1, q2, q3}; { 0, 1 }; q; {q3}), con  dada por:
(q; 0) = {q } y (q; 0) = {q1 }  (q; 0) = {q, q1 }
(q; 1) = {q }
(q1; 1) = {q2 }
δ 0 1
(q2; 1) = {q3 }
q0 {q0;q1} {q0}
q1  {q2}
q2  {q3}
q3  
0

0 1
*
 q q1 q2 1 q3

1
Autómatas Finitos Autómatas Finitos
Determinísticos Diferencia No Determinísticos

Una de las diferencias más importantes entre un autómata


finito determínistico (A.F.D.) y un autómata finito no
determinístico (A.F.N.) es que:
 q  Q,  a  V => | (q;a) |  1 (A.F.D)
Para los A.F.N.:  q  Q,  a  V  {  } y | (q;a) | > 1
Dados los siguientes lenguajes definidos sobre el alfabeto
V={a, b, c}:
L1 = {an bm cn b / n > 0  m >0} L2 = {(ab)m c ap / m  0  p > 0}
a) Obtenga una gramática que genere el lenguaje L1 e indique el
tipo de la misma.
b) Diseñe un autómata finito que reconozca el lenguaje L2 (es
decir que acepte todas las palabras del lenguaje y rechace todas
las palabras que no sean del lenguaje)
a) Obtenga una gramática que genere el lenguaje
L1 = {an bm cn b / n > 0  m >0} e indique el tipo de la misma.

G = ({S, X, Y}, {a, b, c}, P, S) siendo P:


SXb
XaXc | aYc
Y by | b
Es una gramática de tipo 2
b) Diseñe un autómata finito que reconozca el lenguaje

L2 = {(ab)m c ap / m  0  p > 0} (es decir que acepte todas las


palabras del lenguaje y rechace todas las palabras que no sean
del lenguaje)

a
* 0 1
b
c a

2 3
a
Sea el alfabeto V={a, b, c}:
a) Halle todas las palabras wV4 tales que w = wR.
b) Diseñe un autómata finito que reconozca el lenguaje formado
por las palabras de V* que comienzan con “a” y tienen un
número par de letras “c”.

a) Son 9: aaaa, abba, acca, baab, bbbb, bccb, caac, cbbc, cccc

b
a c b
b) * 0 1 2
c
a
a
Dar el valor de verdad:
No es posible diseñar un autómata finito que reconozca
palabras de un lenguaje no finito, sobre el alfabeto A={0, 1, 2}
que tengan un número impar de 0 y que comiencen con 2.

FALSO 2 2
2 0
* A B C
0
1
1
Considere el siguiente diagrama de transiciones de un
autómata finito:

1. Indique si se trata de un autómata determinístico o no.


2. Indique si alguna de las siguientes expresiones regulares
corresponde al lenguaje reconocido por el autómata:
a) 0*(1+0)*120*1* b) 0*(10)*12(0+1)* c) (0+10)*12(0+1)*

1. El autómata es determinístico pues no


2. La expresión regular que
tiene transiciones por la palabra vacía y
corresponde al lenguaje reconocido
la función de transición cumple
por el autómata es el c)
unicidad.
Dar el valor de verdad:
El autómata finito M = ({a,b};{A,B};;a;{b}) donde la función
 se define por la tabla de transiciones:  A B
a {a,b} {b}
b  {a,b}
Es determinístico y las palabras A2B, BA, B2A pertenecen al
lenguaje reconocido por el autómata.

FALSO: M es NO determinístico, A2BLM, BA LM, B2A  LM


Dar el valor de verdad:
La siguiente gramática G = ({a,b,c};{1,3};P;a) donde las
producciones están dadas por: a3b; b3/1c/3c; c3 es
tipo 3 y genera un lenguaje finito.

VERDADERO: G es tipo 3, LG={33; 313; 333}

También podría gustarte