Odvodenie typu

Ciele

  1. Odvodenie typu

Postup

Krok 1

Úloha 1.1

Pokúste sa nájsť najvšeobecnejší typ termu: $$\lambda x.x$$

Úloha 1.2

Pokúste sa nájsť najvšeobecnejší typ termu: $$\lambda x.x\ x$$

Úloha 1.3

Pokúste sa nájsť najvšeobecnejší typ termu: $$\lambda f.f\ 3$$

Úloha 1.4

Pokúste sa nájsť najvšeobecnejší typ termu: $$\lambda g.\lambda f. \lambda x. g\ (f\ x)$$

Úloha 1.5

Pokúste sa nájsť najvšeobecnejší typ termu: $$\lambda f.\lambda x:Bool. (f\ 1 )\ (f\ x)$$

Úloha 1.6

Majme daný nasledujúci kontext: $$\Gamma=\{add: Nat \rightarrow Nat \rightarrow Nat\}$$ Pokúste sa nájsť najvšeobecnejší typ termu: $$t=\lambda f. \lambda x. f~(add ~x~1).$$