Articulo de referencia

Reescritura regulada

La reescritura regulada es un área específica de las lenguas formales que estudia los sistemas gramaticales capaces de ejercer cierto control sobre la producción aplicada en un ...

La reescritura regulada es un área específica de las lenguas formales que estudia los sistemas gramaticales capaces de ejercer cierto control sobre la producción aplicada en un paso de derivación. Por esta razón, los sistemas gramaticales estudiados en la teoría de la reescritura regulada también se denominan "gramáticas con derivaciones controladas". Entre dichas gramáticas se pueden observar:

Gramáticas matriciales

Conceptos básicos

Definición de una gramática matricial,METROGRAMO{\displaystyle MG}, es una cuádruplaGRAMO=(norte,T,METRO,S){\displaystyle G=(N,T,M,S)}donde 1.-norte{\displaystyle N}es un alfabeto de símbolos no terminales 2.-T{\displaystyle T}es un alfabeto de símbolos terminales disjuntos connorte{\displaystyle N} 3.-METRO=metro1,metro2,...,metronorte{\displaystyle M={m_{1},m_{2},...,m_{n}}}es un conjunto finito de matrices, que son secuencias no vacías metroi=[pagi1,...,pagik(i)]{\displaystyle m_{i}=[p_{i_{1}},...,p_{i_{k(i)}}]}, conk(i)1{\displaystyle k(i)\geq 1}, y 1inorte{\displaystyle 1\leq i\leq n}, donde cada pagij1jk(i){\displaystyle p_{i_{j}}1\leq j\leq k(i)}es un par ordenado pagij=(L,R){\ Displaystyle p_ {i_ {j}} = (L, R)} ser L(norteT)norte(norteT),R(norteT){\displaystyle L\in (N\cup T)^{*}N(N\cup T)^{*},R\in (N\cup T)^{*}} Estos pares se denominan "producciones" y se denotan LR{\displaystyle L\rightarrow R}En estas condiciones, las matrices se pueden escribir como metroi=[Li1Ri1,...,Lik(i)Rik(i)]{\displaystyle m_{i}=[L_{i_{1}}\rightarrow R_{i_{1}},...,L_{i_{k(i)}}\rightarrow R_{i_{k(i)}}]} 4.- La S es el símbolo de inicio

Definición DejemosMETROGRAMO=(norte,T,METRO,S){\displaystyle MG=(N,T,M,S)}sea ​​una gramática matricial y deje quePAG{\displaystyle P} la colección de todas las producciones en matrices deMETROGRAMO{\displaystyle MG}. Dijimos queMETROGRAMO{\displaystyle MG}es de tipoi{\displaystyle i}según la jerarquía de Chomsky coni=0,1,2,3{\displaystyle i=0,1,2,3}o "longitud creciente" o "lineal" o "sinλ{\displaystyle \lambda }-producciones" si y solo si la gramáticaGRAMO=(norte,T,PAG,S){\displaystyle G=(N,T,P,S)}tiene la propiedad correspondiente.

El ejemplo clásico

Nota: tomado de Abraham 1965, con cambio de nombres de no terminales.

El lenguaje sensible al contexto L(GRAMO)={anortebnortedonorte:norte1}{\displaystyle L(G)=\{a^{n}b^{n}c^{n}:n\geq 1\}} es generado por eldoFMETROGRAMO{\displaystyle CFMG}GRAMO=(norte,T,METRO,S){\displaystyle G=(N,T,M,S)}dónde norte={S,A,B,do}{\displaystyle N=\{S,A,B,C\}}es el conjunto no terminal, T={a,b,do}{\displaystyle T=\{a,b,c\}}es el conjunto terminal, y el conjunto de matrices se define como METRO:{\displaystyle M:}[Sabdo]{\displaystyle \left[S\rightarrow abc\right]}, [SaAbBdodo]{\displaystyle \left[S\rightarrow aAbBcC\right]}, [AaA,BbB,dododo]{\displaystyle \left[A\rightarrow aA,B\rightarrow bB,C\rightarrow cC\right]}, [Aa,Bb,dodo]{\displaystyle \left[A\rightarrow a,B\rightarrow b,C\rightarrow c\right]}.

Gramáticas con variación temporal

Conceptos básicos Definición Una gramática variable en el tiempo es un par(GRAMO,v){\displaystyle (G,v)}dónde GRAMO=(norte,T,PAG,S){\displaystyle G=(N,T,P,S)} es una gramática yv:norte2PAG{\displaystyle v:\mathbb {N} \rightarrow 2^{P}}es una función del conjunto de números naturales a la clase de subconjuntos del conjunto de producciones.

Gramáticas programadas

Conceptos básicos

Definición

Una gramática programada es un par(GRAMO,s){\displaystyle (G,s)}dónde GRAMO=(norte,T,PAG,S){\displaystyle G=(N,T,P,S)} es una gramática ys,F:PAG2PAG{\displaystyle s,f:P\rightarrow 2^{P}}son las funciones de éxito y fracaso del conjunto de producciones a la clase de subconjuntos del conjunto de producciones.

Gramáticas con lenguaje de control regular

Conceptos básicos

Definición Una gramática con lenguaje de control regular , GRAMOWRdoL{\displaystyle GWRCL}, es un par(GRAMO,mi){\displaystyle (G,e)}dónde GRAMO=(norte,T,PAG,S){\displaystyle G=(N,T,P,S)} es una gramática ymi{\displaystyle e}es una expresión regular sobre el alfabeto del conjunto de producciones.

Un ejemplo ingenuo

Consideremos el CFG GRAMO=(norte,T,PAG,S){\displaystyle G=(N,T,P,S)}dónde norte={S,A,B,do}{\displaystyle N=\{S,A,B,C\}}es el conjunto no terminal, T={a,b,do}{\displaystyle T=\{a,b,c\}}es el conjunto terminal, y el conjunto de producciones se define como PAG={pag0,pag1,pag2,pag3,pag4,pag5,pag6}{\displaystyle P=\{p_{0},p_{1},p_{2},p_{3},p_{4},p_{5},p_{6}\}} ser pag0=SABdo{\displaystyle p_{0}=S\rightarrow ABC}pag1=AaA{\displaystyle p_{1}=A\rightarrow aA}, pag2=BbB{\displaystyle p_{2}=B\rightarrow bB}, pag3=dododo{\displaystyle p_{3}=C\rightarrow cC}pag4=Aa{\displaystyle p_{4}=A\rightarrow a}, pag5=Bb{\displaystyle p_{5}=B\rightarrow b}, y pag6=dodo{\displaystyle p_{6}=C\rightarrow c}. Claramente, L(GRAMO)={abdo}{\displaystyle L(G)=\{a^{*}b^{*}c^{*}\}}Ahora bien, considerando las producciones establecidas PAG{\displaystyle P}como un alfabeto (ya que es un conjunto finito), defina la expresión regular sobrePAG{\displaystyle P}: mi=pag0(pag1pag2pag3)(pag4pag5pag6){\displaystyle e=p_{0}(p_{1}p_{2}p_{3})^{*}(p_{4}p_{5}p_{6})}.

Combinando la gramática CFGGRAMO{\displaystyle G}y la expresión regular mi{\displaystyle e}, obtenemos el CFGWRCL (GRAMO,mi)=(GRAMO,pag0(pag1pag2pag3)(pag4pag5pag6)){\ Displaystyle (G, e) = (G, p_ {0} (p_ {1} p_ {2} p_ {3}) ^ {*} (p_ {4} p_ {5} p_ {6}}}} que genera el lenguaje L(GRAMO)={anortebnortedonorte:norte1}{\displaystyle L(G)=\{a^{n}b^{n}c^{n}:n\geq 1\}}.

Además de que existen otras gramáticas con reescritura regulada, las cuatro citadas anteriormente son buenos ejemplos de cómo extender las gramáticas libres de contexto con algún tipo de mecanismo de control para obtener un dispositivo gramatical potente, similar a una máquina de Turing .

Referencias

  • Salomaa, Arto (1973) Lenguajes formales . Academic Press, serie de monografías de la ACM.
  • Rozenberg, G.; Salomaa, A. (eds.) 1997, Manual de lenguajes formales . Berlín; Nueva York  : Springer ISBN 3-540-61486-9(conjunto) (3540604200  : v. 1; 3540606483  : v. 2; 3540606491: v. 3)
  • Dassow, Jürgen; Paun, G. 1990, Reescritura regulada en la teoría del lenguaje formal ISBN 0387514147Springer-Verlag New York, Inc. Secaucus, Nueva Jersey , EE. UU., Páginas: 308. Formato: Tapa dura.
  • Dassow, Jürgen, Gramáticas con reescritura regulada . Conferencia en el 5º Programa de Doctorado "Lenguas Formales y Aplicaciones", Tarragona, España, 2006.
  • Abraham, S. 1965. Algunas cuestiones de teoría del lenguaje , Actas de la Conferencia Internacional de Lingüística Computacional de 1965 , págs.  1–11, Bonn, Alemania,