Operaciones Con Cadenas PDF
Operaciones Con Cadenas PDF
Operaciones Con Cadenas PDF
Por tanto si w = 122 sobre el alfabeto = { 1, 2 }, se tiene
w
0
=
w
1
= 122
w
2
= 122122
w
3
= 122122122
y as sucesivamente. Se dice que w
i
es la potencia i-sima de w.
Igualdad de cadenas
Si w y z son cadenas, se dice que w es igual a z si tienen la misma longitud y los mismos smbolos
en la misma posicin. Se denota por w = z.
Prefijos
S i w y x son cadenas, se dice que x es prefijo de w, si para alguna cadena y se obtiene que w =
xy.
Por ejemplo, si w es la cadena 121, entonces la cadena x = 12 es un prefijo de w y por lo tanto y
= 1.
Si se considera y = , entonces para w = xy se tiene que w = x, con lo que toda palabra puede
considerarse prefijo de s misma.
Prefijo Propio
Son aquellas cadenas que son prefijos de una palabra pero no iguales a la misma. Por eso x =
121 es un prefijo de la cadena w = 121, pero no es un prefijo propio de w. Finalmente hay que
tener en cuenta que la palabra vaca es prefijo de cualquier palabra.
Subcadena
Una cadena w es una subcadena de otra cadena z si existen las cadenas x e y para las cuales z =
xwy.
Inversa o Transpuesta de una cadena
La inversa o transpuesta de una cadena w es la imagen refleja de w. Por ejemplo, si w = able
entonces su inversa es elba. Para denotar la inversa de w se usa w
I
w
I
=
Supongamos que x = able. Si se sigue la definicin anterior para calcular w
I
se tiene:
x
I
= (able)
I
= (ble)
I
a
= (le)
I
ba
= (e)
I
lba
= ()
I
elba
= elba
= elba
La inversa de deshace a s misma, obsrvese que:
((abcd)
I
)
I
= (dcba)
I
= abcd
En general, (x
I
)
I
= x.
OPERACIONES CON LENGUAJES
Concatenacin
A B = {wx | w A y x B}
Por tanto, A B est formado por todas las cadenas que se forman concatenando cada cadena
de A con todas las cadenas de B.
Por ejemplo, si A = {casa} y B = {pjaro, perro), entonces A B sera el lenguaje {casapjaro,
casaperro).
Obsrvese que para formar el lenguaje concatenacin A B no es necesario que A y B sean
lenguajes sobre el mismo alfabeto. Si A es un lenguaje sobre
1
y B es un lenguaje sobre
2
,
entonces A B es un lenguaje sobre
1
2
. Se suele escribir AB en lugar de A B, cuando la
expresin resulta ambigua.
Dado que para toda cadena x, x = x = x, se obtiene que para cualquier lenguaje A, A { }
= { } A = A.
Potencia de Lenguajes
Sea A un lenguaje sobre el alfabeto
2
.
Definimos:
A
n
=
Por tanto, si A = {ab} sobre el alfabeto ingls, se obtiene que
A
0
= {}
A
1
= A = {ab}
A
2
= A A
1
= {abab}
A
3
= A A
2
= {ababab}
Unin de lenguajes
Si A y B son lenguajes sobre el alfabeto , entonces la unin de A y B se denota mediante A B y
est formada por todas las palabras que pertenecen al menos a uno de los dos lenguajes. Por
tanto,
A B = {x | x A o x B}
Interseccin de Lenguajes
Luego, A B est formado slo por las palabras que pertenecen a los lenguajes A y B a la vez.
A B = { x | x A y x B simultneamente }
Ejemplo:
Consideremos el alfabeto = {0, 1} y los lenguajes A = {, 0, 1, 10, 11} y B = {, 1, 0110, 11010}.
Entonces
A B = {, 0, 1, 10, 11, 0110, 11010}
y
A B = {, 1}
Sublenguajes
Si A y B son lenguajes sobre un alfabeto y si todas las cadenas de A son tambin cadenas de B,
entonces se dice que A es un sublenguaje de B. Dado que esto se corresponde exactamente con
el concepto de subconjunto visto en la teora de lenguajes, A B denota que A es un
sublenguaje de B.
Ejemplo:
Para los lenguajes A = {a, aa, aaa, aaaa, aaaaa} y B = {a
n
| n = 0, 1,2,...}, se tiene que A B.
Obsrvese que cualquier lenguaje L sobre el alfabeto es un sublenguaje de *, es decir. L
*
.
Igualdad de Lenguajes
Se dice que dos lenguajes A y B son iguales si contienen exactamente las mismas cadenas, es
decir, son conjuntos iguales. Se denota con A = B.
Teoremas de Lenguajes
1. Sean A y B dos lenguajes sobre el alfabeto . Entonces A = B si y slo si A B y B A.
2. Dados los lenguajes A, B y C sobre un alfabeto , se cumple que:
a. A ( B C) = A B A C
b. (B C) A = B A C A
Cerradura de Kleene (L
*
)
Si A es un lenguaje sobre algn alfabeto , se define la cerradura de Kleene o cerradura de
estrella de un lenguaje A como
A
*
=
Es un smbolo unitario. Las cadenas de la cerradura de Kleene se forman al realizar cero o ms
concatenaciones de las cadenas del lenguaje
Cerradura Positiva (L
+
)
Definiremos tambin la cerradura positiva de A como
A
+
=
Es un smbolo unitario. Las cadenas de la cerradura positiva se forman al realizar una o ms
concatenaciones de las cadenas de un lenguaje
Diferencia de Lenguajes
Si A y B son lenguajes sobre , definiremos la diferencia como
A B = { x | x A y x B }
Complemento de un Lenguaje
Definimos el complemento de un lenguaje A sobre el alfabeto como:
=
*
- A
Inverso o transpuesta de un Lenguaje
Se puede desarrollar la idea de inverso o transpuesta de un lenguaje. El inverso de un lenguaje A
es
A
I
= { x
I
| x A}
Por ejemplo si A = {dog, bog}, entonces A
I
= {god, gob}.
Obsrvese que si se vuelve a realizar el inverso del inverso de todas las palabras de un lenguaje,
entonces se obtiene, de nuevo, el lenguaje original. Por tanto, (A
I
)
I
= A.