20 Şubat 2019 Çarşamba

Context Free Grammar (İçerikten Bağımsız Gramer) - Nedir?

Giriş
Context Free Grammar (CFG) kuralların anlamdan ve içerikten (kuraldan önceki olayları hatırlama gibi düşünülebilir) bağımsız olmasını ifade eder. CFG'de sadece kurala göre değiştirme (substitution) işlemi yapılır ve doğal dillerdeki gibi sözcüğün önündeki ardındaki kısımlara bakılmaz. Sadece söz dizim (syntax) işletilir.

Bir diğer açıklama ise şöyle
All the production rules have a non-terminal (büyük harf) on the left hand side.
Gramer Context Free İse Dil de Context Free Olur
Açıklaması şöyle.
Just to clarify, a language is context-free when it is generated by a context-free grammar. There're SQL context-free grammar definitions online. 
Örnek 1
Şöyle yaparız.
X→aXc
X→b
Örnek 2
Yani kısaca kuralı işletmek için önceki durumu hatırlanması gerekmemeli anlamına geliyor.
S → SS
S → (S)
S → ()
context free iken
S  → abc
S  → aSBc
cB → WB
WB → WX
WX → BX
BX → Bc
bB → bb
değildir. Çünkü sol tarafta B ile ilgili kurallarda cB ve bB var. Bu durumda B'den önce gelen context hatırlanmalı c veya b içermesine göre farklı bir kural işletilmeli.

Hiç yorum yok:

Yorum Gönder