rulesubsection23.25ex plus 1ex minus .2ex1.5ex plus .2ex
.
H >> x:A->B in
by intro [new y]
*
>> A in
*
y:A >> B[y/x]
in
.
H >>
ext A->B by intro function
*
>>
ext A
*
>>
ext B
.
H >> A->B in
by intro
*
>> A in
*
>> B in
rulesubsection23.25ex plus 1ex minus .2ex1.5ex plus .2ex
.
H >>
x.b in y:A->B by intro at
[new z]
*
z:A >> b[z/x]
in B[z/y]
*
>> A in
rulesubsection23.25ex plus 1ex minus .2ex1.5ex plus .2ex
by elim f on a [new y]
>> a in A
*
y:B[a/x]
,
y=f(a) in B[a/x]
>> T ext t
.
H,f:(x:A->B),
>> T ext t[f(a)/y]
by elim f [new y]
*
>> A ext a
*
y:B >> T ext t
The first form is used when x occurs free in B, the second when it doesn't.
.
H >> f(a) in B[a/x]
by intro using x:A->B
*
>> f in x:A->B
*
>> a in A
rulesubsection23.25ex plus 1ex minus .2ex1.5ex plus .2ex
rulesubsection23.25ex plus 1ex minus .2ex1.5ex plus .2ex