Formalny opis rachunku lambda i nie tylko, kolejna wersja
Formalny opis rachunku lambda i nie tylko, kolejna wersja
Formalny opis rachunku lambda i nie tylko, kolejna wersja
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
1) jeżeli M = N, to M → N,<br />
2) jeżeli M → N, to M → N,<br />
3) jeżeli M → L i L → N, to M → N.<br />
Relację → można też definiować zgod<strong>nie</strong> z następującym lematem:<br />
Lemat 6.1 Relacja → jest najm<strong>nie</strong>jszą relacją spełniającą następujące warunki:<br />
1) jeżeli M = N, to M → N,<br />
2) jeżeli M → L i L → N, to M → N. ✷<br />
Z kolei relacja → wyznacza konwersję ≡, czyli najm<strong>nie</strong>jszą relację taką, że<br />
1) jeżeli M → N, to M ≡ N,<br />
2) jeżeli M ≡ N, to N ≡ M,<br />
3) jeżeli M ≡ L i L ≡ N, to M ≡ N.<br />
6.2 Lematy pomocnicze<br />
Lemat 6.2 Dla dowolnych M, M 1 i M 2 takich, że M → M 1 i M → M 2 ist<strong>nie</strong>je<br />
N spełniający M 1 → N oraz M 2 → N.<br />
Dowód. Zamiast korzystać bezpośrednio z definicji relacji → posługujemy się<br />
charakteryzacją tej relacji z lematu 6.1. ✷<br />
Lemat 6.3 Dla dowolnych M, M 1 i M 2 takich, że M → M 1 i M → M 2 ist<strong>nie</strong>je<br />
N spełniający M 1 → N oraz M 2 → N.<br />
Dowód. Lemat ten wynika z poprzed<strong>nie</strong>go i z charakteryzacji relacji → z lematu<br />
6.1. ✷<br />
6.3 Abstrakcyjne twierdze<strong>nie</strong> Churcha-Rossera<br />
Twierdze<strong>nie</strong> 6.4 Jeżeli relacja → spełnia warunek ✸, to dla dowolnych M 1 i M 2<br />
takich, że M 1 ≡ M 2 ist<strong>nie</strong>je N spełniający M 1 → N oraz M 2 → N.<br />
Dowód. ✷<br />
7 Wnioski z twierdzenia Churcha-Rossera<br />
7.1 Relacja równoległej β-redukcji<br />
Relacja równoległej β-redukcji (w jednym kroku) → rβ jest najm<strong>nie</strong>jszą relacją w<br />
zbiorze <strong>lambda</strong> termów spełniającją<br />
1) M → rβ M,<br />
2) jeżeli M → rβ M 1 , M 1 → α M ′ 1, N → rβ N 1 i N 1 jest podstawialny za zmienną<br />
x w termie M ′ 1, to (λxM)N → rβ M ′ 1[x := N 1 ],<br />
3) jeżeli M → rβ M 1 oraz N → rβ N 1 , to MN → rβ M 1 N 1 ,<br />
13