Nuprl Lemma : Q-R-glues-conditional

[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. g1:E(Ib1)  E(Ia1). g2:E(Ib2)  E(Ia2).
        (g1 glues Ia1:Q1 f Ib1:R
            g2 glues Ia2:Q2 f Ib2:R
            [{Ib1}? g1 : g2] glues [Ia1?Ia2]:Q1|{Ia1}  Q2|{Ia2} f [Ib1?Ib2]:R) supposing 
           (Ib1  Ib2 = 0 and 
           Ia1  Ia2 = 0)


Proof not projected




Definitions occuring in Statement :  Q-R-glues: g glues Ia:Qa f Ib:Rb,  es-interface-disjoint: X  Y = 0,  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],  es-E: E,  uimplies: b supposing a,  uall: [x:A]. B[x],  prop: ,  all: x:A. B[x],  implies: P  Q,  lambda: x.A[x],  function: x:A  B[x],  universe: Type,  rel_or: R1  R2,  rel-restriction: R|P,  bool-decider: bool-decider(b)
Definitions :  so_lambda: x y.t[x; y],  suptype: suptype(S; T),  true: True,  ifthenelse: if b then t else f fi ,  guard: {T},  btrue: tt,  or: P  Q,  so_lambda: x.t[x],  subtype: S  T,  cand: A c B,  false: False,  assert: b,  and: P  Q,  not: A,  member: t  T,  implies: P  Q,  es-interface-disjoint: X  Y = 0,  uimplies: b supposing a,  es-E-interface: E(X),  prop: ,  all: x:A. B[x],  uall: [x:A]. B[x],  Q-R-glues: g glues Ia:Qa f Ib:Rb,  es-interface-predicate: {I},  rel_rev_implies: R1  R2,  predicate_rev_implies: P1  P2,  rev_implies: P  Q,  exists: x:A. B[x],  iff: P  Q,  predicate_or: P1  P2,  squash: T,  inject: Inj(A;B;f),  bfalse: ff,  branch: if p:P then A[p] else B fi ,  conditional: [P? f : g],  so_apply: x[s1;s2],  sq_type: SQType(T),  so_apply: x[s],  rel-restriction: R|P,  decidable: Dec(P),  sq_stable: SqStable(P),  unit: Unit,  bool: ,  it:
Lemmas :  assert_elim,  eclass_wf,  es-interface-disjoint_wf,  es-E-interface-subtype,  bool_subtype_base,  bool_wf,  subtype_base_sq,  is-cond-class,  subtype_rel_self,  subtype_rel_sets,  top_wf,  cond-class_wf,  es-E-interface_wf,  subtype_rel_dep_function,  Q-R-glues_wf,  event-ordering+_wf,  event-ordering+_inc,  es-E_wf,  es-interface-top,  in-eclass_wf,  assert_wf,  es-interface-conditional-predicate-equivalent,  weak-antecedent-surjection_functionality_wrt_pred_equiv,  conditional_wf-interface,  predicate_or_wf,  es-interface-predicate_wf,  decidable__assert,  bool-decider_wf,  weak-antecedent-surjection-conditional2,  rel_equivalent_inversion,  rel_equivalent_weakening,  rel_implies_weakening,  predicate_implies_weakening,  Q-R-pre-preserving_functionality_wrt_implies,  es-E-interface-subtype_rel,  equal_wf,  exists_wf,  rel-restriction_wf,  rel_or_wf,  subtype_rel_function,  rel_or_idempotent,  predicate_equivalent_weakening,  not_wf,  conditional_wf,  or_wf,  Q-R-pre-preserving-conditional,  rel-restriction-implies,  decidable_wf,  es-interface-conditional-domain-member,  sq_stable__assert,  conditional_wf2,  assert_of_bnot,  eqff_to_assert,  bnot_wf,  uiff_transitivity,  eqtt_to_assert,  iff_weakening_uiff,  cond-class-val,  es-E-interface-conditional-subtype1,  es-E-interface-conditional-subtype2

\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.  \mforall{}g1:E(Ib1)  {}\mrightarrow{}  E(Ia1).
            \mforall{}g2:E(Ib2)  {}\mrightarrow{}  E(Ia2).
                (g1  glues  Ia1:Q1  {}{}f{}\mrightarrow{}  Ib1:R
                      {}\mRightarrow{}  g2  glues  Ia2:Q2  {}{}f{}\mrightarrow{}  Ib2:R
                      {}\mRightarrow{}  [\{Ib1\}?  g1  :  g2]  glues  [Ia1?Ia2]:Q1|\{Ia1\}  \mvee{}  Q2|\{Ia2\}  {}{}f{}\mrightarrow{}  [Ib1?Ib2]:R)  supposing 
                      (Ib1  \mcap{}  Ib2  =  0  and 
                      Ia1  \mcap{}  Ia2  =  0)


Date html generated: 2012_01_23-PM-12_28_58
Last ObjectModification: 2011_12_13-PM-02_05_12

Home Index