Jaki jest sens konwersji

18

Myślę, że tego nie rozumiem, ale konwersja wygląda na mnie jako konwersja β , która nic nie robi, szczególny przypadek konwersji β, w której wynikiem jest tylko termin z abstrakcji lambda, ponieważ nie ma nic do zrobienia, rodzaj bezcelowej konwersji β .ηβββ

Może więc konwersja jest czymś naprawdę głębokim i odmiennym od tego, ale jeśli tak, to nie rozumiem i mam nadzieję, że możesz mi w tym pomóc.η

(Dziękuję i przepraszam, wiem, że to część podstawowych zasad rachunku lambda)

Trylks
źródło

Odpowiedzi:

20

Aktualizacja [2011-09-20]: Rozszerzyłem akapit o rozszerzeniu i ekstensywności. Dziękujemy Antonowi Salikhmetovowi za wskazanie dobrych referencji.η

-konwersja ( λ x . f x ) = f jest szczególnym przypadkiem β - konwersjitylkow szczególnym przypadku, gdy f jest samo w sobie abstrakcją, np. jeśli f = λ y . y y następnie ( λ x . f x ) = ( λ x . ( λ y . y y ) x ) = β ( λ x .η(λx.fx)=fβff=λy.yyAle co jeśli f jest zmienną lub aplikacją, która nie sprowadza się do abstrakcji?

(λx.fax)=(λx.(λy.yy)x)=β(λx.xx)=αfa.
fa

W pewnym sensie zasada jest jak szczególny rodzaj ekstensywności, ale musimy być nieco ostrożni, jak to jest stwierdzone. Możemy określić ekstensywność jako:η

  1. dla wszystkich terminali M i N , jeśli M x = N x, to M = N lubλM.N.M.x=N.xM.=N.
  2. dla wszystkich jeśli x . f x = g x, a następnie f = g .fa,solx.fx=gxf=sol

Pierwszy to meta-stwierdzenie dotyczące warunków rachunku. W nim x pojawia się jako zmienna formalna, tzn. Jest częścią rachunku λ . Można to udowodnić na podstawie reguł β η , patrz na przykład Twierdzenie 2.1.29 w „Rachunku lambda: jego składnia i semantyka” Barendregta (1985). Można to rozumieć jako stwierdzenie o wszystkich definiowalnych funkcjach, tj. Tych, które są oznaczeniami terminów λ .λxλβηλ

Drugim stwierdzeniem jest to, w jaki sposób matematycy zazwyczaj rozumieją wyrażenia matematyczne. Teoria -kalkusa opisuje pewien rodzaj struktur, nazwijmy je „ modelami λ ”. Model λ może być niepoliczalny, więc nie ma gwarancji, że każdy jego element odpowiada termowi λ (tak jak jest więcej liczb rzeczywistych niż wyrażeń opisujących liczby rzeczywiste). Ekstensywność mówi wtedy: jeśli weźmiemy dwie rzeczy f i g w modelu λ , jeśli f x = g x dla wszystkich x w modelu, to f = gλλλλfasolλfax=solxxfa=sol. Teraz nawet jeśli model spełnia regułę , nie musi spełniać ekstensywności w tym sensie. (Potrzebne jest tutaj odniesienie i myślę, że musimy uważać na interpretację równości.)η

Istnieje kilka sposobów motywowania konwersji i η . Ja losowo wybrać jedną kategorię-teoretyczny, ukrytego jako λ -calculus, a ktoś inny nie może tłumaczyć z innych powodów.βηλ

Rozważmy wpisany calculus (ponieważ jest mniej mylący, ale mniej więcej takie samo rozumowanie działa dla niepypisanego λ- calculus). Jednym z podstawowych praw, które powinny posiadanych jest prawo wykładniczy C × B( C B ) . (Używam notacji A B i B A zamiennie, wybierając coś, co wydaje się wyglądać lepiej.) Co oznaczają izomorfizmy i : C A × B( C B ) A i j :λλ

doZA×b(dob)ZA.
ZAbbZAi:CA×B(CB)A wygląda jak napisane w λ- rachunku? Prawdopodobnie byłyby i = X F : C x B . λ : . λ b : B . f , b i J = λ g : ( C, B ) . λ p : A × Bj:(CB)ACA×Bλ
ja=λfa:doZA×b.λza:ZA.λb:b.faza,b
Krótki obliczenie z parą p -reductions (włączając w to P -reductions gatunku 1a , b = a i gatunku 2a , b = b produktów) mówi, że dla każdego g : ( C, B ) A mamy i ( j g ) =
j=λg:(CB)A.λp:A×B.g(π1p)(π2p).
ββπ1a,b=aπ2a,b=bg:(CB)A Od I i J są odwrotne od siebie oczekujemy i ( j g ) = g , ale faktycznie to udowodnić musimy użyć η -redukcja dwukrotnie: I ( j g ) = ( λ w : . X B : B . g a b ) = η (
i(jg)=λa:A.λb:B.gab.
iji(jg)=gη Jest to jeden z powodówobniżenia η . Ćwiczenie: którareguła η jest potrzebna, aby pokazać, że j ( i f ) = f ?
i(jg)=(λa:A.λb:B.gab)=η(λa:A.ga)=ηg.
ηηj(if)=f
Andrej Bauer
źródło
ββηβη
ηβη
1
==βMx=NxM=NM=NM=βηNη
MN
1
@AndrejBauer Zgadzam się, że η-zasada nie jest pełna ekstensywnością, ale nie sądzicie, że nadal jest ograniczoną formą ekstensywności, tj. Reprezentuje klasę oczywistych przypadków ekstensywności. Pierwotne pytanie dotyczy motywacji i pojęć, aw tym przypadku uważam, że myślenie w kategoriach ekstensywności jest przydatne (z pewną ostrożnością, aby nie posunąć się zbyt daleko).
Marc Hamann,
9

Aby odpowiedzieć na to pytanie, możemy podać następujący cytat z odpowiedniej monografii „Rachunek lambda. Jego składnia i semantyka ”(Barendregt, 1981):

βηλλ+extextMx=NxM=N

M=βηNληM=Nλ+extM=N

[Jego dowód opiera się na następującym twierdzeniu.]

λ+extλη(ext)(η)

λη

MNληM=Nλη+M=N

Teorie HP-complete [za Hilbertem-Post] odpowiadają maksymalnym spójnym teoriom w teorii modeli dla logiki pierwszego rzędu.


źródło
7

Wystarczy dodać do bardzo dobrej odpowiedzi Andreja: teorii nietypowego λRachunek z β i η zasady redukcji spełniają niektóre bardzo ładne właściwości:

  • Jest spójny w tym sensie, że istnieją na przykład dwa terminyλxy.x i λxy.yktóre nie βηodpowiednik. Jest to konsekwencja twierdzenia o zbiegu dlaβη zmniejszenie.

  • Jest to maksymalna spójna teoria w następującym znaczeniu: ifιjest
    relacją równoważności na takich warunkach, że:

    1. Jest zamknięty przez zgodność: u =ι vt u =ι t v itp.

    2. Jest równy 2 nonβηrównoważne terminy, które są normalnymi formami : istniejąt i u w normalnej formie, takiej jak t=ιu i tβηu.

Zatem teoria jest niespójna : dla każdego terminut, u w normalnej formie t=βηιu.

Jest to konsekwencja twierdzenia Böhm.

cody
źródło
6

η-Redukcja ujmuje pojęcie ekstensywności - dwie funkcje są uważane za równe, jeśli dają te same wyniki na tych samych wejściach.

Jednym ze sposobów sformalizowania tego pojęcia jest: jeśli weźmiemy pod uwagę relację =βη, przechodnie-refleksyjne zamknięcie relacji βη, naturalne jest scharakteryzowanie tej relacji w kategoriach reguł wnioskowania teorii równań (np .: reguły formy: jeśli M.=N., następnie λx.M.=λx.N. i tak dalej - charakteryzowanie =β wymaga około 7 tego rodzaju zasad).

Teraz zastępuję =β z =βη sprowadza się do wprowadzenia aksjomatu λx.M.x=M., which is equivalent to the extensionality rule: if Mx=Nx, then M=N. This is exactly the notion that two functions equal on all input arguments should be considered identical.

Marcin Kotowski
źródło
It is false that extensionality follows from η-rule.
Andrej Bauer
See Theorem 2.1.29 in the monograph by Barendregt (Lambda Calculus and its Semantics, 1985).
2
@Anton: I suppose I am not too happy about the ξ-rule.
Andrej Bauer
I z kolei nie jestem zbyt szczęśliwy, że szczęście i odpowiedzi „podobne do” słyszą więcej uwagi niż bezpośrednie trafne cytaty z odpowiednimi odniesieniami.
@Anton: To konkurs popularności, nie wiedziałeś? ;-) W każdym razie, co jest z tymξ-rule, która jest używana w Barendregt. Nie pamiętam, żeby ktoś przeciągałξ-rozpocznij dyskusję. Mamy tylkoα i β.
Andrej Bauer,