Kalábovi

Kalábovic wikina

Uživatelské nástroje

Nástroje pro tento web


msz:lambda

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
msz:lambda [29. 05. 2012, 09.01:04] – [β-redukce] podrobneji o promennych pitelmsz:lambda [18. 08. 2026, 04.32:55] (aktuální) – odstraněno - upraveno mimo DokuWiki (Neznámé datum) 127.0.0.1
Řádek 1: Řádek 1:
-====== Lambda kalkul ====== 
-[[wp>Lambda calculus]] 
  
-===== Syntaxe a konvence ===== 
-//E// = 
-  * //V// -- proměnná 
-  * (//E//₁ //E//₂) -- aplikace 
-  * λ(//V//.//E//) -- abstrakce, //V// je hlavička, //E// je tělo 
- 
----- 
-  * %%((…((%%//E//₁ //E//₂) //E//₃)…) //Eₙ//) ~ //E//₁ //E//₂ //E//₃ … //Eₙ// 
-  * (λ//V//.(//E//₁ … //Eₙ//)) ~ λ//V//.//E//₁ … //Eₙ// 
-  * (λ//V//₁.(…(λ//Vₙ//.//E//))) ~ λ//V//₁ … //Vₙ//.//E// 
- 
-===== Volné a vázané proměnné ===== 
-Proměnná je //vázaná//, pokud se vyskutuje v (nejbližší) hlavičce lambda abstrakce. V opačném případě je proměnná //volná//. 
- 
-  λx.xy(λx.x)y 
-   | |   | | 
-   +-+   +-+ 
- 
-===== Substituce ===== 
-//E//[//E//′%%/%%//V//] (někdy také //E//[//V// := //E//′]) 
- 
-Nahrazení volných výskytů //V// v //E// za //E//′. 
- 
-<note important>Žádná volná proměnná v //E//′ se nesmí po substituci stát vázanou!</note> 
-<note>Příklad: 
-  * λ//x//.//xy//[//vw//%%/%%//y//] = λ//x//.//xvw// 
-  * λ//x//.//xy//[//vw//%%/%%//x//] nelze, protože //x// je vázaná proměnná! 
-</note> 
- 
-===== α-konverze ===== 
-Někdy také α-přejmenování. 
- 
-Přejmenovává vázané proměnné. 
- 
-<note important>Nesmí dojít k navázání volných proměnných!</note> 
- 
-<note>Příklad: 
-  * λ//x//.//xy// → λ//z//.//zy// 
-  * <del>λ//x//.//xy// → λ//y//.//yy//</del> Došlo k navázání volných proměnných! 
-  * <del>λ//x//.//xy// → λ//x//.//xz//</del> //y// není vázaná proměnná (šlo o substituci) 
-</note> 
- 
-===== β-redukce ===== 
-Aplikace funkce, ((λ//V//.//E//) //E//′) → //E//[//E//′%%/%%//V//]. 
- 
-    +--+ 
-    |  V 
-  (λxy.xy)(ab) → λy.aby 
-    ^      |/ 
-    |      | 
-    +------+ 
- 
-<note important>Opět pozor na vázané a volné proměnné! Volné proměnné v //E//′ se nesmí stást vázanými! Lze si pomoct α-přejmenováním a substitucí.</note> 
- 
-<note>Příklad: 
-  * ((λ//n//.//n//×2) 7) → 7×2 
-</note> 
-===== η-konverze ===== 
-===== Ekvivalence ===== 
/var/www/wiki/data/attic/msz/lambda.1338282064.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)