Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de autómatas y operacionessobre los lenguajes regulares.
September 14, 2011
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 1 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Operaciones de cierre
Un conjunto C es cerrado bajo una operación · si ysolamente si para cualquier elementos x , y ∈ C,x · y ∈ C.Ejemplos
Sea C = {L ⊆ Σ∗ | L es finito } entonces la unión y laintersección son operaciones de cierre para C, mientraque la operación complementario no lo es.
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 2 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Operaciones de cierre
Para estudias las operaciones de cierre, haremosoperaciones sobre los siguientes autómatas.
AFD A1 no completo. L(A1) = {(ab)n | n ≥ 0}.
1 2a
b
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 3 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Operaciones de cierre
AFD A2 no completo. L(A2) = {(ab)n | n ≥ 0}.
1 2
3
a
bba
a,b
AFD A3 completo. L(A3) = {x ∈ {a,b}∗ | |x |a > 0}.
A Ba
b a,b
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 4 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Intersección
Los lenguajes regulares si que son cerrados con respecto ala intersección:Sean L1,L2 ∈ L3 , entonces existen dos AFDs A1,A2 talesque L1 = L(A1),L2 = L(A2), dondeAi = (Qi ,Σ, δi ,qi ,Fi), i = 1,2Construimos A′ = (Q,Σ, δ,q0,F ) donde:
Q = Q1 × Q2
q0 = [q1,q2]
F = F1 × F2
δ([p1,p2],a) = [δ1(p1,a), δ2(p2,a)],p1 ∈ Q1,p2 ∈Q2,a ∈ Σ
L(A′) = L1 ∩ L2
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 5 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Intersección
AFD para L(A1) ∩ L(A3).
1,A 2,B 1,Ba
b
a
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 6 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Unión
Los lenguajes regulares si que son cerrados con respecto ala unión:Sean L1,L2 ∈ L3 , entonces existen dos AFDs completosA1,A2 tales que L1 = L(A1),L2 = L(A2), dondeAi = (Qi ,Σ, δi ,qi ,Fi), i = 1,2Construimos A′ = (Q,Σ, δ,q0,F ) donde:
Q = Q1 × Q2
q0 = [q1,q2]
F = F1 × Q ∪ Q × F2
δ([p1,p2],a) = [δ1(p1,a), δ2(p2,a)],p1 ∈ Q1,p2 ∈Q2,a ∈ Σ
L(A′) = L1 ∪ L2
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 7 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Unión
AFD para L(A2) ∪ L(A3).
1,A 2,B 1,B
3,A 3,B
a
b
b
aa
ba
b a,b
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 8 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Complementación y Diferencia
Los lenguajes regulares si que son cerrados conrespecto a la Complementación.Sea L ∈ L3 , entonces existe un AFD completo A talque L = L(A) donde A = (Q,Σ, δ,q0,F ). Definimos elautómata A′ = (Q,Σ, δ,q0,Q-F ).
L(A′) = L
Los lenguajes regulares si que son cerrados conrespecto a la Diferencia.Sean L1,L2 ∈ L3 . Nótese que L1-L2 = L1 ∩ L2.
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 9 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Complementación
AFD para L(A2).
1 2
3
a
bba
a,b
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 10 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Reverso
Los lenguajes regulares si que son cerrados con respectoal Reverso.Sea L ∈ L3 , entonces existe un autómataA = (Q,Σ, δ,q0,qf ) tal que L(A) = L. Si |F | > 1 puedemodificarse el autómata para que posea un único estadofinal. Construimos A′ = (Q,Σ, δ′,qf ,q0) donde:q ∈ δ(p,a) ↔ p ∈ δ′(q,a) para a ∈ Σ ∪ {λ}.
L(A′) = Lr
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 11 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Reverso
Autómata para (L(A2)c)r .
1 2
3 qf
b
a
ba
a,b
λ
λ
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 12 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Concatenación
Los lenguajes regulares si que son cerrados con respecto ala Concatenación.Sean L1,L2 ∈ L3 , entonces existen dos autómatas A1,A2
tales que L1 = L(A1),L2 = L(A2) dondeAi = (Qi ,Σ, δi ,qi ,Fi), (i = 1,2) y tales que Q1 ∩ Q2 = ∅Construimos A′ = (Q,Σ, δ′,q1,F2) donde:
Q = Q1 ∪ Q2
δ′ = δ1 ∪ δ2 ∪ δ′′ donde q2 ∈ δ′′(p, λ), for any p ∈ F1
L(A′) = L1 · L2
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 13 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Concatenación
Autómata para L(A1) · L(A3).
1 2
A B
a
bλ
b a,b
a
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 14 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Clausura
Los lenguajes regulares si que son cerrados con respecto ala Clausura.Sea L ∈ L3 , entonces existe un autómata A tal queL = L(A) donde A = (Q,Σ, δ0,q0,F ) ConstruimosA′ = (Q′,Σ, δ′,qn,F ′) donde:
Q′ = Q ∪ {qn}, qn ∈ Q
F ′ = F ∪ {qn}
δ′(p,a) = δ(p,a), para todo p ∈ Q y para todo a ∈ Σ
qn ∈ δ′(p, λ), para todo p ∈ F
δ′(qn, λ) = {q0}
L(A′) = L∗
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 15 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Clausura
Autómata para (L(A2)c)∗.
1 2
3 qn
a
bba
a,b
λ
λ
λ
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 16 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Homomorfismos
Los lenguajes regulares si que son cerrados con respecto aHomomorfismo. Sea h : Σ → ∆ y L ∈ L3. Existe unautómata A tal que L = L(A). Construimos un autómata A′
a partir de A, donde sustituimos cada transicion con unsímbolo a ∈ Σ por el conjunto de transiciones de la palabracorrespondinte a h(a).
L(A′) = h(L)
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 17 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Homomorfismo
Autómata para h(A1) donde h(a) = 01 y h(b) = λ.
1 2
0 1
λ
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 18 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Homomorfismo Inverso
Los lenguajes regulares si que son cerrados con respecto aHomomorfismo Inverso. Sea h : Σ → ∆∗ y L ∈ L3 ,entonces existe un autómata A tal que L = L(A) y dondeA = (Q,∆, δ,q0,F ) Construimos A′ = (Q,Σ, δ′,q0,F )donde:
δ′(p,a) =δ(p,h(a))siδ(p,h(a)) 6= ∅
∅ en otro caso
L(A′) = h−1(L)
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 19 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Homomorfismo Inverso
Σ = {0,1}, ∆ = {a,b}. g(0) = ab, h(1) = ba. Autómatapara g−1(L(A2)
c).
1 2
3
10
0 1
0,1
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 20 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
Un AFD A = (Q,Σ, δ,q0,F ) es accesible si para todoq ∈ Q existe una palabra x ∈ Σ∗ tal que δ(q0, x) = q
Sea A = (Q,Σ, δ,q0,F ) un AFD completo y accesible.Definimos la relación de indistiguibilidad ∼ en Q como:para cualquier q,q′ ∈ Q : (q ∼ q′ ↔ for every x ∈ Σ,(δ(q, x) ∈ F ↔ δ(q′, x) ∈ F ))
Sea A = (Q,Σ, δ,q0,F ) un AFD completo y accesible ysea la relación de indistiguibilidad ∼. Se define elautómata cociente A/ ∼= (Q,Σ, δ′,q0,F ) como:
Q = {[q]∼ | q ∈ Q}q0 = [q0]∼F = {[q] | q ∈ F}δ′([q]∼, a) = [δ(q, a)]∼
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 21 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
Sea A = (Q,Σ, δ,q0,F ) un AFD completo y accesible ysea la relación de indistiguibilidad ∼. El automata A/ ∼es el AFD mínimo que acepta L(A)
Sea A = (Q,Σ, δ,q0,F ) un AFD completo y accesible ysea un entero k ≥ 0. Se define la relación dek-indistinguibilidad ∼k como: para cualquierq,q′ ∈ Q : (q ∼k q ↔ para todax ∈ Σ∗, |x | ≤ k , (δ(q, x) ∈ F ↔ δ(q′, x) ∈ F ))
Se cumple que:para cualquier k ≥ 0, p ∼k+1 q → p ∼k qpara cualquier k ≥ 0, p ∼ q → p ∼k qpara cualquier k ≥ 0, p ∼k+1 q ↔ p ∼k q y paracualquier a ∈ Σ, δ(p, a) ∼k δ(q, a)
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 22 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
Algoritmo de minimización de AFD:
1. π0 = {Q − F ,F}
2. Obtener πk+1 a partir de πkB(p, πk+1) == B(q, πk+1) si y solo si
B(p, πk ) == B(q, πk )y para todo a ∈ Σ,B(δ(p, a), πk ) == B(δ(q, a), πk )
3. Si πk+1 es distinta a πk ir a 2
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 23 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
Ejemplo de minimización 1.
q0 q1
q2 q3
q4 q5
b
b
b
b
b
b
a
a
a
a
a
a
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 24 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
π0 :
a bB0 q0 B0 B1
q1 B0 B0
q3 B1 B0
q5 B1 B0
B1 q2 B0 B1
q4 B0 B0
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 25 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
π1 :
a bB0 q0 B1 B3
B1 q1 B0 B2
B2 q3 B3 B2
q5 B4 B1
B3 q2 B2 B4
B4 q4 B2 B0
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 26 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
π2 :
a bB0 q0 B1 B4
B1 q1 B0 B2
B2 q3 B4 B3
B3 q5 B5 B1
B4 q2 B2 B5
B5 q4 B3 B0
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 27 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
π3 = π2 B0 B1
B4 B2
B5 B3
b
b
b
b
b
b
a
a
a
a
a
a
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 28 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
Ejemplo de minimización 2.
q0 q1
q2 q3
q4 q5
b
b
b
b
b
b
a
a
a
a
a
a
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 29 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
π0 :
a bB0 q1 B1 B0
q3 B1 B0
q5 B1 B0
B1 q0 B0 B1
q2 B0 B1
q4 B0 B1
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 30 / 31
Minimizaciónde autómatasy operaciones
sobre loslenguajesregulares.
Operacionesde cierreIntersección
Unión
Complementación yDiferencia
Reverso
Concatenación
Clausura
Homomorfismos
Minimizaciónde AFDsAlgoritmo
Ejemplo 1
Ejemplo 2
Minimización de AFDs
π1 = π0 B1 B0
a
a
b b
() Minimización de autómatas y operaciones sobre los lenguajes regulares.September 14, 2011 31 / 31
Top Related