Nuprl Lemma : lift-test
∀[t:Top]
((let x,y = let a,b = t
in <b, a>
in x + y ~ let a,b = t
in b + a)
∧ (let x,y = case t of inl(a) => <1, 2> | inr(b) => <3, 4>
in x + y ~ case t of inl(a) => 3 | inr(b) => 7)
∧ (let x,y = if t=33 then <1, 2> else <3, 4>
in x + y ~ if t=33 then 3 else 7))
Proof
Definitions occuring in Statement :
uall: ∀[x:A]. B[x]
,
top: Top
,
and: P ∧ Q
,
int_eq: if a=b then c else d
,
spread: spread def,
pair: <a, b>
,
decide: case b of inl(x) => s[x] | inr(y) => t[y]
,
add: n + m
,
natural_number: $n
,
sqequal: s ~ t
Definitions unfolded in proof :
uall: ∀[x:A]. B[x]
,
top: Top
,
and: P ∧ Q
,
so_lambda: so_lambda(x,y,z,w.t[x; y; z; w])
,
member: t ∈ T
,
so_apply: x[s1;s2;s3;s4]
,
so_lambda: λ2x y.t[x; y]
,
so_apply: x[s1;s2]
,
uimplies: b supposing a
,
so_lambda: λ2x.t[x]
,
so_apply: x[s]
Lemmas referenced :
lifting-strict-int_eq,
lifting-strict-decide,
strict4-spread,
lifting-strict-spread
Rules used in proof :
sqequalSubstitution,
sqequalRule,
sqequalTransitivity,
computationStep,
sqequalReflexivity,
cut,
lemma_by_obid,
sqequalHypSubstitution,
isectElimination,
thin,
baseClosed,
isect_memberEquality,
voidElimination,
voidEquality,
independent_isectElimination,
hypothesis,
isect_memberFormation,
introduction,
independent_pairFormation,
productElimination,
independent_pairEquality,
sqequalAxiom,
isectEquality
Latex:
\mforall{}[t:Top]
((let x,y = let a,b = t
in <b, a>
in x + y \msim{} let a,b = t
in b + a)
\mwedge{} (let x,y = case t of inl(a) => ə, 2> | inr(b) => ɛ, 4>
in x + y \msim{} case t of inl(a) => 3 | inr(b) => 7)
\mwedge{} (let x,y = if t=33 then ə, 2> else ɛ, 4>
in x + y \msim{} if t=33 then 3 else 7))
Date html generated:
2016_05_15-PM-06_34_31
Last ObjectModification:
2016_01_16-AM-09_54_27
Theory : general
Home
Index