Nuprl Lemma : order_split

∀[T:Type]. ∀[R:T ⟶ T ⟶ ℙ].
  (Order(T;x,y.R[x;y])
  ⇒ (∀x,y:T.  Dec(x = y ∈ T))
  ⇒ (∀a,b:T.  (R[a;b] ⇐⇒ strict_part(x,y.R[x;y];a;b) ∨ (a = b ∈ T))))


Proof




Definitions occuring in Statement :  order: Order(T;x,y.R[x; y]),  strict_part: strict_part(x,y.R[x; y];a;b),  decidable: Dec(P),  uall: ∀[x:A]. B[x],  prop: ℙ,  so_apply: x[s1;s2],  all: ∀x:A. B[x],  iff: P ⇐⇒ Q,  implies: P ⇒ Q,  or: P ∨ Q,  function: x:A ⟶ B[x],  universe: Type,  equal: s = t ∈ T
Definitions unfolded in proof :  strict_part: strict_part(x,y.R[x; y];a;b),  uall: ∀[x:A]. B[x],  implies: P ⇒ Q,  all: ∀x:A. B[x],  iff: P ⇐⇒ Q,  and: P ∧ Q,  order: Order(T;x,y.R[x; y]),  anti_sym: AntiSym(T;x,y.R[x; y]),  trans: Trans(T;x,y.E[x; y]),  refl: Refl(T;x,y.E[x; y]),  member: t ∈ T,  prop: ℙ,  so_apply: x[s1;s2],  rev_implies: P ⇐ Q,  subtype_rel: A ⊆r B,  so_lambda: λ2x.t[x],  so_apply: x[s],  so_lambda: λ2x y.t[x; y],  decidable: Dec(P),  or: P ∨ Q,  cand: A c∧ B,  not: ¬A,  false: False,  guard: {T}
Lemmas referenced :  or_wf,  subtype_rel_self,  not_wf,  equal_wf,  all_wf,  decidable_wf,  order_wf,  and_wf
Rules used in proof :  sqequalSubstitution,  sqequalRule,  sqequalReflexivity,  sqequalTransitivity,  computationStep,  Error :isect_memberFormation_alt,  lambdaFormation,  independent_pairFormation,  sqequalHypSubstitution,  productElimination,  thin,  applyEquality,  hypothesisEquality,  cut,  introduction,  extract_by_obid,  isectElimination,  productEquality,  hypothesis,  instantiate,  universeEquality,  lambdaEquality,  Error :functionIsType,  Error :universeIsType,  Error :inhabitedIsType,  dependent_functionElimination,  unionElimination,  inrFormation,  inlFormation,  independent_functionElimination,  hyp_replacement,  equalitySymmetry,  dependent_set_memberEquality,  applyLambdaEquality,  setElimination,  rename

Latex:
\mforall{}[T:Type].  \mforall{}[R:T  {}\mrightarrow{}  T  {}\mrightarrow{}  \mBbbP{}].
    (Order(T;x,y.R[x;y])
    {}\mRightarrow{}  (\mforall{}x,y:T.    Dec(x  =  y))
    {}\mRightarrow{}  (\mforall{}a,b:T.    (R[a;b]  \mLeftarrow{}{}\mRightarrow{}  strict\_part(x,y.R[x;y];a;b)  \mvee{}  (a  =  b))))



Date html generated: 2019_06_20-PM-00_29_53
Last ObjectModification: 2018_09_26-PM-00_04_55

Theory : rel_1


Home Index