AUTOMATAS 1.pdf

15
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA Autómatas y Lenguajes formales Grupo:301405A_220 Trabajo Colaborativo Momento 1 Presentado por: CARLOS SAVEDRA Presentado a : Tutora: ÁngelaSOLER Escuela De Ciencias Básicas e Ingeniería (Ingeniería en Sistemas) 10 de marzo de 2015

Transcript of AUTOMATAS 1.pdf

  • UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA

    Autmatas y Lenguajes formales

    Grupo:301405A_220

    Trabajo Colaborativo Momento 1

    Presentado por:

    CARLOS SAVEDRA

    Presentado a :

    Tutora: ngelaSOLER

    Escuela De Ciencias Bsicas e Ingeniera (Ingeniera en Sistemas)

    10 de marzo de 2015

  • Trabajo Colaborativo Momento 1

    Ejercicio.

    Dado el siguiente Autmata M Finito :M =(K, , q0, , F) donde:

    K = {q0, q1, q2, q3, q4, } = {a,b,c} El estado Inicial = q0 F = q3, q4

    donde la funcin de transicin est dada por: : {q0, q1, q2, q3, q4 } {a,b,c}

    {q0, q1, q2, q3, q4 } q0 {q3, q4,}

    (q0, a ) = q1 (q0, ) = q2 (q1, b ) = q3 (q2 , a ) = q4 (q3, a ) = q1 (q3, c ) = q2 (q4, b ) = q2 1. Plasme la tabla de transicin. Identifique que tipo de autmata es (AFD o AFND) y justifique su respuesta. (No se trata de dar el concepto de determinismo) Desarrollo:

    TABLA DE TRANSICION

    a b c

    q0 q1 q2

    q1 q3

    q2 q4

    #q3 q1 q2

    #q4 q2

    Nota: el smbolo denota el estado inicial del autmata

    El smbolo # denota los estados finales del autmata

  • IMAGEN DE LA TABLA DE TRANSICION GENERADA POR EL

    SIMULADOR

    VISUAL AUTOMATA SIMULATOR (Esta tabla solo puede ser generada por

    este simulador)

    Por medio del estudio de los recursos que se nos han dado puedo decir

    que este es un Autmata Finito Determinantico (AFD) ya que este autmata

    tiene una sola ruta es decir se puede determinar cules son sus cadenas

    validas mostrndonos que el comportamiento de este autmata es determinado

    ya que sus estados no tienen ambigedad es decir en su estado inicial (q0)

    solo se determina una interaccin y en sus estados no se repite la salida de un

    mismo smbolo.

    2. Identifique los elementos (tupla que es) (Asociadas con los elementos del autmata del ejercicio propuesto). Debe explicar y describir cada elemento y la funcin y significado en el autmata. Conceptos y definiciones adicionales.

  • Este autmata es un quntuplo ya que contiene 5 elementos y sus

    caractersticas son las siguientes las cuales pude identificar desmenuzando

    el ejercicio es decir tome el ejercicio por partes para poder entenderlo mejor.

    M = (K, , q0, , F)

    K= Es el conjunto de estados que posee el autmata.

    = (Sigma) Es el alfabeto de entrada

    q0 = Al estado inicial del autmata

    =(sigma) Denota una funcin

    F=Estado final del autmata

    En el desarrollo de este autmata tuve que determinar varias cosas como lo

    son:

    Identifique los estados del autmata K = {q0, q1, q2, q3, q4}

    Identifique el alfabeto de entrada = {a, b,c}

    Identifique el estado inicial del autmata el cual es = q0

    Identifique la funcin= : {q0, q1, q2, q3, q4 } {a,b,c} {q0, q1, q2, q3, q4 }

    q0 {q3, q4,}

    Identifique los estados finales del autmata F= q3, q4

    3. Identifique el lenguaje que genera. L= { {a, b, c}* Esto quiere decir que el conjunto de cadenas que empiezan por a y que terminan en b o en a deven unas caractersticas ; ara cadenas que terminan en b estas deven estar precedidas por a , para cadenas que terminan en a es necesario que estn precedidas por c por b o a. 4. Muestre en el simulador (grficamente) como recorre una cadena vlida. Explique cada secuencia. (No se trata solo de captura las imgenes, estas deben ser explicadas en pi de pgina o de lo contrario no tienen validez)

  • Para este punto use el simulador JFLAP Versin 7.0 explicare paso a paso

    cmo se recorre una cadena valida por medio de imgenes.

    1 Paso. En imput seleccionamos Multilperun lo seleccionamos y se habrira un

    cuadro en la parte derecha de la pantalla. Llamado tabletextsize en el cual

    pondremos los alfabetos de entrada de cada estado ejemplo de esto es

    (abca)como se ve en el simulador

    Luego que escribimos nuestras alfabetos cadenas (abca)procedemos a

    verificar si es aceptado o no por medio del botn que est en la parte inferior

    derecha llamado run inputs (podemos ver que nuestra cadena es vlida o

    aceptada)

  • Si ponemos una cadena que no es valida se nos mostrara un mensaje en el

    tabletextsize que dirareject

    Para mostrar el recorrido de una cadena valida vamos a input y seleccionamos

    el botn de stepbystate en el cual saldr un cuadro de dialogo en el cual debemos

    anotar nuestra cadena valida la cual es (abca) y luego dar aceptar

  • Al aceptar en el cuadro de dialogo se nos abrir otro cuadro llamado

    simlate: abca en este se nos demostrara el rrecorido que hace nuestra

    cadena valida esto lo hacemos dando click al botn step ubicado en la parte

    inferior izquierda

  • 5 . Muestre el diagrama de Moore generado en JFLAP y en VAS y comente tres similitudes y tres diferencias que encuentra al realizarlo en los dos simuladores. (Herramientas que ofrezca uno u otro). Diagrama de Moore con JFLAP

    Diagrama de Moore conVisual Autmata Simulator

  • Las similitudes que encuentro en cuestin a los dos simuladores son las

    siguientes: la interfaz grafica es muy similar en ambos ,se asimila la

    manera de marcar los estados y las cadenas , ambos se pueden compilar.

    Las direncias que encontr con respecto a los simuladores son en el Visual Autmata Simulator es mas fcil notar los errores ya que al compilar sale un mensaje de texto que marca el error ,en JFLAP se hace la transicin para cada estado Los esquemas son distinto.

    .

    7. Genere tres cadenas vlidas y dos no vlidas

  • Para la primera cadena valida que cree disee un autmata que reconoce cualquier numero de 1 segido de un 0 y un 1. Cadena valida # 1

    Para probar mi autmata damos click en en botn input Mulitiplerun De hay nos va ha desplegar una tabla llamada(test Size) que es en la cual dijitamos nuestra cadena , podemos observar que al dar click en el botn run inputs nos demuestra cuales de las cadenas digitadas son validas o no en mi caso la nica cadena que es aceptada es la (111111111101) Cadenas no validas: Podemos observar que este autmata tambin nos demuestra las cadenas no validas las cuales entran a un estado inconcluso ,en el caso de este autmata un ejemplpo es ingresar los 0 antes de los 1 esto nos genera una cadena no valida y por ende es rechazada por el autmata(reject) Cadena valida # 2

  • Podemos demostrar cuales de las cadenas digitadas son validas o no en este caso las cadenas validas son(aba ,ababababababababababa, aaaaaaaaaaaaabaaaaaaaaaaaaaaaaaa. Cadena validad #3

    Para esta cadena tome comoejemplo la palabra UNAD PODEMOS darnos cuenta que nuestro autmata solo reconoce cuando se toma la cadena UNAD y en el estado final se hace un recorrido por todo el autmata. Cadenas no validas:Podemos observar que este autmata tambin nos demuestra las cadenas no validas las cuales entran a un estado inconcluso ,en el caso de este autmata un ejemplpo es ingresar los la letras UNAD en minisculas o al ingresar las letras no ordenadamente (UNAAAAAAAAA) genera una cadena no valida y por ende es rechasada por el autmata(reject) 8. Plasme las tres cadenas vlidas para cada ER en una tabla (identificando jerarqua de operadores regulares, identificando colores).

    Abrimos la pestaa expresiones regulares

    Ingresamos nuestra expresin regular U*N*A*D(U+N+A+D) enseguida la convertimos en un

    autmata finito no determinista

  • Damos click en Do Step lo cual nos va a generar un equivalente del autmata que estamos

    generando.

  • Al dar click en Do All nos mostrara el autmata finito completo

    Al exportar el autmata se abre automticamente se abre la interfaz de autmatas

    Y queda convertido a expresin regular

  • 9. Identifique en la misma tabla por que las dos cadenas seleccionadas no se aceptan o en qu parte se trunca la jerarqua y orden de los operadores