Está en la página 1de 18

Autoevaluación # 2

Parte I
Responda lo que se le indica a continuación:
1. Defina lo que es la cerradura 𝜆.
Es aquella que se define como un conjunto de estados 𝜆*:2Q→ 2Q definida de la siguiente manera.

2. Explique las siguientes igualdades:


a)
Un conjunto vació de estados no puede a alcanzar estado alguno, es decir, como resultado es Ø

c)

Un conjunto de estados con un solo elemento q puede llegar mediante transiciones 𝜆 a él mismo o a la
cerradura 𝜆 del conjunto de estados que son alcanzables desde q para una transición 𝜆

3. ¿Qué significa que hay equivalencia entre AFDs y AFNs?

Significa que comparte el mismo lenguaje. Se dice que dos autómatas finitos, M1 y M2 son equivalentes si
L(M1)=L(M2) es decir, si ambos aceptan el mismo lenguaje.

4. ¿Qué pasos se deben realizar para convertir un AFN en un AFD?

a) Entender el AFN original: Familiarízate con el AFN de entrada y sus estados, símbolos de
entrada, transiciones y estados finales.

b) Crear un nuevo AFD: Inicia con un conjunto de estados vacío en tu nuevo AFD, que será el
estado inicial.

c) Cierre-ε (ε-closure): Calcula el cierre-ε del estado inicial del AFD. Esto implica encontrar
todos los estados alcanzables desde el estado inicial mediante transiciones ε.

d) Construir las transiciones: Para cada conjunto de estados en el AFD, crea transiciones para
cada símbolo de entrada. Para hacerlo, encuentra el conjunto de estados alcanzables desde
ese conjunto inicial mediante transiciones de entrada en el AFN original. Esto puede
requerir la unión de varios estados.

e) Agregar nuevos estados: Cada conjunto de estados en el AFD se convierte en un nuevo


estado. Agrega estos nuevos estados al AFD a medida que los construyes.
f) Marcar los estados finales: Marca un estado en el AFD como final si contiene al menos un
estado final del AFN original.

g) Repetir hasta que no haya nuevos conjuntos: Continúa construyendo conjuntos y


transiciones en el AFD hasta que no puedas crear más conjuntos nuevos. Esto significa que
has determinado completamente el autómata.

h) Resultado: El AFD que has construido es equivalente al AFN original y acepta el mismo
lenguaje

5. ¿Qué es una gramática libre de contexto?

Una gramática de contexto libre es un método de especificación de reglas gramaticales recursiva, son las que
se pueden generar cadenas de un lenguaje. De esta forma es posible producir cualquier lenguaje regular, así
como no regular.

6. ¿A qué se refiere que las GCL utilizan notación natural recursiva?

Se refiere a que las reglas de producción permiten la recursión, que un símbolo no terminal (una variable)
puede derivar una cadena que contenga ese mismo símbolo no terminal. Siendo una característica que
permite generar estructuras de lenguaje complejas y anidadas. Ejemplo: A -> aA|b

7. ¿Las producciones en una gramática regular están restringidas a dos maneras, cuales son
estas dos?
Las producciones en una gramática regular están restringidas de dos maneras:
a) El lado izquierdo debe ser una sola variable
b) El lado derecho tiene una forma especial

8. ¿Explique a que se refiere que una GCL es libre si todas las P tienen forma A →x?

Una gramática se considera “libre” en el sentido de que todas sus producciones (reglas de producción) tienen una
forma específica que se denota “A->x” donde “A” es un símbolo no terminal y “x” es una cadena de símbolos terminales
y no terminales. Se refiere a que “A” es un símbolo no terminal, y “x” es una cadena de símbolos terminales (letras,
número u otros caracteres) y no terminales (variables), y se puede dar la recursividad, haciendo que sea “libre” porque
no hay restricciones sobre las producciones y da flexibilidad para describir una amplia gama de lenguajes.
9. ¿Las gramáticas libres de contexto derivan su nombre del hecho de que la sustitución de la
variable a la izquierda de una producción puede realizarse en cualquier momento en que
dicha variable aparezca en una forma oracional, explique?

Si, ya que consideramos


- No depende de los símbolos en el resto de la forma oracional (el contexto)
- Esta característica es la consecuencia de permitir una sola variable en el lado izquierdo de la
producción

10. la recursividad de L que equivale a lo siguiente:


1.- ε ϵ L
2.- para cada S ϵ L, Sa ϵ L.
3.- para cada S ϵ L, Sb ϵ L.
4.- ninguna otra cadena es parte de L

Explique cada una.

1.- ε ϵ L

Significa que la cadena vacía pertenece al lenguaje, el lenguaje incluye la cadena vacía como una de sus cadenas
validas.

2.- para cada S ϵ L, Sa ϵ L.

Significa que para cualquier cadena “S” que pertenezca al lenguaje L, su concatenación con un símbolo a (representado
con Sa) también pertenecerá al mismo lenguaje L. Si se tiene una cadena S que es valida en el lenguaje L, y luego se
agrega “a” al final de esa cadena, la nueva cadena resultante “Sa”, también será una cadena valida en el lenguaje L.

3.- para cada S ϵ L, Sb ϵ L.

Significa que, para cualquier cadena S que pertenezca al lenguaje L, su concatenación con el símbolo “b” (representado
como Sb) también pertenecerá al mismo lenguaje L.

Si se tiene una cade S valida en un lenguaje L, y luego se le agrega el símbolo “b” al final de la cadena, la nueva cadena
resultante Sb, también será una cadena valida en el lenguaje L

4.- ninguna otra cadena es parte de L


Hace referencia a que el conjunto de cadenas que pertenecen a L esta completamente definido, y no incluye ninguna
otra cadena más allá de las que se han especificado mediante las reglas de generación o reconocimiento del lenguaje.
11. ¿Qué significa que las GCL pueden tener una derivación mas a la izquierda y mas a la
derecha?

Mas a la izquierda significa que es una derivación en donde en cada paso se reemplaza la variable más a la
izquierda en la forma oracional. Mientras que más a la derecha hace referencia a que se da una derivación
en donde en cada paso se reemplaza la variable más a la derecha en cada producción

12. ¿Qué es un árbol de derivación o árbol sintáctico?

Es un árbol ordenado en el que los vértices se etiquetan con los lados izquierdos de las producciones y en el
que los hijos de un vértice representan sus correspondientes lados derechos.

13. ¿Qué es un árbol de derivación parcial?

Es toda hoja que tiene una etiqueta V U T U { 𝜆 }, es decir, un árbol de derivación parcial muestra como una
cadena se ha generado o deriva hasta cierto punto, pero no necesariamente muestra la derivación
completa. Un árbol de derivación parcial solo muestra una parte de la derivación.

14. ¿A qué se refiere que Para todo w ∈ L(G), existe un árbol de derivación de G cuyo producto es w?

Se refiere a que para cada cadena "w" que pertenece al lenguaje generado por una GCL "G" (denotado como
L(G)), siempre puedes encontrar al menos un árbol de derivación en "G" que, cuando lo recorres siguiendo
las reglas de producción, genera exactamente la cadena "w" como resultado. Si se tiene una gramática G y
una cadena "w" que es una palabra válida en el lenguaje generado por esa gramática (w ∈ L(G)), se puede
trazar un camino a través del árbol de derivación de G de manera que, siguiendo las reglas de producción
desde la raíz del árbol hasta una hoja, obtendrás la cadena "w" como resultado.

15. ¿Para qué es útil el análisis sintáctico?

Es útil para la verificación de la estructura gramatical con relación a si una cadena de entrada sigue una
estructura gramática definida por la gramática. Para generar un árbol de derivación que representa la
estructura jerárquica de la cadena de acuerdo con la gramática libre de contexto.
Parte II
Dado el siguiente AFN, calcular un AFD que reconozca el mismo lenguaje.

A)

B)

C)

D)
1. Escriba la tabla de transiciones AFN
2. Escriba la tabla de transiciones AFD
3. Dibuje el AFD
4. Escriba 3 ejemplos de cadenas aceptadas para ambos.
5. Escriba el lenguaje para ambos autómatas.
Diagrama A

Clausura (A) = {A} U Ø


Clausura (B) = {B} U Ø
Clausura (C) = {C} U {B}

1. Escriba la tabla de transiciones AFN

f X Ɛ

A {B,C} Ø

B Ø Ø

C Ø {B}

2. Escriba la tabla de transiciones AFD

Estados F X

A {A} U Ø {B,C} U {B} B

B {B,C} U {B} Ø Ø
3. Dibuje el AFD

4. Escriba 3 ejemplos de cadenas aceptadas para ambos.

• X
• X
• X

5. Escriba el lenguaje para ambos autómatas.

Lenguaje AFN

o L = {Xn : n=1}

Lenguaje AFD

o L = {Xn : n=1}
Diagrama B

Clausura (p) = p U Ø
Clausura (q) = (q) U (s)
Clausura (r ) = (r) U (s)
Clausura (s) = (s) U ( r)

1. Escriba la tabla de transiciones AFN

f1 λ a b
p Ø {q} Ø
q {s} Ø {p,r}
r {s} Ø {p,s}
s {r} Ø Ø

2. Escriba la tabla de transiciones AFD

Estados a b
A pUØ {q} u {s} B Ø C
B {q} u {s} Ø C {p,r} u {s} C
C {p,r} u {s} {q} u {s} B {p,s} u {r} D
D {p,s} u {r} {q}u{s} B {p,s}u{r} D
3. Dibuje el AFD

A C
a
a b b

a
B D

4. Escriba 3 ejemplos de cadenas aceptadas para ambos.

a. ab
b. abbab
c. abbb

5. Escriba el lenguaje para ambos autómatas.

Lenguaje AFN

o L = {anbm : n=>1, m=>0}

Lenguaje AFD

o L = {anbm : n=>1, m=>0}


Diagrama C

Clausura (q0) = {q0} U {q1,q3}


Clausura (q1) = (q1) U Ø
Clausura (q2) = (q2) U Ø
Clausura (q3) = (q3) U Ø
Clausura (q4) = (q4) U Ø

1. Escriba la tabla de transiciones AFN

f1 λ 0 1
q0 {q1,q3} Ø Ø
q1 Ø {q2} {q1}
q2 Ø {q1} {q2}
q3 Ø {q3} {q4}
q4 Ø {q4} {q3}

2. Escriba la tabla de transiciones AFD

Estados 0 1
A {q0} u {q1,q3} {q2,q3} u {Ø} B {q1,q4} u {Ø} C
B {q2,q3} u {Ø} {q1,q3} u {Ø} D {q2,q4} u {Ø} E
C {q1,q4} u {Ø} {q2,q4} u {Ø} E {q1,q3} u {Ø} D
D {q1,q3} u {Ø} {q2,q3} u {Ø} B {q1,q4} u {Ø} C
E {q2,q4} u {Ø} {q1,q4} u {Ø} C {q2,q3} u {Ø} B
F {q1,q4} u {Ø} {q2,q4} u {Ø} E {q1,q3} u {Ø} D
3. Dibuje el AFD

1
A C
0

0
0
1
E 1 1

1
0
B D
0

4. Escriba 3 ejemplos de cadenas aceptadas para ambos.

a. 1
b. 0
c. 00
d. 11

5. Escriba el lenguaje para ambos autómatas.

Lenguaje AFN

o L = {0n1m : n=>0, m=>0}

Lenguaje AFD

o L = {0n1m : n=>0, m=>0}


Diagrama D

Clausura (q0) = {q0} U Ø


Clausura (q1) = {q1} U {q0,q1}
Clausura (q2) = (q2} U Ø

1. Escriba la tabla de transiciones AFN

f1 λ 0 1
q0 Ø q0,q1 q0
q1 q0,q1 Ø q2
q2 Ø Ø Ø

2. Escriba la tabla de transiciones AFD

Estados 0 1
A {q0} u {Ø} {q0,q1} u {q0,q1} B {q0} u {Ø} A
B {q0,q1} u {q0,q1} {q0,q1} u {Ø} C {q0,q2} u {Ø} D
C {q0,q1} u {Ø} {q0,q1} u {Ø} C {q0,q2} u {Ø} D
D {q0,q2} u {Ø} {q0,q1} u {Ø} C {q0} u {Ø} A
3. Dibuje el AFD

1 0

0 0

A B C

1 1
0
1

4. Escriba 3 ejemplos de cadenas aceptadas para ambos.

a. 101
b. 001
c. 1001

5. Escriba el lenguaje para ambos autómatas.

Lenguaje AFN

o L = {0n1m : n=>1, m=>1}

Lenguaje AFD

o L = {0n1m : n=>1, m=>1}


Parte III
Encuentre las gramáticas libres de contexto para los siguientes lenguajes.
1. L = { 1 n 0 m : n, m ≥ 2}
2. L = { a n bm : n par :m es impar}
3. L = { 1n 0n : n ≥ 0 }
4. L = { a n bm : n <= 4 :m>=4}
5. L = { a n bn : n >= 0, en múltiplos de 5}

a) Escriba la GCL
b) Derive para demostrar las cadenas aceptadas.
c) Dibuje el árbol de derivación.
d) Escriba 3 ejemplos que demuestren las cadenas aceptadas.

1. L = { 1 n 0 m : n, m ≥ 2}

a. Escriba la GCL

S-> aaAbbB
A-> aA
B->bB
A-> λ
B-> λ

G = ({A,B,S}, {a,b}, S, P}

b. Derive para demostrar las cadenas aceptadas.

- S=>aaAbbB=>aabbB=>aabb
- S=>aaAbbB=>aaaAbbB=>aaaAbbbB=>aaabbbB=>aaabbb

c. Dibuje el árbol de derivación.

a a A b b B

a A b B

λ λ
d. Escriba 3 ejemplos que demuestren las cadenas aceptadas.

- aabb
- aaabbb
- aaaabbbb

2. L = { a n bm : n par :m es impar}

a. Escriba la GCL

S-> aABb
A-> aaA
B->bbB
A-> λ
B-> λ

G = ({A,B,S}, {a,b}, S, P}

b. Derive para demostrar las cadenas aceptadas.

- S=>aABb=>aaaABb=>aaaAbbBb=>aaabbBb=>aaabbb
- S=>aABb=>abbBb=>abbbbBb=>abbbbb

c. Dibuje el árbol de derivación.

a A B b

a a A b b B

λ λ

d. Escriba 3 ejemplos que demuestren las cadenas aceptadas.

- aaabbb
- abbbbb
- aaaaabbb
3. L = { 1n 0n : n ≥ 0 }

a. Escriba la GCL

S-> AB
A-> 1A
B-> 0B
A-> λ
B-> λ

G = ({A,B,S}, {0,1}, S, P}

b. Derive para demostrar las cadenas aceptadas.

- S=>AB=>10
- S=>AB=>1AB=>11AB=>11A0B=>110B=>110

c. Dibuje el árbol de derivación.

A B

1 A 0 B

λ λ

d. Escriba 3 ejemplos que demuestren las cadenas aceptadas.

- 1010
- 1100
- 10
4. L = { a n bm : n <= 4 :m>=4}

a. Escriba la GCL

S-> aaaabbbbB
B-> bB
B-> λ

G = ({A, B, S}, {a, b}, S, P}

b. Derive para demostrar las cadenas aceptadas.

- S=>aaaabbbbB=>aaaabbbb=> aaaabbbb
- S=> aaaabbbbB => aaaabbbbbB => aaaabbbbb => aaaabbbbb

c. Dibuje el árbol de derivación.

a a a a b b b b B

b B

d. Escriba 3 ejemplos que demuestren las cadenas aceptadas.

- aaaabbbb
- aaaabbbbb
- aaaabbbbb
5. L = { a n bn : n >= 0, en múltiplos de 5}

a. Escriba la GCL

S-> AB
A-> aaaaaA
B-> bbbbbB
A-> λ
B-> λ

G = ({A,B,S}, {a,b}, S, P}

b. Derive para demostrar las cadenas aceptadas.

- S=>AB=>aaaaaB=>aaaaabbbbb
- S=>AB=>aaaaaaaaaaAB=>aaaaaaaaaaB=>aaaaaaaaaabbbbbB=>aaaaaaaaaabbbbbbbbbb

c. Dibuje el árbol de derivación.

A B

a a a a a A b b b b b B
a

λ λ

d. Escriba 3 ejemplos que demuestren las cadenas aceptadas.

- aaaaaaaaaaabbbbbbbbbb
- aaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbb
- aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

También podría gustarte