Edición de «Práctica 1: Gramáticas Regulares y Autómatas Finitos (Teoría de Lenguajes)»

De Cuba-Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces publica los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 43: Línea 43:


==Ejercicio 03==
==Ejercicio 03==
''Construir autómatas finitos para los siguientes lenguajes:''
*g) ''Cadenas que contengan 3 ceros consecutivos. ∑ = {0,1}.''
[[Imagen:P1E3G.png]]
<!-- http://graph.gafol.net/create
rankdir=LR;
size="8.5";
node [fontname=Arial,fontsize=12];
node [width=0.6,height=0.6,fixedsize=true];
edge [fontname=Arial,fontsize=10];
edge [arrowhead=vee,arrowsize=0.70];
start [style=invisible];
node [shape = doublecircle]; q3;
node [shape = circle];
start -> q0;
q0 -> q0 [label="1"];
q0 -> q1 [label="0"];
q1 -> q0 [label="1"];
q1 -> q2 [label="0"];
q2 -> q0 [label="1"];
q2 -> q3 [label="0"];
q3 -> q3 [label="0|1"];
-->
*h) ''Cadenas que no contengan dos unos consecutivos. ∑ = {0,1}.''
[[Imagen:P1E3H.png]]
<!-- http://graph.gafol.net/create
rankdir=LR;
size="8.5";
node [fontname=Arial,fontsize=12];
node [width=0.6,height=0.6,fixedsize=true];
edge [fontname=Arial,fontsize=10];
edge [arrowhead=vee,arrowsize=0.70];
start [style=invisible];
node [shape = doublecircle]; q0 q1;
node [shape = circle];
start -> q0;
q0 -> q0 [label="0"];
q0 -> q1 [label="1"];
q1 -> q0 [label="0"];
-->
*i) ''Cadenas con un número impar de ceros y un número par de unos''
[[Imagen:P1E3I.png]]
<!-- http://graph.gafol.net/create
rankdir=LR;
size="8.5";
node [fontname=Arial,fontsize=12];
node [width=0.6,height=0.6,fixedsize=true];
edge [fontname=Arial,fontsize=10];
edge [arrowhead=vee,arrowsize=0.70];
start [style=invisible];
node [shape = doublecircle]; q1;
node [shape = circle];
start -> q0;
q0 -> q1 [label="0"];
q1 -> q0 [label="0"];
q2 -> q3 [label="0"];
q3 -> q2 [label="0"];
q0 -> q2 [label="1"];
q2 -> q0 [label="1"];
q1 -> q3 [label="1"];
q3 -> q1 [label="1"];
-->
*j) ''Cadenas donde en todo prefijo (subcadena inicial) la cantida de ceros difiera de la cantidad de unos en no más de 1. Es decir, para todo prefijo se cumple: <math>| \text{cant. de ceros} - \text{cant. de unos} | \leq 1</math>. ∑ = {0,1}.''
[[Imagen:P1E3J.png]]
<!-- http://graph.gafol.net/create
rankdir=LR;
size="8.5";
node [fontname=Arial,fontsize=12];
node [width=0.6,height=0.6,fixedsize=true];
edge [fontname=Arial,fontsize=10];
edge [arrowhead=vee,arrowsize=0.70];
start [style=invisible];
node [shape = doublecircle]; q0 q1 q2;
node [shape = circle];
start -> q0;
q0 -> q1 [label="1"];
q1 -> q0 [label="0"];
q0 -> q2 [label="0"];
q2 -> q0 [label="1"];
-->
==Ejercicio 04==
==Ejercicio 04==
==Ejercicio 05==
==Ejercicio 05==
Dados automatas finitos para L1 y L2 indicar c´omo construir aut´omatas
finitos para los siguientes lenguajes, con las mismas consideraciones que
en el ejercicio anterior:
(a) L1 U L2  (union)
(b) L1 n L2  (interseccion)
(c) L1.L2    (concatenacion)
(d) L1 \ L2  (resta)
[a] creo un nuevo AFND-\ (automata no deterministico con trans. lambda)
talque tenga un estado inicia q_o que una con una transicion lambda a los estados finales de los automatas de L1 y L2
Vale que es la union por la definicion de cadena aceptada en un AFND-\
que dice que
    c es aceptada <==> g(qo,c) pertenece a F , c una cadena
                                              , con g la funcion de transcicion
                                              , qo estado inicial
                                              , F conj de estados finales o aceptores
[idea de lo q deberia ser la demostracion] : vale trivialmente pues la trans lambda obligatoria de qo no modifica a las cadenas de L1 y L2 y cualquier palabra q sea aceptada por cualquiera de los dos automatas lo sera en el nuevo pues por alguno de las dos tranciciones se llegara al estado aceptor.
[b] El automata que deriva de la interseccion se construye de la sigueinte manera :
Q = Q1 x Q2 ( prod cartesiano de los estados de L1 y L2)
q0 = (q1,q2) (con q1 y q2 siendo los estados iniciales de Q1 y Q2)
g( (x,y) , a ) = (g1(x,a),g2(y,a)) con (x,y) pertenece Q
F = F1 x F2
[demo] :
[c]
[d] L1 \ L2 = L1 n (L2^c)  (L2^c --> L2 complemento , es decir la clasura de Kleene del alfabeto menos L2)
- aplico la interseccion del item b y el complemento de un ejercicio previo
==Ejercicio 06==
==Ejercicio 06==




[[Category:Prácticas]]
[[Category:Prácticas]]
Ten en cuenta que todas las contribuciones a Cuba-Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Cuba-Wiki:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)

Plantilla usada en esta página: