A környezetfüggetlen nyelvek növekedési lemma egy olyan lemma, amely a reguláris nyelvek azonos nevű lemmájával analógiával viszonylag könnyen bizonyítja, hogy egy adott nyelv nem kontextusmentes .
Ha L egy CS-nyelv a V ábécé felett, akkor .
Vagyis a CS nyelvben bármely kellően hosszú lánc öt részre osztható úgy, hogy a második és negyedik rész tetszőleges számú (talán 0) ismétlése ne vezessen túl a nyelven.
Legyen adott egy CS-nyelv (V, N, S, G), és a nyelv nyelvtana redukálódik (vagyis nem tartalmaz A → ε vagy A → B alakú szabályokat).
Mivel a nem terminális szimbólumok száma véges, csakúgy, mint az egyes következtetési szabályok hossza, a lánc hosszát, amelynél a származékfa magassága nem haladja meg az |N|-t, felülről is korlátozza egy bizonyos szám n.
Nézzünk egy láncot . A fentiek miatt a származtatási fájának magassága meghaladja az |N| a nyelvtan szimbólumai. Mivel minden lépésben egy nem terminális szimbólumot cserélünk, legalább egy nem terminális Q szimbólumot kétszer cserélünk ezen az úton. Ebből következik, hogy van egy xQy lánc, amelynek nem üres x vagy y a Q-ból származtatva. Ezért az S →* α levezetési folyamatban a Q →* xQy levezetési folyamat tetszőlegesen megismételhető vagy elhagyható.
Triviális következmény: bármely végtelen CS-nyelvben van egy végtelen részhalmaza a karakterláncoknak, amelyek hossza növekvő aritmetikai sorozatot alkot.
Formális nyelvek és formális nyelvtanok | |
---|---|
Általános fogalmak | |
Típus 0 | |
1. típus |
|
2. típus | |
3. típus |
|
elemzése |