AKIT
English Eesti

combinatory logic

kombinatoorloogika

olemus
arvutusloogika, mille süntaks
võimaldab hoiduda kvantifitseeritud muutujatest :
- nagu lambda-arvutuski, esitab arvutusi kujutavaid terme
- iga term on üks järgmistest:
----- muutuja x
----- primitiivfunktsioon (kombinaator) I, K või S
----- superpositsioon (E1, E2), kus E1 ja E2 on termid

primitiivfunktsioonid
on defineeritud nii:
- I(x) = x iga termi x korral
- ((K x) y) = x st (K x) on funktsioon, mis
teisendab mis tahes termi y termiks x
- (S x y z) = (x z (yz))

seos lambda-arvutusega
lambda-arvutuse iga termi t
saab esitada kombinatoorloogika termiga T[t],
kus teisendus T defineeritakse nii:
- T [x] = x
- T [(E1, E2)] = (T [E1], T [E2])
- T [λx.E] = (K T [E]), kui x on termis E ainult kvantifitseeritult
- T [λx.x] = I
- T [λx.λy.E] = T [λx. T [λy. E]], kui x on termis E kvantifitseerimata
- T [λx.(E1, E2)] = (S T [λx.E1], T [λx.E2]),
kui x on ühes termidest E1 või E2 kvantifitseerimata

ülevaateid
https://esolangs.org/wiki/Combinatory_logic

https://www.lama.univ-savoie.fr/pagesmembres/david/CLA05/slides/david.pdf

https://www.cs.vu.nl/~femke/courses/ep/slides/history.pdf

https://plato.stanford.edu/entries/logic-combinatory/

https://wiki.haskell.org/Combinatory_logic

vt ka
- kombinatoorika
- matemaatiline loogika