Function type

Type

context $X, Y$ … type
context $\Gamma$ … context
rule ${\large\frac{\Gamma,\,x\ :\ X\ \vdash\ y\ :\ Y}{\Gamma\ \vdash\ \lambda x.\,y\ :\ X\to Y}}$ (lambda abstraction)
rule ${\large\frac{\Gamma\ \vdash\ f\ :\ X\to Y\hspace{1cm}\Gamma\ \vdash\ x\ :\ X}{\Gamma\ \vdash\ f\,x\ :\ Y}}$ (function application)

Discussion

Parse ${\large\frac{\Gamma,\,x\ :\ X\ \vdash\ y\ :\ Y}{\Gamma\ \vdash\ \lambda x.\,y\ :\ X\to Y}}$ as ${\large\frac{(\Gamma,\,(x\ :\ X))\ \vdash\ (y\ :\ Y)}{\Gamma\ \vdash\ ((\lambda x.\,y)\ :\ (X\to Y))}}$.

Note that from the wikis perspective, the described type theory is an object language and in it, the context $\Gamma$ is a list of judgements, alla '$a:A$'. That's not to be confused with the context of the meta language (blue boxes) where we also use the notations '$a$…$A$' or '$a\in A$'.

Parents

Element of

Link to graph
Log In
Improvements of the human condition