Siurbimo savybė, dar žinoma kaip siurbimo lema, yra pagrindinė skaičiavimo sudėtingumo teorijos sąvoka, ypač tiriant kontekstui jautrias kalbas (CSL). Siurbimo savybė yra būtina sąlyga, kad kalba būtų jautri kontekstui, ir ji padeda įrodyti, kad tam tikros kalbos nėra jautrios kontekstui.
Kad suprastume sąlygas, kurias reikia įvykdyti, kad siurbimo savybė išliktų, pirmiausia apibrėžkime, kas yra kontekstui jautri kalba. Kontekstui jautri kalba yra formali kalba, kurią gali sugeneruoti kontekstui jautri gramatika, kuri yra formaliosios gramatikos rūšis, kai gamybos taisyklėmis leidžiama keisti generuojamos eilutės kontekstą. Kitaip tariant, gramatika gali atpažinti ir generuoti kalbas, kurioms atpažinti reikalingas tam tikras kontekstas.
Kontekstui jautrių kalbų siurbimo ypatybė, dar žinoma kaip CSL siurbimo lema, teigia, kad jei kalba L yra jautri kontekstui, tada egzistuoja pastovi p (siurbimo ilgis), kad bet kuri pakankamai ilga eilutė w iš L gali turi būti padalintas į penkias dalis: uvxyz, atitinkantis šias sąlygas:
1. V ir y ilgis kartu yra didesnis už nulį, ty |vxy| > 0.
2. Uvxy ilgis yra daugiausia p, ty |uvxy| ≤ p.
3. Bet kuriam neneigiamam sveikajam skaičiui k eilutė uv^kxy^kz taip pat yra L.
Norėdami paaiškinti šias sąlygas, panagrinėkime pavyzdį. Tarkime, kad turime kalbą L = {a^nb^nc^n | n ≥ 0}, kuri reiškia eilučių rinkinį, sudarytą iš vienodo skaičiaus „a“, „b“ ir „c“ tokia tvarka. Norime nustatyti, ar ši kalba atitinka siurbimo savybę.
Šiuo atveju siurbimo ilgis p būtų 'a', 'b' arba 'c' skaičius, kurį galima siurbti. Tarkime, p = 2 dėl paprastumo. Dabar apsvarstykite eilutę w = a^2 b^2 c^2. Šią eilutę galime padalyti į penkias dalis taip: u = a^2, v = b^2, x = ε (tuščia eilutė), y = ε ir z = c^2.
Siurbimo savybės yra tenkinamos šiuo atveju:
1. V ir y ilgis kartu yra didesnis už nulį, nes |vxy| = |b^2| > 0.
2. Uvxy ilgis yra daugiausia p, nes |uvxy| = |a^2 b^2| ≤ 2.
3. Bet kuriam neneigiamam sveikajam skaičiui k eilutė uv^kxy^kz taip pat yra L. Pavyzdžiui, jei pasirinksime k = 0, tada uv^0xy^0z = a^2 c^2, kuri vis dar yra L.
Todėl galime daryti išvadą, kad kalba L = {a^nb^nc^n | n ≥ 0} atitinka siurbimo savybę ir yra jautrus kontekstui.
Apskritai siurbimo nuosavybės sąlygos CSL kontekste yra tokios:
1. V ir y ilgis kartu turi būti didesnis už nulį.
2. uvxy ilgis turi būti ne didesnis kaip siurbimo ilgis p.
3. Bet kuriam neneigiamam sveikajam skaičiui k eilutė uv^kxy^kz taip pat turi būti kalboje L.
Šios sąlygos užtikrina, kad jei kalba yra jautri kontekstui, ją galima „pumpuoti“ kartojant eilutės sekciją, išlaikant kalbos struktūrą.
Kiti naujausi klausimai ir atsakymai apie Jautrios kontekstui kalbos:
- Ar Chomsky gramatikos normalioji forma visada yra išsprendžiama?
- Ar yra dabartinių 0 tipo atpažinimo metodų? Ar tikimės, kad kvantiniai kompiuteriai tai padarys įmanoma?
- Kodėl D kalbos pavyzdyje siurbimo savybė negalioja eilutei S = 0^P 1^P 0^P 1^P?
- Į kokius du atvejus reikia atsižvelgti dalijant eilutę, kad būtų taikoma siurbimo lema?
- Kodėl B kalbos pavyzdyje siurbimo savybė negalioja eilutei a^Pb^Pc^P?
- Kaip galima naudoti CFL siurbimo lemą siekiant įrodyti, kad kalba nėra be konteksto?
- Kokios sąlygos turi būti įvykdytos, kad kalba būtų laikoma be konteksto pagal bekontekstinių kalbų lemą?
- Paaiškinkite rekursijos sąvoką bekontekstinės gramatikos kontekste ir kaip ji leidžia generuoti ilgas eilutes.
- Kas yra analizavimo medis ir kaip jis naudojamas bekontekstinės gramatikos sugeneruotos eilutės struktūrai pavaizduoti?
- Kaip apibrėžiama bekontekstinė kalba ir kokie yra bekontekstinės gramatikos komponentai?
Peržiūrėkite daugiau klausimų ir atsakymų skiltyje Kontekstui jautrios kalbos