Problem As

download Problem As

of 106

  • date post

    02-Oct-2014
  • Category

    Documents

  • view

    59
  • download

    2

Embed Size (px)

Transcript of Problem As

EJERCICIOS RESUELTOS DE LENGUAJES, GRAMATICAS Y AUT OMATAS(16-11-2010)11. Encuentra el AFD mnimo que reconoce el lenguaje representadopor la ER (00 + 101 +)(1 + 00)Para obtener el AFD mnimo correspondiente a (00+101+)(1+00)tenemos que obtener primero un AFI, despu es un AFD y por ultimose realiza la minimizaci on.Un posible AFI para la anterior expresi on regular sera:7651004310 01102La obtenci on del AFD correspondiente al anterior AFI se obtiene dela siguiente manera:q6100q2q3q100110 q1 {2, 6} = q2 {3, 7} = q3 q2 {1, 4, 5, 7} = q4 q3 {3} = q5 {1, 4, 5} = q6 q4 {2, 6} = q2 {3,7} = q3 q5 {3} = q5 q6q6 {2, 6} = q2 q3C (1) = {1, 5} = q10 1q4q51101c 2009 Universidad de Alicante. Este material puede ser distribuido, copiado y ex-hibido si el nombre de los autores (Luisa Mic o, Mikel Forcada y Jorge Calera) se muestraen los cr editos. No se puede obtener ning un benecio comercial. Las obras derivadashan de distribuirse con los mismos t erminos de licencia que el trabajo original. M asdetalles: http://creativecommons.org/licenses/by-nc-sa/2.5/deed.ca Puedes pedir losfuentes LaTeX a Maria Luisa Mic o (mico@dlsi.ua.es)1Por ultimo la minimizaci on es:100q2q3q10010q4q511 2 5 6 3 40 1 2 1 1 1 11 2 1 2 1 21 21 6 2 3 4 50 2 2 4 5 2 51 3 3 1 3 1 1 2 3 4 5 110, 1q62. Una m aquina de Mealy produce como salida el m odulo 3 del n umerode 1s ledos hasta el momento de una cadena binaria de entrada.Obtener el AFD que acepta las cadenas binarias que producen unasalida del traductor anterior que contiene dos 2s consecutivos.La m aquina de Mealy y el AFD son los siguientes, en ultimo lugaraparece la composici on.AC0/20, 1BCA1/01/10/1BC CC1/20/01 10, 10, 1, 2La composicin nos da como resultado:BA0CB AA1 110B CA2 200 0013. Dada la gram atica GS AbS | BC | cA SC | a2B BB | b | C c | D E | aDE DD | cFF fencuentra una gram atica enforma normal de Greibach para el lengua-je L(G) {}.Para obtener la forma normal de Greibach debemos simplicar y eli-minar la recursi on por la izquierda de la gram atica.1) Eliminaci on de producciones vacas:S AbS|bS|b|Ab|BC|B|C|cA SC|C|S|aB BB|B|bC cD E|aDE DD|cFF f2) Eliminaci on de producciones unitarias:S AbS|bS|b|Ab|BC|BB|cA SC|AbS|bS|b|Ab|BC|BB|c|aB BB|bC cD DD|cF|aDE DD|cFF f3) Eliminaci on de smbolos in utiles:S AbS|bS|b|Ab|BC|BB|cA SC|AbS|bS|b|Ab|BC|BB|c|aB BB|bC cCon la gram atica simplicada vamos a eliminar la recursi on por laizquierda:Si tomamos: S = A1, A = A2, B = A3, C = A43A1 A2bA1|bA1|b|A2b|A3A4|A3A3|cA2 A1A4|A2bA1|bA1|b|A2b|A3A4|A3A3|c|aA3 A3A3|bA4 cS olo es necesario eliminar la recursi on a A2 y A3:A2 bA1A4|bA4|A3A4A4|A3A3A4|cA4|c|bA1|b|A3A4|A3A3|a|bA1A4B||bA4B|A3A4A4B|A3A3A4B|cA4B|cB|bA1B|bB|A3A4B|A3A3B|aBB bA1A4|bA4|bA1|b|bA1A4B|bA4B|bA1B|bBA3 b|bCC A3|A3CLas unicas reglas de derivaci on que ya est an en FNG son las corre-spondientes a A3, By A4. Haciendo las sustituciones en A2 y C, ypor ultimo en A1, tendremos la gram atica en FNG.4. Dada la gram atica A AaA | aa) Describe el lenguaje que genera.b) Comprueba que la gram atica es ambigua.c) Si el lenguaje generado no es intr nsecamente ambiguo, en-cuentra una gram atica no ambigua para el. En otro caso de-muestra que lo es.d) Encuentra una gram atica equivalente que no tenga recursi onpor la derecha.a) El lenguaje generado es el de las cadenas de as de longitud im-par.b) La gram atica es ambigua porque, por ejemplo, para la cadenaaaaaa se pueden obtener dos arboles de derivaci on diferentes.c) Una gram atica no ambigua sera: A aaA|ad) Si nos encontramos la siguiente regla: A A| la sustituire-mos por:A |B y B |B.En nuestro caso nos quedar a: A a|Ba y B Aa|BAa.Otra gram atica no ambigua sera: A Aaa|a, que no tiene re-cursi on por la derecha, y por lo tanto no hay que hacer nada eneste apartado.45. Dado un lenguaje L, denimos el lenguaje Impar(L) = { L :|| es impar}. Demuestra que si L es regular entonces Impar(L) tam-bi en lo es. Explica el procedimiento aplic andolo al aut omata de lagura.0011Se trata de obtener la intersecci on del aut omata dado en el enunciadocon el aut omata que acepta todas las cadenas de longitud impar.00110,10,1La interseccin nos da:01 1 1A B A B0 001AA BBAB BA6. Encuentra el AFD mnimo que reconoce el lenguaje representadopor la ER ((ab+a)a)(aa +)Para obtener el AFD mnimo correspondiente a ((ab+a)a)(aa+)tenemos que obtener primero un AFI, despu es un AFD y por ultimose realiza la minimizaci on. Si tenemos en cuenta algunas propiedadesde las expresiones regulares, esta expresi on se puede simplicar yobtener otra m as sencilla que es equivalente: (ab)(aa +)Un posible AFI para la anterior expresi on regular sera:51 4 5 62 3baa a La obtenci on del AFD correspondiente al anterior AFI se obtiene dela siguiente manera:Q1 = C({1}) = {1, 2, 4, 6}a(Q1) = C({3, 5}) = {1, 2, 3, 4, 5, 6}b(Q1) = a(Q2) = C({3, 5, 6}) = Q2b(Q2) = C({3}) = {1, 2, 3, 4, 6} = Q3a(Q3) = C({3, 5}) = Q2b(Q3) = C({3}) = Q3baabbaa, b1234Por ultimo la minimizaci on es:G1 G21 2 3 4a G1 G1 G1 G2b G2 G1 G1 G2creamos una nueva partici on:G1 G2 G31 2 3 4a G2 G2 G2 G3b G3 G2 G2 G3baa, ba, b1237. Dada la gram atica GS aAa | bBb | A C | aB C | bC CDE | CD | D A | B | abE dEencuentra una gram atica en forma normal de Chomsky para ellenguaje L(G) {}.6Para obtener la forma normal de Chomsky debemos simplicar primerola gram atica:S aAa|bBb|A C|aB C|bC CDE|CD|D A|B|abE dE claramente esta regla se puede eliminar ya ...1) Eliminaci on de producciones vacas:V = {S, C, A, B, D}S aAa|aa|bBb|bbA C|aB C|bC CD|C|DD A|B|ab2) Eliminaci on de producciones unitarias:S aAa|aa|bBb|bbA a|CD|ab|bB a|CD|ab|bC a|CD|ab|bD a|CD|ab|b3) Eliminaci on de smbolos in utiles:No hayForma normal de Chomsky:S ZaZa|ZaYAa|ZbZb|ZbYBbA a|CD|ZaZb|bB a|CD|ZaZb|bC a|CD|ZaZb|bD a|CD|ZaZb|bZa aZb bYAa AZaYBb BZb78. Encuentra una expresi on regular para el lenguaje reconocido porel aut omata:aa13b abb24r1 = r2 +r2 = ar4 +br3r3 = ar2 +br4 +r1r4 = ar3 +br2r2 = aar3 +abr2 +br3 = (aa +b)r3 +abr2r3 = ar2 +bar3 +bbr2 +r2 + = (a +bb +)r2 +bar3 +r3 = (ba)(a +bb +)r2 + (ba)r2 = (aa +b)(ba)(a +bb +)r2 + (aa +b)(ba)+abr2 =[(aa +b)(ba)(a +bb +) +ab]r2 + (aa +b)(ba)=[(aa +b)(ba)(a +bb +) +ab](aa +b)(ba)r1 = [(aa +b)(ba)(a +bb +) +ab](aa +b)(ba)+9. Se dice que una gram atica independiente del contexto es lineal porla derecha si cada regla tiene como m aximo una variable, y esa vari-able est a en el extremo derecho. Es decir, todas las produccionesde una gram atica lineal por la derecha son de la forma A Bo A , donde A y B son variables, y una cadena de cero om as smbolos terminales. Demostrar que toda gram atica lineal porla derecha genera un lenguaje regular. Aplicar el razonamiento alsiguiente ejemplo:A abB | aB aaB | a8aabaZA Ba aM etodo:por cada variable se dibuja un estadoun s olo estado de aceptaci onpor cada regla de la forma A a1. . . anB una lista de estadosde la formaa aA B. . .1npor cada regla de la forma A a una transici onaA10. Dados dos lenguajes regulares L1 y L2 sobre el mismo alfabeto, describe un m etodo que permita decidir si existe una cadenaperteneciente a que no pertenezca a L1 ni a L2.Si x / L1 x / L2 x / L1 L2 x L1 L2 x L1 L2Existir a alguna cadena en que no pertenezca a L1 ni a L2 si ellenguaje L1 L2 es no vaco.Un lenguaje es no vaco si el smbolo inicial es util. Si existe uncamino desde el estado inicial a uno de aceptaci on el lenguaje ser a novaco.11. Encuentra el AFD mnimo que reconoce el lenguaje representadopor la ER (a +c +bbc)ba +baPara obtener el AFD mnimo correspondiente a (a+c+bbc)ba+baprimero vamos a simplicar la expresi on regular:(a+c +bbc)ba+ba = ((a+c +bbc)+)ba) = (a+c +bbc)ba =(a +bc)ba9tenemos que obtener primero un AFI, despu es un AFD y por ultimose realiza la minimizaci on.Un posible AFI para la anterior expresi on regular sera:5 4231cbaabEl AFD correspondiente a este AFI se obtiene de la siguiente manera:q6q2q3q1C (1) = {1, 3, 4} = q1a b cq4q5 abcabcbacabca, b, cq1q2q3q4q5{1,2,3,4,5} = q2q2{5} = q5q2{3,4} = 13q3q3q3{1,2,3,4} = q4q4q4q4Por ultimo la minimizaci on es:1 3 4 6 2 5a 2 2 2 1 2 1b 1 1 1 1 1 1c 1 1 1 1 1 11 21 3 4 2 5 6a 2 3 2 2 4 4b 1 1 1 1 4 4c 1 1 1 1 4 4 1 2 3 4 1 4 3 2 5 6a 3 3 4 3 5 5b 2 2 2 2 5 5c 1 1 1 1 5 5 1 2 3 4 5 q2q3 q1q4q5abcabba a, b, ccca, b, c12. Dada la gram aticaS AACD | BCD | aBA aAb | B bB | ABa10C aC |aD aDa |bDb |encuentra una gram atica equivalente en forma normal de Chom-sky.Para obtener la forma normal de Chomsky debemos simplicar primerola gram atica.1) Eliminaci on de producciones vacas:S AACD|ACD|CD|AAC|AC|C|BCD|BC|aBA aAb|abB bB|ABa|BaC aC|aD aDa|aa|bDb|bb2) Eliminaci on de producciones unitarias:S AACD|ACD|CD|AAC|AC|aC|a|BCD|BC|aBA aAb|abB bB|ABa|BaC aC|aD aDa|aa|bDb|bb3) Eliminaci on de smbolos in utiles:S AACD|ACD|CD|AAC|AC|aC|aA aAb|abC aC|aD aDa|aa|bDb|bb4) Como la gram atica ya est a simplicada, la pasamos a forma nor-mal de Chomsky:S AYACD|AYCD|CD|AY