{ 
[A,C,B:Type]. 
[eqa:EqDecider(A)]. 
[eqc,eqc':EqDecider(C)]. 
[r:A 
 C].
  
[f:a:A fp-> B]. 
[a:A]. 
[z:B].
    rename(r;f)(r a)?z = f(a)?z supposing Inj(A;C;r) }
{ Proof }
Definitions occuring in Statement : 
fpf-rename: rename(r;f), 
fpf-cap: f(x)?z, 
fpf: a:A fp-> B[a], 
inject: Inj(A;B;f), 
uimplies: b supposing a, 
uall:
[x:A]. B[x], 
apply: f a, 
function: x:A 
 B[x], 
universe: Type, 
equal: s = t, 
deq: EqDecider(T)
Definitions : 
so_lambda: 
x.t[x], 
member: t 
 T, 
not:
A, 
implies: P 
 Q, 
false: False, 
so_apply: x[s], 
all:
x:A. B[x]
Lemmas : 
top_wf, 
fpf_wf, 
fpf-trivial-subtype-top
\mforall{}[A,C,B:Type].  \mforall{}[eqa:EqDecider(A)].  \mforall{}[eqc,eqc':EqDecider(C)].  \mforall{}[r:A  {}\mrightarrow{}  C].  \mforall{}[f:a:A  fp->  B].  \mforall{}[a:A].
\mforall{}[z:B].
    rename(r;f)(r  a)?z  =  f(a)?z  supposing  Inj(A;C;r)
Date html generated:
2011_08_10-AM-08_04_45
Last ObjectModification:
2011_06_18-AM-08_22_46
Home
Index