A.2.9 The natural number type
We give the rules for natural numbers, following Β§1.9 (http://planetmath.org/19thenaturalnumbers).
*[right=-form]
ΞΒ
Ξ β’ : _i
\inferrule*[right=-intro]
ΞΒ
Ξ β’0 :
\inferrule*[right=-intro]
Ξ β’n :
Ξ β’succ(n) :
\inferrule*[right=-elim]
Ξ,x : β’C : _i
Ξ β’c_0 : C[0/x]
Ξ,x : ,y : C β’c_s : C[succ(x)/x]
Ξ β’n :
Ξ β’ind_(x.C,c_0,x.y.c_s,n) : C[n/x]
\inferrule*[right=-comp]
Ξ,x : β’C : _i
Ξ β’c_0 : C[0/x]
Ξ,x : ,y : C β’c_s : C[succ(x)/x]
Ξ β’ind_(x.C,c_0,x.y.c_s,0) β‘c_0 : C[0/x]
\inferrule*[right=-comp]
Ξ,x : β’C : _i
Ξ β’c_0 : C[0/x]
Ξ,x : ,y : C β’c_s : C[succ(x)/x]
Ξ β’n :
Ξβ’
ind
(x.C,c
0
,x.y.c
s
,succ(n))
ββ‘c
s
[n,ind
(x.C,c
0
,x.y.c
s
,n)/x,y] : C[succ(n)/x]
In , is bound in , and and are bound in .
Other inductively defined types follow the same general scheme.
Title | A.2.9 The natural number type |
---|---|
\metatable |