Nuprl Lemma : Q-R-glues-split
∀[Info:Type]. ∀[P:es:EO+(Info) ─→ E ─→ ℙ].
  ∀p:∀es:EO+(Info). ∀e:E.  Dec(P[es;e])
    ∀[A,B:Type].
      ∀Ia:EClass(A). ∀Ib:EClass(B).
        ((Singlevalued(Ia) ∧ Singlevalued(Ib))
        
⇒ (∀g1:es:EO+(Info) ─→ E(Ib) ─→ E. ∀q:∀es:EO+(Info). ∀e:E.  Dec((↑e ∈b Ib) c∧ P[es;g1 es e]). ∀es:EO+(Info).
              ∀[Q,R:E ─→ E ─→ ℙ].
                ((∀x,y:E.  ((Q x y) 
⇒ (P[es;x] 
⇐⇒ P[es;y])))
                
⇒ (∀f:E(Ia) ─→ B. ∀g2:E(Ib) ─→ E.
                      (g1 es glues (Ia|p):Q ──f─→ (Ib|q):R
                      
⇒ g2 glues (Ia|¬p):Q ──f─→ (Ib|¬q):R
                      
⇒ [λe.P[es;g1 es e]? g1 es : g2] glues Ia:Q ──f─→ Ib:R)))))
Proof
Definitions occuring in Statement : 
Q-R-glues: g glues Ia:Qa ──f─→ Ib:Rb
, 
es-interface-co-restrict: (I|¬p)
, 
es-interface-restrict: (I|p)
, 
es-E-interface: E(X)
, 
sv-class: Singlevalued(X)
, 
in-eclass: e ∈b X
, 
eclass: EClass(A[eo; e])
, 
event-ordering+: EO+(Info)
, 
conditional: [P? f : g]
, 
es-E: E
, 
compose: f o g
, 
assert: ↑b
, 
decidable: Dec(P)
, 
uall: ∀[x:A]. B[x]
, 
cand: A c∧ B
, 
prop: ℙ
, 
so_apply: x[s1;s2]
, 
all: ∀x:A. B[x]
, 
iff: P 
⇐⇒ Q
, 
implies: P 
⇒ Q
, 
and: P ∧ Q
, 
apply: f a
, 
lambda: λx.A[x]
, 
function: x:A ─→ B[x]
, 
universe: Type
Lemmas : 
Q-R-glues_wf, 
es-interface-co-restrict_wf, 
subtype_rel_dep_function, 
es-E-interface_wf, 
top_wf, 
es-E-interface-co-restrict, 
subtype_rel_self, 
es-interface-restrict_wf, 
es-E_wf, 
event-ordering+_subtype, 
assert_wf, 
in-eclass_wf, 
es-E-interface-restrict, 
es-interface-subtype_rel2, 
all_wf, 
iff_wf, 
decidable_wf, 
sv-class_wf, 
eclass_wf, 
event-ordering+_wf, 
cond-class_wf, 
es-E-interface-conditional-subtype_rel, 
es-interface-restrict-disjoint, 
Q-R-glues-conditional2, 
or_wf, 
es-is-interface-restrict, 
assert_elim, 
subtype_base_sq, 
bool_wf, 
bool_subtype_base, 
es-is-interface-co-restrict, 
bool-decider_wf, 
equal_wf, 
es-interface-restrict-conditional, 
es-E-interface_functionality, 
and_wf, 
member_wf, 
squash_wf, 
true_wf, 
equal_functionality_wrt_subtype_rel2, 
subtype_rel_weakening, 
ext-eq_weakening, 
rel_equivalent_wf, 
rel_or_wf, 
rel-restriction_wf, 
es-interface-predicate_wf, 
Q-R-glues_functionality, 
event-ordering+_cumulative2
Latex:
\mforall{}[Info:Type].  \mforall{}[P:es:EO+(Info)  {}\mrightarrow{}  E  {}\mrightarrow{}  \mBbbP{}].
    \mforall{}p:\mforall{}es:EO+(Info).  \mforall{}e:E.    Dec(P[es;e])
        \mforall{}[A,B:Type].
            \mforall{}Ia:EClass(A).  \mforall{}Ib:EClass(B).
                ((Singlevalued(Ia)  \mwedge{}  Singlevalued(Ib))
                {}\mRightarrow{}  (\mforall{}g1:es:EO+(Info)  {}\mrightarrow{}  E(Ib)  {}\mrightarrow{}  E.  \mforall{}q:\mforall{}es:EO+(Info).  \mforall{}e:E.
                                                                                                  Dec((\muparrow{}e  \mmember{}\msubb{}  Ib)  c\mwedge{}  P[es;g1  es  e]).  \mforall{}es:EO+(Info).
                            \mforall{}[Q,R:E  {}\mrightarrow{}  E  {}\mrightarrow{}  \mBbbP{}].
                                ((\mforall{}x,y:E.    ((Q  x  y)  {}\mRightarrow{}  (P[es;x]  \mLeftarrow{}{}\mRightarrow{}  P[es;y])))
                                {}\mRightarrow{}  (\mforall{}f:E(Ia)  {}\mrightarrow{}  B.  \mforall{}g2:E(Ib)  {}\mrightarrow{}  E.
                                            (g1  es  glues  (Ia|p):Q  {}{}f{}\mrightarrow{}  (Ib|q):R
                                            {}\mRightarrow{}  g2  glues  (Ia|\mneg{}p):Q  {}{}f{}\mrightarrow{}  (Ib|\mneg{}q):R
                                            {}\mRightarrow{}  [\mlambda{}e.P[es;g1  es  e]?  g1  es  :  g2]  glues  Ia:Q  {}{}f{}\mrightarrow{}  Ib:R)))))
Date html generated:
2015_07_21-PM-04_11_02
Last ObjectModification:
2015_01_27-PM-06_05_51
Home
Index