Nuprl Lemma : destructor-sum

∀[F,G:Type ⟶ Type].  (destructor{i:l}(T.F[T]) ⇒ destructor{i:l}(T.G[T]) ⇒ destructor{i:l}(T.F[T] + G[T]))


Proof




Definitions occuring in Statement :  destructor: destructor{i:l}(T.F[T]),  uall: ∀[x:A]. B[x],  so_apply: x[s],  implies: P ⇒ Q,  function: x:A ⟶ B[x],  union: left + right,  universe: Type
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  implies: P ⇒ Q,  member: t ∈ T,  destructor: destructor{i:l}(T.F[T]),  so_apply: x[s],  so_lambda: λ2x.t[x],  all: ∀x:A. B[x],  decomp: decomp{i:l}(S.F[S];T;x),  constructor: Constr(T.F[T]),  subtype_rel: A ⊆r B,  ap-con: ap-con(con;L),  prop: ℙ
Lemmas referenced :  subtype_rel_wf,  base_wf,  decomp_wf,  list_wf,  equal_wf,  ap-con_wf,  destructor_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  lambdaFormation,  rename,  introduction,  sqequalHypSubstitution,  isect_memberEquality,  cut,  isectElimination,  setElimination,  thin,  dependent_set_memberEquality,  because_Cache,  hypothesis,  extract_by_obid,  cumulativity,  hypothesisEquality,  equalityTransitivity,  equalitySymmetry,  functionEquality,  applyEquality,  functionExtensionality,  universeEquality,  sqequalRule,  lambdaEquality,  unionElimination,  productElimination,  dependent_pairEquality,  inlEquality,  isectEquality,  setEquality,  addLevel,  levelHypothesis,  unionEquality,  instantiate,  dependent_functionElimination,  independent_functionElimination,  inrEquality

Latex:
\mforall{}[F,G:Type  {}\mrightarrow{}  Type].
    (destructor\{i:l\}(T.F[T])  {}\mRightarrow{}  destructor\{i:l\}(T.G[T])  {}\mRightarrow{}  destructor\{i:l\}(T.F[T]  +  G[T]))



Date html generated: 2018_05_21-PM-08_45_07
Last ObjectModification: 2017_07_26-PM-06_08_53

Theory : general


Home Index