Gramàtica de concatenació de rang

De testwiki
Salta a la navegació Salta a la cerca

Les gramàtiques de concatenació de rang (RCG per les seves sigles en anglès) és un formalisme de gramàtica desenvolupat per Pierre Boullier el 1998 per intentar caracteritzar uns fenòmens de llenguatges naturals com els números xinesos o l'ordre de les paraules en alemany, que cauen fora dels límits de les gramàtiques lleugerament sensibles al context.[1][2]

Des d'un punt de vista teòric, qualsevol llenguatge que es pot analitzar en un temps polinòmic pertany al subconjunt de les RCG anomenat gramàtiques positives de concatenació de rang i viceversa.[3]

Definició formal

Una gramàtica positiva de concatenació de rang (PRCG) és una tupla G=(N,T,V,S,P), on:

  • N,T i Vson conjunts finits disjunts de predicats nominals, símbols terminals i noms de variables respectivament. Cada predicat nominal té una aritat associada donada per la funció dim:N{0}
  • SNés el predicat nominal inicial i verifica que dim(S)=1
  • P és un conjunt infinit de clàusules de la forma ψ0ψ1ψm on ψison predicats de la forma Ai(α1,,αdim(Ai))on AiNi αi(TV)

Una gramàtica negativa de concatenació de rang (NRCG) es defineix com una positiva amb l'afegit que alguns predicats que apareixen a la part dreta de les clàusules poden ser de la forma Ai(α1,,αdim(Ai)). Aquests predicats s'anomenen predicats negatius.

Una gramàtica de concatenació de rang o bé és positiva o negativa. Es denota l'absència de predicats negatius com PRCG i les que en tenen com NRCG.

Un rang d'una paraula wTés una parella l,rwamb 0lrn, on nés la longitud de w. Dos rangs l1,r1wi l2,r2wes poden concatenar si i només si r1=l2i llavors es te l1,r1wl2,r2w=l1,r2w.

Per una paraula w=w1w2wn amb wiT, la notació de punt per rang és l,rw=w1wl1wlwr1wrwn.

Exemple

Les RCG poden reconèixer el llenguatge indexat no lineal {www:w{a,b}*}com segueix:

Siguin, x,y, i zsímbols variables:

S(xyz)A(x,y,z)

A(ax,ay,az)A(x,y,z)

A(bx,by,bz)A(x,y,z)

A(ϵ,ϵ,ϵ)ϵ

La prova per abbabbabb és:

S(abbabbabb)A(abb,abb,abb)A(bb,bb,bb)A(b,b,b)A(ϵ,ϵ,ϵ)ϵ

o en notació de punt per rangs:S(abbabbabb)A(abbabbabb,abbabbabb,abbabbabb)A(abbabbabb,abbabbabb,abbabbabb)A(abbabbabb,abbabbabb,abbabbabb)A(ϵ,ϵ,ϵ)ϵ

Referències

Plantilla:Referències

Plantilla:Autoritat Plantilla:Llenguatges formals i gramàtiques