{ 
[Info:Type]
    
es:EO+(Info)
      
[A,B:Type].
        
Ia:EClass(A). 
Ib,Ic:EClass(B). 
f1:E(Ia) 
 B.
          ((glued(es;B;f1;Ia;Ib) 
 glued(es;B;
e.Ib(e);Ib;Ic))
          
 glued(es;B;f1;Ia;Ic)) }
{ Proof }
Definitions occuring in Statement : 
glued: glued(es;B;f;Ia;Ib), 
es-E-interface: E(X), 
eclass-val: X(e), 
eclass: EClass(A[eo; e]), 
event-ordering+: EO+(Info), 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
implies: P 
 Q, 
and: P 
 Q, 
lambda:
x.A[x], 
function: x:A 
 B[x], 
universe: Type
Definitions : 
uall:
[x:A]. B[x], 
all:
x:A. B[x], 
member: t 
 T, 
so_lambda: 
x y.t[x; y], 
implies: P 
 Q, 
and: P 
 Q, 
cand: A c
 B, 
prop:
, 
assert:
b, 
btrue: tt, 
ifthenelse: if b then t else f fi , 
true: True, 
compose: f o g, 
so_apply: x[s1;s2], 
es-E-interface: E(X), 
uimplies: b supposing a, 
sq_type: SQType(T), 
guard: {T}, 
subtype: S 
 T
Lemmas : 
glued-composes, 
eclass_wf, 
es-E_wf, 
event-ordering+_inc, 
event-ordering+_wf, 
glued_wf, 
eclass-val_wf, 
subtype_base_sq, 
bool_wf, 
bool_subtype_base, 
es-E-interface_wf, 
es-interface-top, 
assert_elim, 
in-eclass_wf, 
compose_wf
\mforall{}[Info:Type]
    \mforall{}es:EO+(Info)
        \mforall{}[A,B:Type].
            \mforall{}Ia:EClass(A).  \mforall{}Ib,Ic:EClass(B).  \mforall{}f1:E(Ia)  {}\mrightarrow{}  B.
                ((glued(es;B;f1;Ia;Ib)  \mwedge{}  glued(es;B;\mlambda{}e.Ib(e);Ib;Ic))  {}\mRightarrow{}  glued(es;B;f1;Ia;Ic))
Date html generated:
2011_08_16-PM-06_01_43
Last ObjectModification:
2011_06_20-AM-01_45_04
Home
Index