automata push down - lenguajes regulares

Post on 08-Nov-2014

56 Views

Category:

Documents

5 Downloads

Preview:

Click to see full reader

TRANSCRIPT

ESCUELA POLITÉCNICA NACIONALFUNDAMENTOS DE CIENCIAS DE LA

COMPUTACIÓN

INTEGRANTES

CISNEROS EVELYN LÓPEZ BYRON MOREANO ANITA

LENGUAJES REGULARES

LENGUAJE REGULAR

Es un tipo de lenguaje formal( lenguaje cuyos símbolos primitivos y sus reglas están formalmente especificados)

que satisface las siguientes PROPIEDADES:

Los LENGUAJES RGULARES son lenguajes mas sencillos porque se generan a partir de lenguajes básicos con la aplicación de:

Unión (A U B)Concatenación(A . B)estrella de Kleene ( A*)

Puede ser reconocido por:un autómata finito deterministaun autómata finito no deterministaUn autómata de pila un autómata finito alternoUna máquina de Turing de solo lectura

Es generado por:Una gramática regular una gramática de prefijos

Es descrito por:Una expresión regular

Lenguajes regulares sobre un alfabeto

Expresiones Regulares (ER)

Autómatas Finitos (AF)

Expresiones Regulares

REPRESENTAN lenguajes regulares y su propósito es simplificar la escritura de los mismos.

Definición recursiva sobre un alfabeto ∑ dado.

Expresiones regulares básicas:

Si R y S son expresiones regulares sobre alfabeto ∑, también lo son:

Concatenar (RS).- unir dos o más cadenas, es decir unir dos o más palabras(cadenas de letras). Generalmente se unen con un símbolo "+".

Ejemplo: nombre + apellido:Dónde el valor del nombre = María yel valor de apellido = PérezConcatena el valor del nombre con el apellido.

Estrella de Kleene

Ejemplo aplicada a un carácter:

{"a"}* = {ε, "a", "aa", "aaa", "aaaa", "aaaaa", "aaaaaa",...}

Ejemplo aplicada a un conjunto de cadenas:

{"ab", "c"}* = {ε, "ab", "c", "abab", "abc", "cab", "cc", "ababab", "ababc", "abcab", "abcc", "cabab", "cabc", "ccab", "ccc",...}

Ejemplo aplicada a un conjunto de caracteres: {'a', 'b', 'c'}* = {ε, "a", "b", "c", "aa", "ab", "ac", "ba", "bb", "bc",...}

Autómatas finitos

Un autómata finito (AF) o máquina de estado finito es un modelo computacional que realiza cómputos en forma automática sobre una entrada para producir una salida.

La finalidad de los autómatas finitos es la de reconocer lenguajes regulares.

Definición formal

Los Autómatas Finitos (AF) son de dos tipos:

Deterministas (AFD):

No Deterministas (AFND):

Deterministas (AFD)Para cada estado en que se encuentre el autómata, y con cualquier símbolo del alfabeto leído, existe siempre a lo más una transición posible desde ese estado y con ese símbolo.

Se representa mediante:Diagramas de transición Tablas de transición

No Deterministas (AFND):A diferencia de los autómatas finitos deterministas (AFD), posee al menos un estado q ∈Q, tal que para un símbolo a  Σ del alfabeto, existe más de una ∈transición δ(q,a) posible.

top related