Nuprl Lemma : strong-subtype-b-union
∀[A,B:Type].  strong-subtype(A;A ⋃ B) ∧ strong-subtype(B;A ⋃ B) supposing ¬A ⋂ B
Proof
Definitions occuring in Statement : 
strong-subtype: strong-subtype(A;B)
, 
isect2: T1 ⋂ T2
, 
b-union: A ⋃ B
, 
uimplies: b supposing a
, 
uall: ∀[x:A]. B[x]
, 
not: ¬A
, 
and: P ∧ Q
, 
universe: Type
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x]
, 
member: t ∈ T
, 
uimplies: b supposing a
, 
strong-subtype: strong-subtype(A;B)
, 
subtype_rel: A ⊆r B
, 
not: ¬A
, 
implies: P 
⇒ Q
, 
false: False
, 
cand: A c∧ B
, 
so_lambda: λ2x.t[x]
, 
so_apply: x[s]
, 
and: P ∧ Q
, 
prop: ℙ
, 
isect2: T1 ⋂ T2
, 
bool: 𝔹
, 
unit: Unit
, 
it: ⋅
, 
btrue: tt
, 
ifthenelse: if b then t else f fi 
, 
bfalse: ff
, 
uiff: uiff(P;Q)
Lemmas referenced : 
isect2_wf, 
subtype_rel_set, 
exists_wf, 
equal_wf, 
strong-subtype_witness, 
b-union_wf, 
not_wf, 
strong-subtype-b-union-better, 
strong-subtype_transitivity, 
strong-subtype-void, 
strong-subtype-ext-equal, 
isect2_subtype_rel2, 
isect2_subtype_rel, 
bool_wf, 
subtype_rel_b-union_iff, 
subtype_rel_b-union-right, 
subtype_rel_b-union-left
Rules used in proof : 
sqequalSubstitution, 
sqequalTransitivity, 
computationStep, 
sqequalReflexivity, 
isect_memberFormation, 
introduction, 
cut, 
lambdaEquality, 
sqequalHypSubstitution, 
independent_functionElimination, 
thin, 
hypothesis, 
voidElimination, 
lemma_by_obid, 
isectElimination, 
hypothesisEquality, 
independent_pairFormation, 
voidEquality, 
sqequalRule, 
applyEquality, 
independent_isectElimination, 
productElimination, 
independent_pairEquality, 
because_Cache, 
isect_memberEquality, 
equalityTransitivity, 
equalitySymmetry, 
universeEquality, 
unionElimination, 
equalityElimination
Latex:
\mforall{}[A,B:Type].    strong-subtype(A;A  \mcup{}  B)  \mwedge{}  strong-subtype(B;A  \mcup{}  B)  supposing  \mneg{}A  \mcap{}  B
Date html generated:
2016_05_13-PM-04_12_00
Last ObjectModification:
2015_12_26-AM-11_21_32
Theory : subtype_1
Home
Index