Nie jestem pewien, czy to pytanie jest idealne dla CSTheory, ale biorąc pod uwagę, że już zbiera opinie, oto odpowiedź, którą ktoś mógłby udzielić, gdyby pytanie zostało opublikowane na cs.stackexchange .
Aby zrozumieć pojęcie dualności logiki liniowej , która rozdziela koniunkcję i dysjunkcję znacznie dalej niż jesteśmy przyzwyczajeni w konwencjonalnej logice, zalecam nie myśleć o logice liniowej pod względem zasobów (chociaż jest to ważna lektura ). Zamiast tego pomyśl o liniowych formułach logicznych A
jako procesach komunikujących się w porcie / nazwie / kanale. Zgodnie z moją najlepszą wiedzą interpretacja ta została rozwinięta w pierwszej części (1), ale nawiązuje do niej już oryginalna praca Girarda. Jako obraz:(⋅)⊥A
A⊗BABA⊗B (a,b)aAbB
(.)⊥A⊗B
(A⊗B)⊥=A⊥⅋B⊥
W tym odczytu jest proces, który komunikuje się z .A⊥⅋B⊥A⊗B
Odpowiednik dysocjacji w logice liniowej może otrzymać podobny odczyt teoretyczny. Formuła
A & B
powinny być również postrzegane jako dwa równoległe procesy i , ale zamiast aktywnie wysyłać wiadomości, czekają, aż środowisko zdecyduje, które uruchomić. Więc siedzi tam, czekając na jego kanale na trochę informacji, które decyduje czy powinny działać jako lub . Jest to „równoległa” wersja w sekwencyjnych językach programowania. Podwójny
z jestABA&BA&BABif/then/else(A&B)⊥A&B
(A&B)⊥=A⊥⊕B⊥
może być postrzegany jako proces wysyłający 1 bit informacji do , a mianowicie: „kontynuuj jako ” lub „kontynuuj jako ”. Jest to podobne do tego w oceniany na podczas
oceniany na , z tym że wybór między i jest teraz dokonywany przez środowisko.B i F T R U e T H E N P e l a e P P I f f danego ł s e t h e n P e l s e Q Q A BA&BABif true then P else QPif false then P else QQAB
Operator! Ma również interpretację teoretyczną: jeśli
jest odczytywany jako proces, to można odczytać jako uruchamiający nieskończenie wiele procesów równolegle.
! A AA!AA
W tym odczytu axioms liniowych logicznych się proste „przewody”, które przekazywania komunikatów z procesów do procesów . Ta interpretacja aksjomatów znajduje się już w siatkach dowodowych Girarda (3).A ⊥ AA⊢AA⊥A
Ta interpretacja teoretyczna procesu miała wpływ i spowodowała wiele dalszych prac, takich jak np. (2) dla typów sesji. Niemniej jednak istnieją pewne przypadki krawędzi, które sprawiają, że jest to trochę niezręczne, i zgodnie z moją wiedzą nie zostało stworzone, aby działało idealnie dla pełnej logiki liniowej nawet w 2017 roku.
1. S. Abramsky, Interpretacje obliczeniowe logiki liniowej .
2. P. Wadler, Propozycje jako sesje .
3. Wikipedia, siatka próbna .