OO

download OO

If you can't read please download the document

description

465B E46HE4

Transcript of OO

24 CAPTULO 1. PRELIMINARES1.5. Alfabetos, cadenas y lenguajesAlfabetos, cadenas y lenguajes son algunos de los objetos esenciales sobre losque, histricamente, se construye la teora de la computabilidad. Esto es debidoa que son los objetos con los que trabajan gramticas y mquinas de Turing. Sinembargo, siempre ser posible utilizar nmeros naturales y conjuntos de naturalesen su lugar, ya que es muy sencilla la conversin de cadenas en nmeros naturalesy viceversa.Definicin 1.30 Definimos un alfabeto E, como un conjunto finito de objetosllamados smbolos.Normalmente utilizaremos como smbolos de alfabetos las letras a, 6, c , . . . losdgitos 0,1,2,... 9 y algn smbolo especial como $ o #. Cuando sea necesarioutilizar un alfabeto con nmero n indefinido de smbolos, utilizaremos los smbolos1,^2, ian-Definicin 1.31 Denominaremos cadena o palabra a una n-tupla de smbolos deE.En lugar de escribir (x\, #2, , xn) escribiremos simplemente x\x^ ... xn. Lalongitud de la palabra u = x\x, x,y,z y las letras griegas a, /3,7,...para denotar palabras.A diferencia de los conjuntos, no distinguiremos el smbolo a G S de la cadenade longitud 1 formada por ese smbolo.Definicin 1.32 Si u,v son dos cadenas del alfabeto S, denominamos concatenacinde u y v a la cadena de S formada por colocar la cadena v a continuacinde u, y denominamos a esta cadena u v o, simplemente, uv.Ejemplo 1.17Si S = {a, 6, c}, u aabb y v = cbc, entoncesuv = aabbcbc y vu = cbcaabb.Para cualquier u se cumple que24 CAPTULO 1. PRELIMINARES1.5. Alfabetos, cadenas y lenguajesAlfabetos, cadenas y lenguajes son algunos de los objetos esenciales sobre losque, histricamente, se construye la teora de la computabilidad. Esto es debidoa que son los objetos con los que trabajan gramticas y mquinas de Turing. Sinembargo, siempre ser posible utilizar nmeros naturales y conjuntos de naturalesen su lugar, ya que es muy sencilla la conversin de cadenas en nmeros naturalesy viceversa.Definicin 1.30 Definimos un alfabeto E, como un conjunto finito de objetosllamados smbolos.Normalmente utilizaremos como smbolos de alfabetos las letras a, 6, c , . . . losdgitos 0,1,2,... 9 y algn smbolo especial como $ o #. Cuando sea necesarioutilizar un alfabeto con nmero n indefinido de smbolos, utilizaremos los smbolos1,^2, ian-Definicin 1.31 Denominaremos cadena o palabra a una n-tupla de smbolos deE.En lugar de escribir (x\, #2, , xn) escribiremos simplemente x\x^ ... xn. Lalongitud de la palabra u = x\x, x,y,z y las letras griegas a, /3,7,...para denotar palabras.A diferencia de los conjuntos, no distinguiremos el smbolo a G S de la cadenade longitud 1 formada por ese smbolo.Definicin 1.32 Si u,v son dos cadenas del alfabeto S, denominamos concatenacinde u y v a la cadena de S formada por colocar la cadena v a continuacinde u, y denominamos a esta cadena u v o, simplemente, uv.Ejemplo 1.17Si S = {a, 6, c}, u aabb y v = cbc, entoncesuv = aabbcbc y vu = cbcaabb.Para cualquier u se cumple que