Lineáris logika ( az angol Linear Logic egy szubstrukturális logika, amelyet Jean -Yves Girard javasolt a klasszikus és intuíciós logika finomításaként , amely az előbbi kettősségét az utóbbi számos konstruktív tulajdonságával ötvözi [1] , bevezetve és felhasználva valamilyen erőforrás felhasználását figyelembe vevő logikai érveléshez [2] ] . Bár a logikát önmagában is tanulmányozták, a lineáris logika ötletei számos erőforrás-igényes alkalmazásban találnak alkalmazást, beleértve a hálózati protokoll - ellenőrzést , a programozási nyelveket , a játékelméletet ( játékszemantikát ) [2] és a kvantumfizikát (mert a lineáris logika a kvantuminformáció-elmélet logikájának tekinthető ) [3] , a nyelvészet [4] .
A klasszikus lineáris logika nyelve ( angolul classic linear logic, CLL ) Backus-Naur formában írható le :
A ::= p ∣ p ⊥ | A ⊗ A ∣ A ⊕ A | A & A ∣ A ⅋ A | 1 ∣ 0 ∣ ⊤ ∣ ⊥ | ! A∣ ? AAhol
Szimbólum | Jelentése |
---|---|
⊗ | multiplikatív kötőszó ("tenzor", angol "tenzor" ) |
⊕ | additív diszjunkció |
& | additív kötőszó |
⅋ | multiplikatív diszjunkció ("par", angol "par" ) |
! | modalitás " természetesen " |
? | modalitás " miért ne " |
egy | mértékegysége ⊗ |
0 | nulla ⊕ esetén |
⊤ | null & |
⊥ | mértékegysége ⅋ |
A ⊗, ⊕, & és ⅋ bináris konnektívuma asszociatív és kommutatív .
A klasszikus lineáris logikában minden A állításnak van egy duális A ⊥ , amelyet a következőképpen definiálunk:
( p ) ⊥ = p ⊥ | ( p ⊥ ) ⊥ = p | ||||
( A ⊗ B ) ⊥ = A ⊥ ⅋ B ⊥ | ( A ⅋ B ) ⊥ = A ⊥ ⊗ B ⊥ | ||||
( A ⊕ B ) ⊥ = A ⊥ & B ⊥ | ( A & B ) ⊥ = A ⊥ ⊕ B ⊥ | ||||
(1) ⊥ = ⊥ | (⊥) ⊥ = 1 | ||||
(0) ⊥ = ⊤ | (⊤) ⊥ = 0 | ||||
(! A ) ⊥ = ?( A ⊥ ) | (? A ) ⊥ = !( A ⊥ ) |
A lineáris logikában (a klasszikus logikától eltérően) a premisszák gyakran elhasználható erőforrásokként vannak kezelve , így a származtatott vagy kezdeti képlet felhasználási száma korlátozható.
A ⊗ multiplikatív kötőszó hasonló a többhalmazos összeadási művelethez , és kifejezheti az erőforrások egyesülését.
Figyeljük meg, hogy (.) ⊥ involúció , azaz A ⊥⊥ = A minden állításra. A ⊥ -t A lineáris negációjának is nevezik .
A lineáris implikáció nagy szerepet játszik a lineáris logikában, bár nem szerepel a konnektív nyelvtanban. Lineáris negációval és multiplikatív diszjunkcióval fejezhető ki
A ⊸ B := A ⊥ ⅋ B .A szalagot ⊸ jellegzetes alakja miatt néha "nyalókának" ( eng. lollipop ) is nevezik.
A lineáris implikáció akkor használható a kimenetben, ha annak bal oldalán vannak erőforrások, és az eredmény a jobb oldali lineáris implikációból származó erőforrások. Ez a transzformáció egy lineáris függvényt határoz meg , amelyből a "lineáris logika" [5] kifejezés született .
A „természetesen” (!) modalitás lehetővé teszi, hogy egy erőforrást kimeríthetetlennek jelöljünk.
Példa. Legyen D egy dollár, C pedig egy csokoládé. Ekkor egy csokoládé vásárlását D ⊸ C -vel jelölhetjük . A vásárlást a következőképpen fejezhetjük ki: D ⊗ !( D ⊸ C ) ⊢ C⊗!( D ⊸ C ) , vagyis hogy a dollár és az azzal való tábla csokoládévásárlás lehetősége egy csokoládéhoz vezet, és a csokoládé vásárlási lehetőség marad [5] .
A klasszikus és intuicionista logikával ellentétben a lineáris logikának kétféle kötőszója van, amelyek lehetővé teszik az erőforrások korlátozottságának kifejezését. Adjuk hozzá az előző példához a nyalóka L vásárlásának lehetőségét. A tábla csokoládé vagy nyalóka vásárlásának lehetőségét additív kötőszóval fejezhetjük ki [6] :
D ⊸ L & C
Természetesen csak egyet választhat. A multiplikatív kötőszó mindkét erőforrás jelenlétét jelzi. Tehát két dollárért vásárolhat egy csokit és egy nyalókát is:
D ⊗ D ⊸ L ⊗ C
Az A ⅋ B multiplikatív diszjunkció felfogható úgy, hogy „ha nem A, akkor B”, a rajta keresztül kifejezett A ⊸ B lineáris implikáció pedig „levezethető-e B-ből A-ból pontosan egyszer?” [6]
Az A ⊕ B additív diszjunkció mind A, mind B lehetőségét jelöli, de a választás nem a tiéd [6] . Például egy win-win lottó, ahol nyalókát vagy csokit nyerhet, kifejezhető additív diszjunkcióval:
D ⊸ L ⊕ C
A teljes lineáris logika mellett töredékeit használják [7] :
Természetesen ez a lista nem merít ki minden lehetséges töredéket. Például vannak különféle Horn-töredékek, amelyek lineáris implikációt használnak (hasonlóan a Horn-tagmondatokhoz ) különféle konnektívumokkal kombinálva. [nyolc]
A logika töredékei számítási értelmezésük összetettsége miatt érdekesek a kutatók számára. Konkrétan M. I. Kanovich bebizonyította, hogy egy teljes MLL-fragment NP-teljes , és egy lineáris logika ⊕-kürt töredéke egy gyengítési szabállyal .( angol gyengítési szabály ) PSPACE-full . Ez úgy értelmezhető, hogy az erőforrás-felhasználás kezelése a legegyszerűbb esetekben is nehéz feladat. [nyolc]
A lineáris logika meghatározásának egyik módja a szekvenciális számítás . A Γ és ∆ betűk mondatlistákat jelölnek , és kontextusnak nevezzük . Egy sorozatban a kontextus a ⊢ ("kell") bal és jobb oldalán helyezkedik el, például: . Az alábbiakban látható az MLL szekvenciális számítása kétirányú formátumban [7] .
Szerkezeti szabály – permutáció. A bal és a jobb oldali következtetési szabályok a következők:
Identitás és szakasz :
Multiplikatív kötőszó:
Multiplikatív diszjunkció:
Tagadás:
Hasonló szabályok definiálhatók a teljes lineáris logikára, annak additívumaira és exponenciálisaira. Megjegyzendő, hogy a gyengítés és a redukció strukturális szabályait nem adták hozzá a lineáris logikához , mivel általában az utasítások (és azok másolatai) nem jelenhetnek meg és nem tűnhetnek el véletlenszerűen egymás után, ahogy az a klasszikus logikában megszokott.
Logikák | |||||||||
---|---|---|---|---|---|---|---|---|---|
Filozófia • Szemantika • Szintaxis • Történelem | |||||||||
Logikai csoportok |
| ||||||||
Alkatrészek |
| ||||||||
Logikai szimbólumok listája |