9.3. A membránrendszerek számítási ereje

Ahogy láttuk bonyolult problémákra adhatunk hatékony membránrendszereket, amelyek megoldják őket. Ugyancsak láttunk példát nem környezetfüggetlen nyelv generálására membránrendszerekkel, illetve elfogadására P-automatával.

Lássuk most mire is képesek számítási szempontból a membránrendszerek. Vegyük az összes rekurzívan felsorolható nyelv RE halmazát. Ezen nyelvek Parikh halmazainak halmaza .

A következő alfejezetben a formális nyelvek elméletéből az ún. mátrix nyelvtanokkal ismerkedünk meg, amik nagyon hasznosak egyes membránrendszerek számítási univerzalitásának bizonyításához.

9.3.1. Mátrix nyelvtanok

Ebben a fejezetben megint a formális nyelvek elméletéhez fordulunk segítségért. A mátrix nyelvtanok olyan környezetfüggetlen szabályokat tartalmazó rendszerek, amelyekben a szabályok alkalmazásának sorrendje nem tetszőleges, így akár a 0. típusú nyelvtanok generáló ereje (vagyis a teljes RE nyelvcsalád) is generálható egyes változataikkal.

Tulajdonképpen egy 2-es típusú (környezetfüggetlen) nyelvtanunk van, de a szabályok táblákban (ún. mátrixokban) helyezkednek el.

Kiindulunk az mondatszimbólumból. Minden levezetési lépésben szabály helyett most választani kell egy táblát és annak szabályait a sorrendjükben, mindet pontosan egyszer kell alkalmazni.

A 9.1. táblázattal megadott rendszer generálja az úgynevezett „másolat” nyelvet: , amely közismerten nem környezetfüggetlen.

9.1. táblázat - Példa mátrix nyelvtanra, ahol nemterminálisok, terminálisok, a mondatszimbólum, a szabályok pedig:

1. tábla 2. tábla 3. tábla 4. tábla 5. tábla

Ha a szabály mellett ott van a jel, akkor az adott szabályt csak akkor kell alkalmazni, ha alkalmazható, ellenkező esetben a szabály kihagyható: vagyis ha nem alkalmazható, akkor egyszerűen nem alkalmazzuk, csak a mátrix többi szabályát. Ezt hívjuk jelenlét ellenőrzésnek vagy előfordulás ellenőrzésnek. Jellemzője ezeknek a rendszereknek a csapdaszimbólum, amit a jelenlét ellenőrzésére használhatunk pl. a következőképpen: például a mátrixot alkalmazva olyan mondatformára, amiben található, a mátrix (szabályainak) alkalmazása behozza az nemterminálist a mondatformába. Ha sehol nincs olyan szabály, aminek a baloldalán az nemterminális van, akkor ez a levezetés már nem fog tudni terminálni. Ha viszont az nincs benne a mondatformában, akkor egyszerűen egy benne levő lesz megkettőzve ezen mátrix alkalmazásával. Vagyis termináló levezetésben csak akkor alkalmazható ez a mátrix, ha az nemterminális nincs jelen az aktuális mondatformában.

Az jelenlét ellenőrző mátrix nyelvtanokkal minden RE nyelv generálható. A membránrendszerek univerzalitásának bizonyításait legtöbbször ilyen mátrix nyelvtanokra, vagy pl. regiszter-automatákra vezetik vissza.

9.3.2. Univerzalitási eredmények membránrendszerekre

Az univerzalitási eredmények leginkább olyan típusúak, hogy adott típusú (vagy jellemzőjű) membránrendszerek tudják-e szimulálni más számítási modellek (pl. Turing-gép, vagy másféle membránrendszerek) által megvalósított (leírt) számításokat. Nagyon sokféle membránrendszerről bizonyították, hogy számítási erejét tekintve Turing univerzális, vagyis ugyanazokat a függvényeket, multihalmazokat, nyelveket lehet velük kiszámítani, mint a Turing-gépekkel. A fejezet zárásaként néhány ilyen univerzalitási eredményt közlünk. A kiszámítható számhalmaz alatt a természetes számok olyan részhalmazát értjük, amelyhez van Turing-gép ami elfogadja/kiszámítja. Hasonlóan a kiszámítható vektorhalmazok alatt, a csak természetes számokból álló olyan vektorok halmazát értjük, amit Turing-géppel ki lehet számolni (ez egyébként éppen az RE rekurzívan felsorolható nyelvek Parikh halmazainak halmazával esik egybe).

  • Minden kiszámítható számhalmaz kiszámítható egy membránt és két katalizátort tartalmazó membránrendszerekkel.

  • Maximum két membránt és két katalizátort tartalmazó (aktív membránt nem tartalmazó) membránrendszerekkel minden RE nyelv Parikh halmaza kiszámítható.

  • Minden kiszámítható számhalmaz kiszámítható két membránt tartalmazó, csak az első három aktív membrános szabálytípus alkalmazásával (objektumok evolúciója, objektumok be- és kiküldése membránba/ból).

  • Három membránból álló szimport-antiport rendszerekkel, amelyben minden szabályban az és az maximum egy szimbólum objektumból állhat, minden kiszámítható számhalmaz kiszámítható.

  • Három membránból álló szimport rendszerekkel, amelyben minden , illetve szabályban az és az maximum két szimbólum objektumból állhat, minden kiszámítható számhalmaz kiszámítható.

  • Elfogadó rendszerként működtetve determinisztikus egy membránnal rendelkező, csak alakú antiport szabályokat használva, ahol és hossza együtt maximum három, és egyikük hossza sem haladja meg a kettőt, minden kiszámítható vektorhalmaz kiszámítható.

  • Elfogadó rendszerként működtetve determinisztikus, egy membránnal rendelkező rendszerekkel, csak szimport szabályokat használva, ahol egy szabály maximum három szimbólum objektumból állhat, minden kiszámítható vektorhalmaz kiszámítható.

  • Minden RE nyelv generálható maximálisan párhuzamos módban használt egy membrános szimport-antiport rendszerrel, melynek szabályai alakjára teljesül, hogy , ahol és hossza együtt maximum három, és egyikük hossza sem haladja meg a kettőt.

A P-automaták segítségével szépen jellemezhető, mind a környezetfüggő, mind a rekurzívan felsorolható nyelvek halmaza. Ha az függvény, aminek a segítségével az elfogadott nyelvet értelmezzük, olyan, hogy csak , vagyis az üres multihalmaz esetén, áll elő, akkor az elfogadott nyelvek halmaza éppen a környezetfüggő nyelvek halmaza. Tulajdonképpen így valójában az input értelmezése analóg a „törlés nélküli” (vagyis nélküli) formális rendszerekkel. A rendszerben a számítás során így az objektumok száma az értelmezett input hosszában mérve maximum exponenciális lehet. Ez pedig, a Turing-gépeket tekintve, unáris kódolást felhasználva éppen a lineáris tár-korlátnak feleltethető meg. Ily módon a P-automatákkal egy jól ismert nyelvosztály természetes úton jellemezhető. Amennyiben az függvény más esetekben, vagyis az objektumok nemüres beszívott multihalmaza esetén is felveheti a üresszó értéket, minden rekurzívan felsorolható nyelvet el lehet fogadni P-automatával. A következőkben még konkrétabb eredményeket is közlünk.

Vezessük be a ábécén belül a terminális szimbólumok és a nemterminális szimbólumok halmazát, úgy hogy és . Legyen továbbá az függvény, amit a nyelvelfogadáshoz használunk, olyan, hogy a beszívott betűk egy részét, a terminálisokat megtartja, a másik részét, a nemterminálisokat kitörli; és a megtartott (terminális) betűk bármely lehetséges sorrendben történő felírásával létrejövő sztringet tartalmazza. (Így az alapjában véve nemdeterminisztikus, egy elfogadó futás ekkor általában nem csak egy sztring elfogadását jelenti.)

Ismert eredmény, hogy csak antiport szabályokat felhasználva, segítő és gátló multihalmazok használata nélkül, a halott konfigurációval történő elfogadással, maximálisan párhuzamos működéssel egyetlen membránt tartalmazó P-automatákkal minden rekurzívan felsorolható nyelvet el lehet fogadni.

A P-automaták számítási erejét exponenciális tárra korlátozhatjuk a következő módon is. Legyen egy speciális terminális szimbólum. Ha a P-automata modellben, a legkülső, a sejtmembránt kivéve csak az alakú szabályokat használhatjuk, ahol . A sejtmembránra pedig a következő típusú szabályok alkalmazhatóak:

  • , és (vagyis a beszívott szimbólumok száma nem nagyobb, mint a környezetbe kijuttatottaké);

  • , és ;

  • , ; és

  • minden egyes terminális szimbólumhoz van legalább egy , alakú szabály.

Alkalmazzuk a szabályokat maximálisan párhuzamosan, és az elfogadó állapotok legyenek a halott konfigurációi a rendszernek. Az elfogadott nyelvet pedig itt is az előző függvény segítségével, csak a terminális betűket megtartva definiáljuk. Az alkalmazható szabályokra tett megszorítások miatt a rendszer nem tartalmazhat exponenciálisnál több objektumot egyszerre. Az ilyen rendszerek éppen a környezetfüggő nyelveket tudják elfogadni a következőképpen: minden környezetfüggő nyelvhez van olyan exponenciális tárra korlátozott P-automata, hogy az nyelvet fogadja el. Illetve, minden ilyen típusú P-automatára, ami az nyelvet fogadja el az nyelv környezetfüggő.