|
![]() TEMA 3.- GRAMÁTICAS REGULARES: |
||||||||||||||||||||||||||||||||||||||
![]() |
1.-DEFINICIÓN |
|
|
||||||||||||||||||||||||||||||||||||
![]()
|
DEFINICIÓN
Como toda gramática está formada por la cuadrupla (V,T,P,S); diremos que es una gramática regular si sus reglas de producción P son de la siguiente forma:
A→ uB o A→ u
En este caso se llama Gramática Regular Lineal por la derecha, ya que el símbolo no terminal del consecuente (parte derecha de la flecha) es el más a la derecha de los símbolos.
O bien: A Bu o A u se llama Gramática Regular Lineal por la izquierda porque el símbolo más a la izquierda del consecuente es el símbolo no terminal.
A→ 10A
A→ε
S→0
Si L
es un lenguaje generado por una gramática regular , entonces existe
un autómata
determinístico que lo reconoce.
Por tanto, existe equivalencia ente la gramática
regular y el autómata finito determinístico.
ALGORITMO
que muestra la relación entre una Gramática
Regular por la Derecha y el AFND
con TN.
q0=[S]
F={[ε]}
2.- Las transiciones d vienen definidas por :
2.- Construyo AFND CON TN asociado a G` siguiendo el algoritmo anterior.
3.- Invertimos el autómata obteniendo el autómata que acepte el L(G) para ello: invertimos las transiciones e intercambiamos el estado inicial y el final.
S→S10
S→0
Para construir un AFND CON TN seguimos los siguientes pasos: