Nuprl Lemma : ds_property
∀[A:Type]. ∀[d:DS(A)]. ∀[a:A]. ∀[x,y:dstype(A; d; a)].  {uiff(x = y ∈ dstype(A; d; a);↑x = y)}
Proof
Definitions occuring in Statement : 
eq_ds: x = y, 
dstype: dstype(TypeNames; d; a), 
discrete_struct: DS(A), 
assert: ↑b, 
uiff: uiff(P;Q), 
uall: ∀[x:A]. B[x], 
guard: {T}, 
universe: Type, 
equal: s = t ∈ T
Definitions unfolded in proof : 
guard: {T}, 
uall: ∀[x:A]. B[x], 
member: t ∈ T, 
eq_ds: x = y, 
dseq: dseq(d;a), 
uiff: uiff(P;Q), 
and: P ∧ Q, 
uimplies: b supposing a, 
implies: P ⇒ Q, 
prop: ℙ, 
discrete_struct: DS(A), 
dstype: dstype(TypeNames; d; a), 
pi1: fst(t), 
pi2: snd(t)
Lemmas referenced : 
deq_property, 
dstype_wf, 
assert_witness, 
discrete_struct_wf, 
eq_ds_wf, 
equal_wf, 
assert_wf
Rules used in proof : 
sqequalSubstitution, 
sqequalRule, 
sqequalReflexivity, 
sqequalTransitivity, 
computationStep, 
isect_memberFormation, 
introduction, 
cut, 
lemma_by_obid, 
sqequalHypSubstitution, 
isectElimination, 
thin, 
hypothesisEquality, 
hypothesis, 
isect_memberEquality, 
productElimination, 
independent_pairEquality, 
because_Cache, 
independent_functionElimination, 
equalityTransitivity, 
equalitySymmetry, 
axiomEquality, 
universeEquality, 
applyEquality
Latex:
\mforall{}[A:Type].  \mforall{}[d:DS(A)].  \mforall{}[a:A].  \mforall{}[x,y:dstype(A;  d;  a)].    \{uiff(x  =  y;\muparrow{}x  =  y)\}
Date html generated:
2016_05_14-PM-03_24_26
Last ObjectModification:
2015_12_26-PM-06_21_49
Theory : decidable!equality
Home
Index