Regulated rewriting

Regulated rewriting is a specific area of formal languages studying grammatical systems which are able to take some kind of control over the production applied in a derivation step. For this reason, the grammatical systems studied in Regulated Rewriting theory are also called "Grammars with Controlled Derivations". Among such grammars can be noticed:

Matrix Grammars

Basic concepts

Definition
A Matrix Grammar, M G {\displaystyle MG} , is a four-tuple G = ( N , T , M , S ) {\displaystyle G=(N,T,M,S)} where
1.- N {\displaystyle N} is an alphabet of non-terminal symbols
2.- T {\displaystyle T} is an alphabet of terminal symbols disjoint with N {\displaystyle N}
3.- M = m 1 , m 2 , . . . , m n {\displaystyle M={m_{1},m_{2},...,m_{n}}} is a finite set of matrices, which are non-empty sequences m i = [ p i 1 , . . . , p i k ( i ) ] {\displaystyle m_{i}=[p_{i_{1}},...,p_{i_{k(i)}}]} , with k ( i ) 1 {\displaystyle k(i)\geq 1} , and 1 i n {\displaystyle 1\leq i\leq n} , where each p i j 1 j k ( i ) {\displaystyle p_{i_{j}}1\leq j\leq k(i)} , is an ordered pair p i j = ( L , R ) {\displaystyle p_{i_{j}}=(L,R)} being L ( N T ) N ( N T ) , R ( N T ) {\displaystyle L\in (N\cup T)^{*}N(N\cup T)^{*},R\in (N\cup T)^{*}} these pairs are called "productions", and are denoted L R {\displaystyle L\rightarrow R} . In these conditions the matrices can be written down as m i = [ L i 1 R i 1 , . . . , L i k ( i ) R i k ( i ) ] {\displaystyle m_{i}=[L_{i_{1}}\rightarrow R_{i_{1}},...,L_{i_{k(i)}}\rightarrow R_{i_{k(i)}}]}
4.- S is the start symbol

Definition
Let M G = ( N , T , M , S ) {\displaystyle MG=(N,T,M,S)} be a matrix grammar and let P {\displaystyle P} the collection of all productions on matrices of M G {\displaystyle MG} . We said that M G {\displaystyle MG} is of type i {\displaystyle i} according to Chomsky's hierarchy with i = 0 , 1 , 2 , 3 {\displaystyle i=0,1,2,3} , or "increasing length" or "linear" or "without λ {\displaystyle \lambda } -productions" if and only if the grammar G = ( N , T , P , S ) {\displaystyle G=(N,T,P,S)} has the corresponding property.

The classic example

Note: taken from Abraham 1965, with change of nonterminals names

The context-sensitive language L ( G ) = { a n b n c n : n 1 } {\displaystyle L(G)=\{a^{n}b^{n}c^{n}:n\geq 1\}} is generated by the C F M G {\displaystyle CFMG} G = ( N , T , M , S ) {\displaystyle G=(N,T,M,S)} where N = { S , A , B , C } {\displaystyle N=\{S,A,B,C\}} is the non-terminal set, T = { a , b , c } {\displaystyle T=\{a,b,c\}} is the terminal set, and the set of matrices is defined as M : {\displaystyle M:} [ S a b c ] {\displaystyle \left[S\rightarrow abc\right]} , [ S a A b B c C ] {\displaystyle \left[S\rightarrow aAbBcC\right]} , [ A a A , B b B , C c C ] {\displaystyle \left[A\rightarrow aA,B\rightarrow bB,C\rightarrow cC\right]} , [ A a , B b , C c ] {\displaystyle \left[A\rightarrow a,B\rightarrow b,C\rightarrow c\right]} .

Time Variant Grammars

Basic concepts
Definition
A Time Variant Grammar is a pair ( G , v ) {\displaystyle (G,v)} where G = ( N , T , P , S ) {\displaystyle G=(N,T,P,S)} is a grammar and v : N 2 P {\displaystyle v:\mathbb {N} \rightarrow 2^{P}} is a function from the set of natural numbers to the class of subsets of the set of productions.

Programmed Grammars

Basic concepts

Definition

A Programmed Grammar is a pair ( G , s ) {\displaystyle (G,s)} where G = ( N , T , P , S ) {\displaystyle G=(N,T,P,S)} is a grammar and s , f : P 2 P {\displaystyle s,f:P\rightarrow 2^{P}} are the success and fail functions from the set of productions to the class of subsets of the set of productions.

Grammars with regular control language

Basic concepts

Definition
A Grammar With Regular Control Language, G W R C L {\displaystyle GWRCL} , is a pair ( G , e ) {\displaystyle (G,e)} where G = ( N , T , P , S ) {\displaystyle G=(N,T,P,S)} is a grammar and e {\displaystyle e} is a regular expression over the alphabet of the set of productions.

A naive example

Consider the CFG G = ( N , T , P , S ) {\displaystyle G=(N,T,P,S)} where N = { S , A , B , C } {\displaystyle N=\{S,A,B,C\}} is the non-terminal set, T = { a , b , c } {\displaystyle T=\{a,b,c\}} is the terminal set, and the productions set is defined as P = { p 0 , p 1 , p 2 , p 3 , p 4 , p 5 , p 6 } {\displaystyle P=\{p_{0},p_{1},p_{2},p_{3},p_{4},p_{5},p_{6}\}} being p 0 = S A B C {\displaystyle p_{0}=S\rightarrow ABC} p 1 = A a A {\displaystyle p_{1}=A\rightarrow aA} , p 2 = B b B {\displaystyle p_{2}=B\rightarrow bB} , p 3 = C c C {\displaystyle p_{3}=C\rightarrow cC} p 4 = A a {\displaystyle p_{4}=A\rightarrow a} , p 5 = B b {\displaystyle p_{5}=B\rightarrow b} , and p 6 = C c {\displaystyle p_{6}=C\rightarrow c} . Clearly, L ( G ) = { a b c } {\displaystyle L(G)=\{a^{*}b^{*}c^{*}\}} . Now, considering the productions set P {\displaystyle P} as an alphabet (since it is a finite set), define the regular expression over P {\displaystyle P} : e = p 0 ( p 1 p 2 p 3 ) ( p 4 p 5 p 6 ) {\displaystyle e=p_{0}(p_{1}p_{2}p_{3})^{*}(p_{4}p_{5}p_{6})} .

Combining the CFG grammar G {\displaystyle G} and the regular expression e {\displaystyle e} , we obtain the CFGWRCL ( G , e ) = ( G , p 0 ( p 1 p 2 p 3 ) ( p 4 p 5 p 6 ) ) {\displaystyle (G,e)=(G,p_{0}(p_{1}p_{2}p_{3})^{*}(p_{4}p_{5}p_{6}))} which generates the language L ( G ) = { a n b n c n : n 1 } {\displaystyle L(G)=\{a^{n}b^{n}c^{n}:n\geq 1\}} .

Besides there are other grammars with regulated rewriting, the four cited above are good examples of how to extend context-free grammars with some kind of control mechanism to obtain a Turing machine powerful grammatical device.

References

  • Salomaa, Arto (1973) Formal languages. Academic Press, ACM monograph series
  • Rozenberg, G.; Salomaa, A. (eds.) 1997, Handbook of formal languages. Berlin; New York : Springer ISBN 3-540-61486-9 (set) (3540604200 : v. 1; 3540606483 : v. 2; 3540606491: v. 3)
  • Dassow, Jürgen; Paun, G. 1990, Regulated Rewriting in Formal Language Theory ISBN 0387514147. Springer-Verlag New York, Inc. Secaucus, New Jersey, USA, Pages: 308. Medium: Hardcover.
  • Dassow, Jürgen, Grammars with Regulated Rewriting. Lecture in the 5th PhD Program "Formal Languages and Applications", Tarragona, Spain, 2006.
  • Abraham, S. 1965. Some questions of language theory, Proceedings of the 1965 International Conference On Computational Linguistics, pp. 1–11, Bonn, Germany,