Nuprl Lemma : case-type-comp_wf1

∀[Gamma:j⊢]. ∀[phi,psi:{Gamma ⊢ _:𝔽}]. ∀[A:{Gamma, phi ⊢ _}]. ∀[B:{Gamma, psi ⊢ _}]. ∀[cA:Gamma, phi ⊢ Compositon(A)].
∀[cB:Gamma, psi ⊢ Compositon(B)].
  (case-type-comp(Gamma; phi; psi; A; B; cA; cB)
   ∈ composition-function{j:l,i:l}(Gamma, (phi ∨ psi);(if phi then A else B))) supposing 
     (compatible-composition{j:l, i:l}(Gamma; phi; psi; A; B; cA; cB) and 
     Gamma, (phi ∧ psi) ⊢ A = B)


Proof




Definitions occuring in Statement :  case-type-comp: case-type-comp(G; phi; psi; A; B; cA; cB),  compatible-composition: compatible-composition{j:l, i:l}(Gamma; phi; psi; A; B; cA; cB),  composition-structure: Gamma ⊢ Compositon(A),  composition-function: composition-function{j:l,i:l}(Gamma;A),  case-type: (if phi then A else B),  same-cubical-type: Gamma ⊢ A = B,  context-subset: Gamma, phi,  face-or: (a ∨ b),  face-and: (a ∧ b),  face-type: 𝔽,  cubical-term: {X ⊢ _:A},  cubical-type: {X ⊢ _},  cubical_set: CubicalSet,  uimplies: b supposing a,  uall: ∀[x:A]. B[x],  member: t ∈ T
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  uimplies: b supposing a,  member: t ∈ T,  case-type-comp: case-type-comp(G; phi; psi; A; B; cA; cB),  composition-function: composition-function{j:l,i:l}(Gamma;A),  subtype_rel: A ⊆r B,  face-term-implies: Gamma ⊢ (phi ⇒ psi),  all: ∀x:A. B[x],  implies: P ⇒ Q,  context-subset: Gamma, phi,  bdd-distributive-lattice: BoundedDistributiveLattice,  so_lambda: λ2x.t[x],  prop: ℙ,  and: P ∧ Q,  so_apply: x[s],  cubical-type-at: A(a),  pi1: fst(t),  face-type: 𝔽,  constant-cubical-type: (X),  I_cube: A(I),  functor-ob: ob(F),  face-presheaf: 𝔽,  lattice-point: Point(l),  record-select: r.x,  face_lattice: face_lattice(I),  face-lattice: face-lattice(T;eq),  free-dist-lattice-with-constraints: free-dist-lattice-with-constraints(T;eq;x.Cs[x]),  constrained-antichain-lattice: constrained-antichain-lattice(T;eq;P),  mk-bounded-distributive-lattice: mk-bounded-distributive-lattice,  mk-bounded-lattice: mk-bounded-lattice(T;m;j;z;o),  record-update: r[x := v],  ifthenelse: if b then t else f fi ,  eq_atom: x =a y,  bfalse: ff,  btrue: tt,  csm-id-adjoin: [u],  csm-id: 1(X),  same-cubical-type: Gamma ⊢ A = B,  cand: A c∧ B,  interval-0: 0(𝕀),  csm-ap-term: (t)s,  csm-adjoin: (s;u),  csm-ap: (s)x,  constrained-cubical-term: {Gamma ⊢ _:A[phi |⟶ t]},  cubical-type: {X ⊢ _},  csm-ap-type: (AF)s,  composition-structure: Gamma ⊢ Compositon(A),  guard: {T},  squash: ↓T,  interval-1: 1(𝕀),  compatible-composition: compatible-composition{j:l, i:l}(Gamma; phi; psi; A; B; cA; cB),  true: True,  same-cubical-term: X ⊢ u=v:A,  or: P ∨ Q,  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q,  cubical-term: {X ⊢ _:A},  respects-equality: respects-equality(S;T),  case-type: (if phi then A else B),  cubical-term-at: u(a)
Lemmas referenced :  case-type_wf,  csm-face-or,  csm-face-term-implies,  context-subset_wf,  face-or_wf,  face-1_wf,  subset-cubical-term,  context-subset-is-subset,  face-type_wf,  I_cube_pair_redex_lemma,  lattice-point_wf,  face_lattice_wf,  subtype_rel_set,  bounded-lattice-structure_wf,  lattice-structure_wf,  lattice-axioms_wf,  bounded-lattice-structure-subtype,  bounded-lattice-axioms_wf,  equal_wf,  lattice-meet_wf,  lattice-join_wf,  cubical-term-at_wf,  subtype_rel_self,  lattice-1_wf,  I_cube_wf,  fset_wf,  nat_wf,  cube-context-adjoin_wf,  interval-type_wf,  csm-face-1,  face-forall_wf,  csm-ap-term_wf,  csm-face-type,  csm-same-cubical-type,  face-and_wf,  context-subset-subtype-and,  context-subset-subtype-and2,  csm-face-and,  context-subset-map,  cube_set_map_subtype3,  sub_cubical_set_self,  csm-ap-type_wf,  subset-cubical-type,  sub_cubical_set_functionality,  constrained-cubical-term_wf,  cubical_set_cumulativity-i-j,  csm-id-adjoin_wf-interval-0,  cubical-type-cumulativity2,  cubical-term-eqcd,  cube_set_map_wf,  cubical_set_wf,  compatible-composition_wf,  same-cubical-type_wf,  face-term-implies-subset,  face-term-and-implies1,  face-term-and-implies2,  composition-structure_wf,  cubical-type_wf,  istype-cubical-term,  csm-case-type,  context-iterated-subset1,  case-type-same1,  sub_cubical_set_transitivity,  context-iterated-subset2,  cc-fst_wf_interval,  context-adjoin-subset2,  face-forall-implies,  context-subset-swap,  sub_cubical_set_functionality2,  csm-id-adjoin_wf,  interval-0_wf,  face-forall-implies-0,  thin-context-subset,  context-subset-term-subtype,  face-forall-map,  case-type-same2,  interval-1_wf,  cube_set_map_subtype2,  face-term-and-implies,  face-forall-implies-1,  case-term-wf4,  squash_wf,  true_wf,  face-forall-and,  context-adjoin-subset,  istype-universe,  cubical-term_wf,  composition-in-subset,  same-cubical-type-by-cases,  face-term-or-implies,  face-term-implies-or,  face-term-implies_wf,  csm-id-adjoin-subset,  iff_weakening_equal,  csm-id-adjoin_wf-interval-1,  face-1-implies-subset,  sub_cubical_set_wf,  face-forall-or,  implies-face-forall-holds,  context-iterated-subset0,  subset-cubical-term2,  respects-equality-set,  cubical-type-at_wf,  all_wf,  names-hom_wf,  cube-set-restriction_wf,  cubical-type-ap-morph_wf,  istype-cubical-type-at,  subset-I_cube,  subtype-respects-equality,  subtype_rel_dep_function,  respects-equality-context-subset-term,  same-cubical-term-by-cases,  case-term_wf2,  cubical_type_ap_morph_pair_lemma,  case-term-equal-right,  context-iterated-subset,  case-term-equal-left
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation_alt,  cut,  introduction,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  because_Cache,  hypothesisEquality,  independent_isectElimination,  hypothesis,  functionExtensionality,  sqequalRule,  rename,  Error :memTop,  applyEquality,  lambdaFormation_alt,  dependent_functionElimination,  setElimination,  equalityIstype,  universeIsType,  instantiate,  lambdaEquality_alt,  productEquality,  cumulativity,  isectEquality,  inhabitedIsType,  equalityTransitivity,  equalitySymmetry,  independent_pairFormation,  universeEquality,  hyp_replacement,  independent_functionElimination,  applyLambdaEquality,  dependent_set_memberEquality_alt,  productElimination,  promote_hyp,  imageMemberEquality,  baseClosed,  imageElimination,  natural_numberEquality,  inrFormation_alt,  inlFormation_alt,  functionEquality,  functionIsType

Latex:
\mforall{}[Gamma:j\mvdash{}].  \mforall{}[phi,psi:\{Gamma  \mvdash{}  \_:\mBbbF{}\}].  \mforall{}[A:\{Gamma,  phi  \mvdash{}  \_\}].  \mforall{}[B:\{Gamma,  psi  \mvdash{}  \_\}].
\mforall{}[cA:Gamma,  phi  \mvdash{}  Compositon(A)].  \mforall{}[cB:Gamma,  psi  \mvdash{}  Compositon(B)].
    (case-type-comp(Gamma;  phi;  psi;  A;  B;  cA;  cB)
      \mmember{}  composition-function\{j:l,i:l\}(Gamma,  (phi  \mvee{}  psi);(if  phi  then  A  else  B)))  supposing 
          (compatible-composition\{j:l,  i:l\}(Gamma;  phi;  psi;  A;  B;  cA;  cB)  and 
          Gamma,  (phi  \mwedge{}  psi)  \mvdash{}  A  =  B)



Date html generated: 2020_05_20-PM-05_17_00
Last ObjectModification: 2020_04_18-PM-06_13_32

Theory : cubical!type!theory


Home Index