0% encontró este documento útil (0 votos)
45 vistas30 páginas

Aporte5 Carlos Gutierrez

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1/ 30

AUTOMATAS Y LENGUAJES FORMALES

TRABAJO COLABORATIVO NO. 2

ELABORADO POR:
CARLOS ANDRES GUTIERREZ COD. 6.391.734
Carandgut1981@hotmail.com

TUTOR DEL CURSO:


MAGDA LORENA ZUIGA
GRUPO:
301405_33

UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA


ESCUELA DE CIENCIAS BASICAS, TECNOLOGIA E EINGENIERIA, ECBTI
PROGRAMA DE INGENIERIA DE SISTEMAS
CEAD PALMIRA
OCTUBRE DE 2016

1. Realice la descripcin (notacin) (caracterizacin) matemtica del


autmata. (Antes de minimizar).

El autmata finito es de quntupla determinstico, ya que a partir del estado actual


y del smbolo actual de entrada se puede determinar de forma exacta cul ser el
estado siguiente.
M es un quntuplo (K, , , s, F), donde:
K = {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9}, identifica el conjunto de estados del
autmata
= {0,1}, es el alfabeto de entrada
S = {q0}, es el estado inicial
F = {q3, q4, q8} es un conjunto de estados finales o de aceptacin.
: K x K es la funcin de transicin, que a partir de un estado y un smbolo
del alfabeto obtiene un nuevo estado.

Donde la funcin
: {q0, q1, q2, q3, q4, q5, q6, q7, q8, q9} x {0,1} {q0, q1, q2, q3, q4, q5, q6, q7,
q8, q9}
Viene dada por:
(q0, 0) = q2
(q0, 1) = q1
(q1, 0) = q5
(q1, 1) = q3
(q5, 1) = q2
(q5, 0) = q9
(q2, 0) = q4
(q4, 0) = q7
(q4, 1) = q9
(q7, 0) = q9
(q3, 1) = q6
(q3, 0) = q9
(q6, 1) = q9
(q6, 0) = q8
(q8, 1) = q7
M= ({q0, q1, q2, q3, q4, q5, q6, q7, q8, q9}, {0,1}, , {q0}, {q3, q4, q8})
2. Plasme la tabla de transicin del autmata. (No es la que generas VAS).
(Antes de minimizar).

q0
q1
q2

0
q2
q5
q4

1
q1
q3

# q3
#q4
q5
q6
q7

q9
q7
q9
q8
q9

q6
q9
q2
q9

# q8

q7

q9

3. Identifique El Lenguaje que reconoce. (Antes de minimizar).


L = {w {0,1} * | w = {00, 11, 1010, 1110}

L={ { 0,1 } =(00+1010|11|1110) }


El lenguaje solo reconoce cuatro cadenas posibles las cuales pueden empezar
con cero o con uno y pueden terminar con cero o con uno.
4. Identifique la ER y en una tabla de validacin (puede ser de Excel),
verifique una cadena vlida y una no vlida. Tenga en cuenta la jerarqua de
operadores. (Antes de minimizar).
Para identificar la ER y minimizar el autmata emplear la teora de conjuntos
Para esto determino 2 conjuntos los cuales sern: X = Estados aceptados Y
=Estados no aceptados
Para mi caso los conjuntos sern: X = {q3, q4, q8} Y = {q0, q1, q2, q5, q6, q7, q9}
Procedo a validar mis conjuntos por medio de las tablas.
Validacin conjunto x
Valido q3 = {0,1}

q3

0
y

1
y

0
y

1
y

1
y

Valido q5 = {0,1}

q4
Valido q8 = {0,1}

q8
Validacin de conjunto y:


q0
q1
q2

0
y
y
x

1
y
x

q5
q6
q7

y
x

y
y
y

q9

ER:

{0,1 } (00+1010|11|1110)

Ahora verificaremos una cadena valida y una cadena no valida.


Cadena Valida.
1110

A travs del siguiente cuadro explicativo.


Debe tenerse en cuenta dos cuestiones importantes antes del anlisis del cuadro
anterior, en primer lugar, los cuadros en verde representan sentencias o aspectos

obligatorios dentro de la evaluacin de las cadenas de caracteres a travs de la


expresin regular del autmata.
0 0 U 1 0 1 0 U 1 1 U 1 1 1 0

Como se debe cumplir que cada cadena valida del autmata puede empezar por
el nmero 0, o por 1, puede elegirse cualquiera de las secciones de la expresin
regular, las cuales estn separadas por signos de unin
Por tanto
Cadena valida 1= 1110
0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1

Como pudimos ver para que nuestra cadena se cumpla debimos empezar por la
tercera unin de la expresin regular, ya que el primer nmero es el 1.
Cadena valida 1=

11 10

0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1 1

Como tercer paso nos pide un nmero 1, y vemos que se cumple dicha condicin
Cadena valida 1=

1110

0 0 U 1 0 1 0 U 1 1 U 1 1 1 0

1 1 1

Seguimos con la cadena, ya llevamos una secuencia 111, pero la necesitamos que
nos lean el cero para terminar la cadena
Cadena valida 1=

1110

0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1 1 1 0

As llegamos al final de la cadena, dndonos un positivo, Cadena valida con su


estado de aceptacin en q8

Ahora vamos con la cadena no valida:

100

Empezamos por el mismo camino de la cadena valida, pues empezamos con un 1


seguido de un 0.

Cadena no valida:

0 0 U 1 0 1

10 10

0 U 1 1 U 1 1 1 0

1 0 0

Seguidamente nos pide un 0, pero vemos que no cumplimos con la condicin, por
lo tanto, la cadena no puede terminar, es una cadena no valida.
Cadena no valida:

0 0 U 1 0 1

100

0 U 1 1 U 1 1 1 0

1 0 0

5. Identifique los estados Distinguibles y los No distinguibles.

Los estados distinguibles para nuestro autmata son: Estados distinguibles o


aceptadores: X = {q3, q4, q8} Estados no distinguibles o no aceptadores: Y = {q0,
q1, q2, q5, q6, q7, q9}

6. Identifique los estados equivalentes (para ello muestre cmo evala esas
equivalencias, colocando a los estados candidatos de equivalencia como
estados iniciales). Evidencie el proceso de cmo los evala.
Identifico los estados equivalentes en x:
X = {q3, q4}

q3
q4
q8

0
y
y

1
y
y
y

Podemos observar que en el conjunto x los estados equivalentes son q3 y q4


Identifico los estados equivalentes en y: Y = {q0, q1, q2, q5, q6, q7, q9}

q0
q1
q2

0
y
y
x

1
y
x

q5
q6
q7

y
x

y
y
y

q9

Los estados q0, q5 son equivalentes (Teniendo presente que q0 es el estado


inicial)
Los dems estados no tienes equivalencia.
Por tal razn se generan 8 Conjuntos.
X = q3, q4
Y= q8
Z= q0, q5
W =q1
P=q2
T=q6

R=q7
S=q9

Conjunto x

q3

q4

Conjunto y

q8

Conjunto z

q0

q5

Conjunto w

q1
Conjunto P
q2

Conjunto T
q6

Conjunto R
q7

Conjunto S

1
S

q9

Generando nuevos conjuntos


Al generar nuevos conjuntos se vuelve a validar a todos los conjuntos nuevos
W = {q0}
M = {q1}
P= {q2}
E = {q3,}
F = {q4}
N= {q5}
R= {q6}
S= {q7}
Z = {q8}
T= {q9}
Conjunto W

q0
Conjunto M

P
0

q1
Conjunto P

q5

E
1

F
0

1
T

q4
Conjunto N

q3
Conjunto F

q2
Conjunto E

R
1

Conjunto R
q6

Conjunto S
q7

Conjunto Z

q9

q8

Conjunto T

Con esta validacin tenemos nuestro autmata al mnimo ya que no tenemos


conjuntos equivalentes.
7. En el proceso de eliminacin de estados, identifique que transiciones se
eliminan y cules se redireccionan. Muestre la tabla de estados
distinguibles.
Estado q

q0

W =q0

q1

M =q 1

q2

P=q 2

q3

E=q3

q4

F=q 4

q5

N=q5

q6

R=q6

S=q7

q8

Z =q8

q9

T =q 9

q7

explicacin

Por los resultados obtenidos podemos ver que finalmente el autmata ha quedado
con un nmero igual de estados con respecto al inicial, pero se intuye que hay
cambios en la orientacin de sus transiciones.

8. El autmata nuevo minimizado expresarlo o graficarlos en un diagrama de


moore
El nuevo autmata quedo igual al original no es posible minimizarlo.

9. Realice la descripcin (notacin) (caracterizacin) matemtica del


autmata ya minimizado

M =(K , , s , , F)
K=Es el conjunto de estados que posee el autmata .
=( Sigma) Es elalfabeto de entrada
s= Al estadoinicial del autmata

F=Estado final del autmata


=( sigma)Funcin de transferencia .

Para nuestro autmata minimizado la forma matemtica es:


K={W , M , P , E , F , N , R , S , Z , T }
=( 0,1)

s=Estado Inicial=w
F=estado final={ E , F , Z }
: { W , M , P , E , F , N , R , S , Z , T

} x {0,1} { W , M , P , E , F , N , R , S , Z , T

Viene dada por:


(W, 0) = P
(W, 1) = M
(M, 0) = N
(M, 1) = E
(N, 1) = P
(N, 0) = T
(P, 0) = F
(F, 0) = S
(F, 1) = T
(S, 0) = T
(E, 1) = R
(E, 0) = T
(R, 1) = T
(R, 0) = Z
(Z, 1) = S
M= ({ W , M , P , E , F , N , R , S , Z , T

}, {0,1}, , {W}, {E, F, Z})

10. Identifique El Lenguaje que reconoce. (Autmata ya minimizado)


La expresin para el lenguaje de un autmata determinstico
al haber realizado el proceso de minimizacin nos damos cuenta que nos que el
mismo autmata por lo tanto el lenguaje que reconoce es el mismo.
L={

{0,1} * |

= {00, 11, 1010, 1110}

L={ { 0,1 } =(00+1010|11|1110) }


El lenguaje solo reconoce cuatro cadenas posibles las cuales pueden empezar
con cero o con uno y pueden terminar con cero o con uno.

11. Identifique la ER del autmata ya minimizado y en una tabla de validacin


(puede ser de Excel), verifique una cadena vlida y una no vlida. Tenga en
cuenta la jerarqua de operadores. (Autmata ya minimizado).
ER:

{0,1 } (00+1010|11|1110)

Ahora verificaremos una cadena valida y una cadena no valida.


Cadena Valida.
1010
A travs del siguiente cuadro explicativo.
Debe tenerse en cuenta dos cuestiones importantes antes del anlisis del cuadro
anterior, en primer lugar, los cuadros en verde representan sentencias o aspectos
obligatorios dentro de la evaluacin de las cadenas de caracteres a travs de la
expresin regular del autmata.
0 0 U 1 0 1 0 U 1 1 U 1 1 1 0

Como se debe cumplir que cada cadena valida del autmata puede empezar por
el nmero 0, o por 1, puede elegirse cualquiera de las secciones de la expresin
regular, las cuales estn separadas por signos de unin
Por tanto
Cadena valida 1= 1010
0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1

Como pudimos ver para que nuestra cadena se cumpla debimos empezar por la
primera unin de la expresin regular, ya que el primer nmero es el 1 y el
segundo nmero es 0.
Cadena valida 1=

10 10

0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1 0

Como tercer paso nos pide un nmero 0, y vemos que se cumple dicha condicin
Cadena valida 1=

1010

0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1 0 1

Seguimos con la cadena, ya llevamos una secuencia 101, pero la necesitamos


que nos lean el cero para terminar la cadena

Cadena valida 1=

1110

0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
1 0 1 0

As llegamos al final de la cadena, dndonos un positivo, Cadena valida con su


estado de aceptacin en q4

Ahora vamos con la cadena no valida:


Empezamos con cero
Cadena no valida: 001
0 0 U 1 0 1 0 U 1 1 U 1 1 1 0
0

001

Seguidamente nos pide un 0,


Cadena no valida: 001
0 0 U 1 0

0 U 1 1 U 1 1 1 0

0 0

Cadena no valida: 001


Seguidamente nos pide un 1, pero vemos que no cumplimos con la condicin, por
lo tanto, la cadena no puede terminar, es una cadena no valida.
0 0 U 1 0
0 0

0 U 1 1 U 1 1 1 0

12. (Autmata minimizado) Identifique su gramtica (de forma manual) por la


derecha y caractercela. Debe incluir el diagrama de estados con los
componentes de la gramtica asociados a las variables y a las constantes.
13. Realice la gramtica por la izquierda (de forma manual) y compare si esta
gramtica acepta o no el mismo lenguaje (cadenas). Justifique y demuestre
su respuesta.
Solucin ejercicios 12-13.
Izquierdo
S
C
F
D
S
G
A
C
D
F
H
I
B
I
F
D
A

Asignacin
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--
--

Derecho
0B
1B
0H
1G
1A
1E
0C
0E

0E
1H
0F

1E
0E
1D

Las gramticas son mecanismos generadores de lenguajes, es decir nos indican


cmo podemos obtener o construir palabras de un determinado lenguaje.
Una gramtica independiente del contexto (GIC) es una cudrupla G= (N, , S, P),
donde:
N: es una coleccin finita (no vaca) de smbolos no terminales.
: es un alfabeto.
S: es un no terminal llamado smbolo inicial.
P: un conjunto de producciones tal que P N (N ) *.
Los lenguajes generados por una GIC son llamados Lenguajes Independientes del
Contexto (LIC). Es posible probar que la gramtica independiente del contexto
dada por: S aSb|.

Diagrama de estados.

14. Con una cadena vlida, genere un rbol de derivacin para la gramtica
por la derecha y demuestre y justifique si la cadena y rbol generado puede
ser ambigua o no.
Mostramos la cadena valida 11 por el lado derecho

Mostramos la cadena valida 11 por el lado izquierdo

Los rboles son iguales respetando su posicin, por tal razn la gramtica no es
ambigua.

PARTE 2: Disee un AP que dentro de su lenguaje L ={(aUb) + (a|b)}; es decir


todas las combinaciones posibles de cadenas conformadas por los smbolos
(a) (b) o conjunto universal de estrellas de kleene, (con pila vaca):
exceptuando o rechazando cadenas como:
Cadenas no vlidas.
Las que estn compuestas por uno o muchos smbolos a: ejemplo: {(a)
(aa) (aaa) (aaaa)(aaaaa) (aaaaaa) . }
En el diseo que haga es libre determinar si acepta la cadena vaca o no.

1 Describa el autmata en notacin matemtica.

Este autmata es una sptupla compuesta por los siguientes componentes:


APD = (Q,

, , , q 0, z0

Q= { q 0 , q 1 , q 2 , q 3, q4 , }

{a, b}

={z,1}

q 0 =Estado inicial
z 0 =inicio de pila
=Funcin de transicin=

:Qx x

2 Determine si el lenguaje aceptado de este autmata con pila se


lleva a cabo por: Aceptacin por estado final o por Aceptacin por
pila vaca.

El lenguaje aceptado por este autmata se lleva a cabo por Aceptacin por
pila vaca: Debido que no posee un estado final y al terminar de leer la
cadena, que debe ser vlida la pila queda sin ningn smbolo.

3 Justifique y evidencie si el diseo es un APND o un APD


Este autmata de pila es determinista ya que posee unas transiciones las
que van ligadas a cada smbolo del alfabeto, adicional posee unas
transiciones que no consumen ningn smbolo de entrada. Se aprecia que el
estado q0 a q4 no consumi ningn smbolo de entrada.

4 Grafquelo en
transiciones.

ESTADO

JFLAP

realice

el

Traceback

q0

FALTA
POR
LEER
aba

CONTENIDO
DE PILA

q4

aba

q1

ba

q2

11

para

las

q3

q3

5 plasme las imgenes del recorrido de ese Traceback para cada


movimiento en el documento. (Se debe apoyar en JFLAP) (Documente
el proceso)

Empieza en q0 con z en la pila

Pasa a q4 sin leer ningn smbolo an, se elimina z

Pasa a q1 leyendo el smbolo a y se ingresa otro 1 a la pila.

Pasa a q2 leyendo la b y se ingresa otro 1 de la pila.

pasa a q3 leyendo el smbolo a y se elimina un 1 de la pila

Que en el mismo q3 eliminado el 1 que faltaba para aceptar la cadena por pila
vaca.

6 Muestre el diagrama correspondiente de estados.

7 Determine si su diseo acepta o no la cadena vaca y explique porqu,


en cualquier caso, demostrando el recorrido o comportamiento de la
Pila para ese evento.
El diseo si acepta la cadena vaca ya que al iniciar el autmata se puede
leer un smbolo vaco y al pasar a los siguientes estados como el smbolo Z
fue eliminado del fondo de la pila.
Esta pila estar vaca y por lo tanto se tomar como si fuera aceptado.
Debido a que el autmata trabaja aceptando por pila vaca.

También podría gustarte