Nuprl Lemma : mk_deq-subtype

`∀[T,S:Type].  ∀[p:∀x,y:S.  Dec(x = y ∈ S)]. (mk_deq(p) ∈ EqDecider(T)) supposing strong-subtype(T;S)`

Proof

Definitions occuring in Statement :  mk_deq: `mk_deq(p)` deq: `EqDecider(T)` strong-subtype: `strong-subtype(A;B)` decidable: `Dec(P)` uimplies: `b supposing a` uall: `∀[x:A]. B[x]` all: `∀x:A. B[x]` member: `t ∈ T` universe: `Type` equal: `s = t ∈ T`
Definitions unfolded in proof :  uall: `∀[x:A]. B[x]` uimplies: `b supposing a` member: `t ∈ T` implies: `P `` Q` guard: `{T}` subtype_rel: `A ⊆r B` deq: `EqDecider(T)` so_lambda: `λ2x.t[x]` so_apply: `x[s]` strong-subtype: `strong-subtype(A;B)` cand: `A c∧ B` all: `∀x:A. B[x]` iff: `P `⇐⇒` Q` and: `P ∧ Q` prop: `ℙ` rev_implies: `P `` Q`
Lemmas referenced :  strong-subtype-implies mk_deq_wf subtype_rel_sets bool_wf all_wf iff_wf equal_wf assert_wf subtype_rel_set subtype_rel_dep_function subtype_rel_self decidable_wf strong-subtype_wf equal_functionality_wrt_subtype_rel2
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation cut lemma_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality independent_functionElimination hypothesis applyEquality functionEquality sqequalRule lambdaEquality independent_isectElimination because_Cache productElimination lambdaFormation independent_pairFormation universeEquality equalityTransitivity equalitySymmetry dependent_functionElimination

Latex:
\mforall{}[T,S:Type].    \mforall{}[p:\mforall{}x,y:S.    Dec(x  =  y)].  (mk\_deq(p)  \mmember{}  EqDecider(T))  supposing  strong-subtype(T;S)

Date html generated: 2016_05_14-AM-06_06_34
Last ObjectModification: 2015_12_26-AM-11_46_51

Theory : equality!deciders

Home Index