{ [Info:Type]
    es:EO+(Info)
      [Q1,Q2,R:E  E  ]. [A,B:Type].
        Ia1,Ia2:EClass(A). Ib1,Ib2:EClass(B). f:E([Ia1?Ia2])  B.
          (Ia1:Q1 f  Ib1:R
              Ia2:Q2 f  Ib2:R
              [Ia1?Ia2]:Q1|{Ia1}  Q2|{Ia2} f  [Ib1?Ib2]:R) supposing 
             (Ib1  Ib2 = 0 and 
             Ia1  Ia2 = 0) }

{ Proof }



Definitions occuring in Statement :  Q-R-glued: Ia:Qa f  Ib:Rb,  es-interface-disjoint: X  Y = 0,  es-E-interface: E(X),  es-interface-predicate: {I},  cond-class: [X?Y],  eclass: EClass(A[eo; e]),  event-ordering+: EO+(Info),  es-E: E,  uimplies: b supposing a,  uall: [x:A]. B[x],  prop: ,  all: x:A. B[x],  implies: P  Q,  function: x:A  B[x],  universe: Type,  rel_or: R1  R2,  rel-restriction: R|P
Definitions :  uall: [x:A]. B[x],  all: x:A. B[x],  prop: ,  es-E-interface: E(X),  uimplies: b supposing a,  es-interface-disjoint: X  Y = 0,  implies: P  Q,  Q-R-glued: Ia:Qa f  Ib:Rb,  member: t  T,  not: A,  and: P  Q,  assert: b,  false: False,  cand: A c B,  or: P  Q,  btrue: tt,  ifthenelse: if b then t else f fi ,  true: True,  so_lambda: x y.t[x; y],  exists: x:A. B[x],  rev_implies: P  Q,  iff: P  Q,  sq_type: SQType(T),  guard: {T},  so_apply: x[s1;s2],  subtype: S  T
Lemmas :  assert_wf,  in-eclass_wf,  es-interface-top,  es-E_wf,  event-ordering+_inc,  event-ordering+_wf,  cond-class_wf,  es-interface-conditional-domain-iff,  subtype_base_sq,  bool_wf,  bool_subtype_base,  top_wf,  es-E-interface_wf,  Q-R-glues-property,  subtype_rel_function,  es-E-interface-conditional-subtype2,  subtype_rel_self,  Q-R-glued_wf,  es-E-interface-conditional-subtype1,  es-interface-disjoint_wf,  eclass_wf,  assert_elim,  conditional_wf-interface2,  Q-R-glues_wf,  rel_or_wf,  rel-restriction_wf,  es-interface-predicate_wf,  Q-R-glues-conditional

\mforall{}[Info:Type]
    \mforall{}es:EO+(Info)
        \mforall{}[Q1,Q2,R:E  {}\mrightarrow{}  E  {}\mrightarrow{}  \mBbbP{}].  \mforall{}[A,B:Type].
            \mforall{}Ia1,Ia2:EClass(A).  \mforall{}Ib1,Ib2:EClass(B).  \mforall{}f:E([Ia1?Ia2])  {}\mrightarrow{}  B.
                (Ia1:Q1  \mrightarrow{}{}f{}\mrightarrow{}    Ib1:R
                      {}\mRightarrow{}  Ia2:Q2  \mrightarrow{}{}f{}\mrightarrow{}    Ib2:R
                      {}\mRightarrow{}  [Ia1?Ia2]:Q1|\{Ia1\}  \mvee{}  Q2|\{Ia2\}  \mrightarrow{}{}f{}\mrightarrow{}    [Ib1?Ib2]:R)  supposing 
                      (Ib1  \mcap{}  Ib2  =  0  and 
                      Ia1  \mcap{}  Ia2  =  0)


Date html generated: 2011_08_16-PM-06_00_07
Last ObjectModification: 2011_06_20-AM-01_42_19

Home Index