Evet var. Bağlamsız bir ifadeyi , aşağıdaki gramer tarafından oluşturulan bir terim olarak tanımlayın :
g::=||||||ϵcg⋅g⊥g∨gμα.gαEmpty stringCharacter c in alphabet ΣConcatenationFailing patternDisjunctionRecursive grammar expressionVariable expression
Bu, genel bir sabit nokta operatörü μ α ile değiştirilen Kleene yıldızı dışındaki normal diller için yapıcıların tümü .μα.gg∗≜μα.ϵ∨g⋅α
Bağlam içermeyen bir ifadenin yorumlanması, serbest değişkenlerin yorumlanması için muhasebe gerektirir. Yani bir tanımlama çevreyi
dilde (yani alt kümeleri için değişkenlerden bir harita olması
) ve let fonksiyonunu olması gibi davranacağını dışındaki tüm girdilere ve için dilini döndürür .Σ ∗ [ ρ | α : L ] ρ α L αρΣ∗[ρ|α:L]ραLα
Şimdi, bağlamsız bir ifadenin yorumunu aşağıdaki gibi tanımlayın:
[[ϵ]]ρ[[c]]ρ[[g1⋅g2]]ρ[[⊥]]ρ[[g1∨g2]]ρ[[α]]ρ[[μα.g]]ρwhereL0Ln+1========={ϵ}{c}{w1⋅w2∣|w1∈[[g1]]ρ∧w2∈[[g2]]ρ}∅[[g1]]ρ∪[[g2]]ρρ(α)⋃n∈NLn∅Ln∪[[g]][ρ|α:Ln]
Knaster-Tarski teoremini kullanarak, yorumunun en az sabit olduğunu görmek kolaydır .μα.g
Tamamen önemsiz olmasa da, herhangi bir bağlamsız dilbilgisi ile aynı dili türeten bağlamsız bir ifade verebileceğinizi ve bunun tersi olduğunu söylemek kolaydır. Önemsiz olmama, bağlamsız ifadelerin sabit noktalara yerleştirilmiş olmasından kaynaklanır ve bağlamsız gramerler size bir tutar üzerinden tek bir sabit puan verir. Bu, tam olarak iç içe geçmiş sabit noktaların bir ürün üzerinde tek bir sabit noktaya dönüştürülebileceğini söyleyen Bekic lemmasının kullanılmasını gerektirir (ve bunun tersi de geçerlidir). Ama bu sadece inceliktir.
EDIT: Hayır, bunun için standart bir referans bilmiyorum: Kendi çıkarım için hazırladım. Ancak, daha önce icat edildiğine emin olduğum bir yapı. Bazı geçici Googling, Joost Winter, Marcello Bonsangue ve Jan Rutten'in son yazıda Bağlamsız Diller (Coalgebraically) olarak tanımladıkları ve burada tanımsız ifadeler dedikleri bu tanımın bir türevini (tüm sabit noktaların korunmasını gerektiren) verdiklerini ortaya koyuyor
.