{ 
[Info:Type]. 
[es:EO+(Info)]. 
[A,B:Type]. 
[Ia1,Ia2:EClass(A)].
  
[Ib1,Ib2:EClass(B)]. 
[g1:E(Ib1) 
 E(Ia1)]. 
[g2:E(Ib2) 
 E(Ia2)].
    ([{Ib1}? g1 : g2] 
 E([Ib1?Ib2]) 
 E([Ia1?Ia2])) }
{ Proof }
Definitions occuring in Statement : 
es-E-interface: E(X), 
es-interface-predicate: {I}, 
cond-class: [X?Y], 
in-eclass: e 
 X, 
eclass: EClass(A[eo; e]), 
event-ordering+: EO+(Info), 
conditional: [P? f : g], 
uall:
[x:A]. B[x], 
member: t 
 T, 
lambda:
x.A[x], 
function: x:A 
 B[x], 
universe: Type, 
bool-decider: bool-decider(b)
Definitions : 
uall:
[x:A]. B[x], 
member: t 
 T, 
conditional: [P? f : g], 
prop:
, 
so_lambda: 
x.t[x], 
so_lambda: 
x y.t[x; y], 
es-interface-predicate: {I}, 
es-E-interface: E(X), 
assert:
b, 
or: P 
 Q, 
all:
x:A. B[x], 
implies: P 
 Q, 
guard: {T}, 
btrue: tt, 
ifthenelse: if b then t else f fi , 
true: True, 
so_apply: x[s], 
so_apply: x[s1;s2], 
not:
A, 
iff: P 

 Q, 
and: P 
 Q, 
false: False, 
rev_implies: P 
 Q, 
sq_type: SQType(T), 
uimplies: b supposing a, 
subtype: S 
 T
Lemmas : 
branch_wf2, 
es-interface-predicate_wf, 
es-E-interface_wf, 
cond-class_wf, 
top_wf, 
not_wf, 
es-interface-top, 
eclass_wf, 
es-E_wf, 
event-ordering+_inc, 
event-ordering+_wf, 
bool-decider_wf, 
in-eclass_wf, 
assert_wf, 
es-E-interface-conditional-subtype1, 
is-cond-class, 
es-E-interface-subtype_rel, 
subtype_base_sq, 
bool_wf, 
bool_subtype_base, 
assert_elim
\mforall{}[Info:Type].  \mforall{}[es:EO+(Info)].  \mforall{}[A,B:Type].  \mforall{}[Ia1,Ia2:EClass(A)].  \mforall{}[Ib1,Ib2:EClass(B)].
\mforall{}[g1:E(Ib1)  {}\mrightarrow{}  E(Ia1)].  \mforall{}[g2:E(Ib2)  {}\mrightarrow{}  E(Ia2)].
    ([\{Ib1\}?  g1  :  g2]  \mmember{}  E([Ib1?Ib2])  {}\mrightarrow{}  E([Ia1?Ia2]))
Date html generated:
2011_08_16-PM-05_56_54
Last ObjectModification:
2011_06_20-AM-01_39_42
Home
Index