Вы находитесь на странице: 1из 13

Teoría de Autómatas y Lenguajes Formales

TEMA I: Teoría de Conjuntos

1.1 Conjuntos

Def: Un conjunto es una colección de objetos o elementos

Def: Sean A y B conjuntos. Se define f aplicación de A en B

f: A → B
⇔ (x, f(x)) ⊆ A * B ,, ∀ x ∈ A ∃ ! y ∈ B ,, y = f(x)
x → f(x)

o f: A → B es inyectiva si y sólo si x ≠ y, x, y ∈ A ⇒ f(x) ≠ f(y)

o f: A → B es suprayectiva si y sólo si ∀ y ∈ B ∃ x ∈ A / y = f(x)

o f: A → B es biyectiva si es inyectiva y suprayectiva.

Def: Se define cardinal de un conjunto X el número de elementos de X si X

es finito.

Def: Se define el conjunto Partes de X como el conjunto formado por todos

los subconjuntos de X.

Teorema: Si X es finito, P(X)= 2 X .


 

n=1 ⇒ X=1; X={1}. P(X)={Φ , {1}} ⇒ P(X)=2=21=2 X .


 

Y2={A⊆Y/y∈A}
X=n, supongo que P(X)=2 X . X={x1, x2, x3...xn}.
 

Sea Y={ x1, x2, x3...xn, y} con y ≠ xi. Y=n+1.

P(Y)=P(X) ∪ (P(Y)\P(X)) ⇒ P(Y)= P(X)+ P(Y)\P(X)= 2 X +Y2.


 

La aplicación de P(X) en Y2 es biyectiva, por tanto, Y2=P(X)

⇒ P(Y)= 2 X +2 X = 2 X +1=2 Y .
      

Corolario: ∀ X conjunto finito, P(X)>X

Def: Sean X, Y conjuntos. Se dice  X<Y si f: X → Y es inyectiva.

Se dice  X=Y si f: X → Y es biyectiva.

Teorema: Sean X, Y conjuntos. Si  X<=Y y  Y<=X ⇒  X=Y.

Página 1
Teoría de Autómatas y Lenguajes Formales

Teorema: Si X conjunto entonces  X<P(X).

Corolario: No ∃ cardinal máximo.

Axioma de Elección: Dada una colección de conjuntos no vacíos, existe una

función g cuyo dominio es la colección de conjuntos de forma que ∀ los

conjuntos X de la colección la imagen de ese conjunto es un elemento de ese

conjunto:

g / x ∈ C, g(X) ∈ X, dom(g) = C.

Teorema: N ⊆ X ∀ X infinito.

Def: Un conjunto X es numerable si X es finito o si ∃ f: X → N inyectiva.

Un conjunto X no es numerable si no cumple ls anteriores.

1.2 Relaciones

Def: Se dice que existe Relación de A en B si (a, b) ∈ A*B

Propiedades: Sea S conjunto y R relación en S. R es:

o Reflexiva si ∀ a ∈ S, aRa.

o Simétrica si aRb ⇒ bRa.

o Transitiva si aRb ∧ bRc ⇒ aRc.

o Irreflexiva si ∀ a ∈ S, a¬Ra.

o Antisimétrica si aRb ⇒ b¬Ra.

Sean A y B conjuntos y R relación binaria de A en B.

Dom(R) = {x ∈A / ∃ y ∈ B ∧ (x, y) ∈ R};

Im(R) = {y ∈ B / ∃ x ∈ A ∧ (x, y) ∈ R}

R-1 = {(b, a) ∈ B*A / (a, b) ∈ R}

Página 2
Teoría de Autómatas y Lenguajes Formales

Partición de A:

Def: Una colección de subconjuntos no vacío A de A es una partición si y sólo

si

o B, C ∈ A ⇒ (B = C) ∨ (B ∧ C = Φ ).

o A = B
B∈Α

Def: Sean A, B, C conjuntos y R ⊆ A*B y S ⊆ B*C.

Definimos R compuesta con S (SoR) como

SoR={(a, c) ∈ A*C / ∃ b ∈ B (a, b) ∈ R y (b, c) ∈ S}

Relación de Equivalencia:

Def: R en A es de equivalencia si es reflexiva, transitiva y simétrica.

Teorema: Toda relación de equivalencia provoca una partición en el conjunto.

Teorema: Toda partición A de A induce una relación de equivalencia.

Def: Sea S conjunto y R de equivalencia en S. Al conjunto formado por todas

las clases de equivalencia de R se denomina conjunto cociente de R en S:

SR.

Def: Sea P un conjunto de propiedades de relaciones de un conjunto.

Sea R una relación. Se llama P clausura de R a la menor relación que

incluye todos los pares de R y cumple todas las propiedades de P. Lo

notamos R+.

Página 3
Teoría de Autómatas y Lenguajes Formales

1.3 Funciones

Def: Una función de A en B es un conjunto de A x B en el que no existen

pares con el mismo primer componente: Dom(f) = {x ∈ A / ∃ y ∈ B ,, (x, y) ∈

f}.

Teorema: Sean f y g funciones totales de A en B. f = g ⇔ f(x) = g(x) ∀ x ∈ A.

Def: Sean A, B y C conjuntos y f y g funciones. Se define g o f como

g o f = {(a, c) ∈ A x C / ∃ b ∈ B, b = f(a) ∧ c = g(b)};

g o f = (a, g(f(a));

Cálculo λ

Homomorfismos e isomorfismos:

Def: Sean f: A  A y g: B  B y sea t la aplicación t: A  B (x  u = t(x)) tal

que g(t(x)) = t(f(x)). Se dice que f y g son homomorfas y t un

homomorfismo. Si t es biyección, se dice que f y g son isomorfas y que t

es un isomorfismo.

Página 4
Teoría de Autómatas y Lenguajes Formales

TEMA II: Alfabetos y Palabras

2.1 Alfabetos

Def: Alfabeto es el conjunto no vacío y finito de letras.

Def: Palabra es toda sucesión finita de letras.

Def: La longitud de una palabra respecto de un alfabeto x es el número de

letras del alfabeto Σ que compone la palabra x.

Se llama palabra vacía λ a aquella formada por Φ letras de Σ . λ= Φ .

Aplicación x → x = {0, ..., m – 1} → Σ con x = m.

Def: Σ m
es el conjunto de todas las palabras X tal que x = m.

Universo de discurso Σ *
∞ ∞
Σ∗ =  Σi , tiene la palabra λ ; Σ+ =  Σi , no la tiene, Σ +
=Σ *\{λ }
i =0 i =1

corolarios: i) λ ∈Σ *∀Σ

ii) Σ * es infinito ∀ Σ

 : Σ * → N donde λ = 0 y aω = 1 + ω con a ∈ Σ , y ω ∈ Σ *

fct. longitud

Operaciones entre palabras

 Concatenación

Sean x e y palabras de un mismo alfabeto x, y ∈ Σ *. Se llama concatenación a

colocar el segundo término después del primero: ω = x . y

Página 5
Teoría de Autómatas y Lenguajes Formales

Propiedades:

i) Es aplicación: recoge palabras y devuelve como resultado una

palabra, es pues una operación cerrada en el universo

de discurso. Σ * . Σ * → Σ *

ii) Es asociativa: (x . y) . z = x . (y . z)

iii) Elem. Neutro: ∃ U ∈ Σ * / x . u = u . x = x, u = λ .

PERO no es conmutativo. Concluimos que (Σ *, .) es un semigrupo con elemento

neutro, o monoide libre.

Ley: Todo monoide libre cumple la ley de “Cancelación por la izquierda”. Esta

ley se cumple para todo monoide: a . b = a . c ⇒ b = c

Ley: La ley de “Cancelación por la derecha” no se cumplirá para todos los

monoides libres. b . a = c . a ⇒ b = c

Sean x, y, z ∈ Σ * tal que z = x . y. x es prefijo propio de z si y ≠ λ

Y es sufijo propio de z si x ≠ λ

Observación: La función longitud es isomorfa a la función logaritmo, respecto

de la concatenación. x . y = x + y, igual que log (x . y) = log x + log y.

Def: ω sub-cadena o sub-palabra de z si ∃ x, y ∈ Σ * / z = x . ω . y

x ∈ Σ *, i ∈ N, x[i] ≡ i-ésima letra de x.

 Potencia de una letra

Sea a ∈ Σ y n ∈ N. Potencia n-ésima de a, an, se defina como:

i) a0 = λ

ii) a1 = a

iii) ai+1 = a . ai con i ∈ N

Página 6
Teoría de Autómatas y Lenguajes Formales

Teorema: Sea Σ un alfabeto ⇒ Σ * es numerable.

Como no es finito, hay que demostrar que ∃ f: Σ * → N es inyectiva.

 Orden parcial

Definimos la relación ⊑entre palabras como: (x, y ∈ Σ *)

x ⊑ y : ⇔∃ z ∈ Σ * / y = x . z

x ⊏ y : ⇔ x ⊑ y ∧x ≠ y

 Orden total o lexicográfico

Sean x, y ∈ Σ *, Σ = {a1 . . . an}

x ≤y ⇔ x ⊑y ∨ ∃ u, v, w ∈ Σ * ∧ ∃ i, j ∈ N / x = u . ai . v, y = u . aj . w ∧ i < j

- o bien x es prefijo de y

- o bien no es un prefijo, y empiezan a ser iguales y dejan de serlo.

Def: Sea x ∈ Σ *, x = x[1] . x[2] . . . x[k]

Se define la palabra inversa x-1 como: x-1 = x[k] . x[k-1] . . . x[2] . x[1]

i) x = x-1

ii) λ -1

Funciones Algorítmicas

Sea Σ un alfabeto, a un algoritmo sobre Σ que admite un dato de entrada y

devuelve un dato de salida:

x n ={x1 , x 2 ,..., x n }define ⇒a ( x n ) = y

Página 7
Teoría de Autómatas y Lenguajes Formales

Def: Sea ψ una función parcial n-ária (con n argumentos) sobre Σ , ψ es

algorítmica si ∃ a algoritmo tal que Φ a = ψ .


n

Conjetura de Fermat: x, y. z ∈ R; xn + yn = zn, con n > 2

Lenguajes

Def: Llamamos lenguaje sobre un alfabeto Σ a cualquier subconjunto del

universo de discurso: L ⊆ Σ *.

El conjunto vacío es un lenguaje sobre cualquier alfabeto.

El conjunto formado sólo por la palabra vacío es también lenguaje sobre

cualquier alfabeto (∅ ≠ { λ } por que ∅= 0 y { λ } = 1)

Operaciones entre lenguajes

Sean L1, L2, L3 lenguajes sobre un mismo alfabeto Σ .

a) Unión

L1 ∪ L2 = {x ∈ Σ * / (x ∈ L1) ∨ (x ∈ L2)}

Es operación cerrada, la unión de lenguajes es un lenguaje.

Es asociativa: (L1 ∪ L2) ∪ L3 = L1 ∪ (L2 ∪ L3).

Tiene elemento neutro (el lenguaje vacío).

Es conmutativa: L1 ∪ L2 = L2 ∪ L1.

Es una proposición idempotente: L ∪ L = L.

b) Concatenación de lenguajes

L = L1 . L2 = {z ∈ L / ∃ x ∈ L1 ∧ ∃ y ∈ L2 . . z = x . y}

Es cerrada, asociativa y elemento neutro: { λ }.

Página 8
Teoría de Autómatas y Lenguajes Formales

Teorema: Sean A, B, C ⊆ Σ *

a) A . (B ∪ C) = (A . B) ∪ (A . C)

b) (A ∪ B) . C = (A . C) ∪ (B . C)

Es por tanto distributiva por derecha y por izquierda.

c) Potencia de un lenguaje

Sea L ⊆ Σ *. Definimos la potencia i-ésima de L como Li, resultado

de concatenarse a si mismo i veces.

También definimos L1 como L y L0 como { λ }.

d) Clausuras de un lenguaje

A la clausura de L la llamamos L* y está definida como la unión de


todas las potencias de L (Cierre de Kleene): L* = Li .


i =0


+
La clausura positiva, L+: L =  L .
i

i =1

Teorema: i) L* = L+ ∪ { λ }.

ii) L+ = L . L* = L* . L

e) Reflexión de L

L-1 = {x ∈ Σ * / x-1 ∈ L}

Teorema: i) (L-1)-1 = L

ii) (A . B)-1 = A-1 . B-1

Operaciones con lenguajes sobre distintos alfabetos

 Homomorfismos

Def: f: A* → B* es homomorfismo si f( λ ) = λ y si f(x, y) = f(x) . f(y)

Página 9
Teoría de Autómatas y Lenguajes Formales

TEMA III: Lenguajes Regulares y Autómatas Finitos

3.1 Lenguajes y expresiones regulares

 Analizador léxico

Diagrama de estados

2
dígito
1
letra

letra 3

Código dígito

Estado := 1;
Repite
Leer siguiente símbolo de la palabra;
Case estado is
1 ⇒ if símbolo = letra then estado := 3;
elsif símbolo = digito then estado := 2;
else rutine _ error;
2 ⇒ rutine _ error;
3 ⇒ if símbolo = letra then estado := 3;
elsif símbolo = digito then estado := 3;
else rutine _ error;
fin del case;
hasta fin de cadena;
if estado ≠ 3 then rutine _ error;

Tabla de estados

Letra Dígito Fin de cadena


1 3 2 Error
2 Error Error Error
3 3 3 Aceptar

Página 10
Teoría de Autómatas y Lenguajes Formales

 Lenguaje regular

Def: sea Σ alfabeto. El conjunto de lenguajes regulares se define como

1. ∅ es lenguaje regular.

2. {λ } es lenguaje regular.

3. ∀ a ∈ Σ , {a} es lenguaje regular.

4. si A y B son lenguaje regular ⇒ A ∪ B, A . B y A* son lenguajes

regulares.

5. Ningún otro lenguaje es regular.

Ej. Σ = {a, b}

L1 = {a, ab, b} = {a} ∪ {a} . {b} ∪ {a} es lenguaje regular. ∞


i
 ({a})
L2 = {a / i ≥ 0} = {λ } ∪ {a} ∪ ... ∪ {a ... a} lenguaje regular.
i i =0

L3 = {aibj / i ≥ 0 ∧ j ≥ 0} = {ai / i ≥ 0} . {bj / j ≥ 0} es lenguaje regular.

 Expresión regular

Def: Σ alfabeto. El conjunto de lenguajes regulares se define como

1. ∅ es expresión regular.

2. λ es expresión regular.

3. a ∈ Σ es expresión regular.

4. α y β son expresión regular ⇒ α + β , α . β son expresión



α* = ∑ a i
regular. i =0

5. α es expresión regular ⇒ α * es expresión regular.

6. Sólo son expresiones regulares las que se pueden formar

aplicando las reglas anteriores un número finito de veces con las

letras de Σ , ∅ y λ .

Dado α expresión regular, decimos que L es lenguaje asociado, L(α ) si

1. α = ∅ ⇒ L(α ) = ∅

2. α = λ ⇒ L(α ) = {λ }

Página 11
Teoría de Autómatas y Lenguajes Formales

3. α = a ⇒ L(α ) = {a}, a ∈ Σ

4. α = β + γ ⇒ L(α ) = L(β ) + L(γ )

5. α = β . γ ⇒ L(α ) = L(β ) . L(γ )

6. α = β * ⇒ L(α ) = L(β *) = L(β )*

Def: Sean α y β expresión regular. Diremos que α y β son equivalentes si L(α ) = L(β )

Teorema: L es regular ⇔ ∃ α expresión regular / L = L(α ).

Propiedades:

1. + es asociativa

2. + es conmutativa

3. . es asociativa

4. . es distributiva con respecto de la suma

5. . tiene elemento neutro: λ . α = α . λ = α

6. + tiene elemento neutro: ∅ + α = α + ∅ = α

7. λ * = λ

8. ∅ . α = α . ∅ = α

9. ∅* = λ

10. α * . α * = α *

11. α * . α = α . α *

12. ( α *)* = α *

13. α * = λ + α + α 2
+ ... + α n + α n+1
.α*

14. α * = λ + α . α *

15. α * = (λ + α )n-1 + α n . α *

16. (α * + β *)* = (α * . β *)* = (α + β )*

17. (α . β )*. α = α . (α . β )*

18. (α * . β )*. α * = (α + β )*

19. (α . β )* = (α + β )* . β + λ , (β * . α )* = β . ( β + α ) * + λ

20. R = S* . T ⇒ R = S . R + T
Leyes de Inferencia
Página 12
Teoría de Autómatas y Lenguajes Formales

Si λ ∉ S ,, R = S . R + T⇒ R = S* . T

3.2 Autómatas finitos

Es una máquina que recibe una entrada, la procesa y devuelve un valor

booleano. Un autómata finito determinista es M = (Σ , Q, δ , q0, F) con

Σ : alfabeto de entrada

Q: conjunto de estados

δ : función de transición

q0: estado inicial

F: ⊆ Q, conjunto de estados finales

Página 13

Вам также может понравиться