Nuprl Lemma : pi-comp_wf1

∀[Gamma:j⊢]. ∀[A:{Gamma ⊢ _}]. ∀[B:{Gamma.A ⊢ _}]. ∀[cA:Gamma ⊢ CompOp(A)]. ∀[cB:Gamma.A ⊢ CompOp(B)].
  (pi-comp(Gamma;A;B;cA;cB) ∈ I:fset(ℕ)
   ⟶ i:{i:ℕ| ¬i ∈ I} 
   ⟶ rho:Gamma(I+i)
   ⟶ phi:𝔽(I)
   ⟶ mu:{I+i,s(phi) ⊢ _:(ΠA B)<rho> o iota}
   ⟶ lambda:cubical-path-0(Gamma;ΠA B;I;i;rho;phi;mu)
   ⟶ J:fset(ℕ)
   ⟶ f:J ⟶ I
   ⟶ u1:A(f((i1)(rho)))
   ⟶ let j = new-name(J) in
       let nu = pi-comp-nu(Gamma;A;cA;I;i;rho;J;f;u1;j) in
       cubical-path-1(Gamma.A;B;J;j;(f,i=j(rho);nu);f(phi);pi-comp-app(Gamma;A;I;i;rho;phi;mu;J;f;j;nu)))


Proof




Definitions occuring in Statement :  pi-comp: pi-comp(Gamma;A;B;cA;cB),  pi-comp-app: pi-comp-app(Gamma;A;I;i;rho;phi;mu;J;f;j;nu),  pi-comp-nu: pi-comp-nu(Gamma;A;cA;I;i;rho;J;f;u1;j),  composition-op: Gamma ⊢ CompOp(A),  cubical-path-1: cubical-path-1(Gamma;A;I;i;rho;phi;u),  cubical-path-0: cubical-path-0(Gamma;A;I;i;rho;phi;u),  cubical-pi: ΠA B,  cc-adjoin-cube: (v;u),  cube-context-adjoin: X.A,  cubical-term: {X ⊢ _:A},  csm-ap-type: (AF)s,  cubical-type-at: A(a),  cubical-type: {X ⊢ _},  subset-iota: iota,  cubical-subset: I,psi,  face-presheaf: 𝔽,  csm-comp: G o F,  context-map: <rho>,  formal-cube: formal-cube(I),  cube-set-restriction: f(s),  I_cube: A(I),  cubical_set: CubicalSet,  nc-e': g,i=j,  nc-1: (i1),  nc-s: s,  new-name: new-name(I),  add-name: I+i,  names-hom: I ⟶ J,  fset-member: a ∈ s,  fset: fset(T),  int-deq: IntDeq,  nat: ℕ,  let: let,  uall: ∀[x:A]. B[x],  not: ¬A,  member: t ∈ T,  set: {x:A| B[x]} ,  function: x:A ⟶ B[x]
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  member: t ∈ T,  pi-comp: pi-comp(Gamma;A;B;cA;cB),  all: ∀x:A. B[x],  implies: P ⇒ Q,  has-value: (a)↓,  subtype_rel: A ⊆r B,  prop: ℙ,  uimplies: b supposing a,  so_lambda: λ2x.t[x],  so_apply: x[s],  nat: ℕ,  let: let,  composition-op: Gamma ⊢ CompOp(A),  ge: i ≥ j ,  decidable: Dec(P),  or: P ∨ Q,  not: ¬A,  satisfiable_int_formula: satisfiable_int_formula(fmla),  exists: ∃x:A. B[x],  false: False,  and: P ∧ Q
Lemmas referenced :  new-name_wf,  value-type-has-value,  nat_wf,  not_wf,  fset-member_wf,  int-deq_wf,  set-value-type,  istype-nat,  le_wf,  istype-int,  int-value-type,  cc-adjoin-cube_wf,  add-name_wf,  cube-set-restriction_wf,  nc-e'_wf,  pi-comp-nu_wf,  subtype_rel-equal,  cubical-type-at_wf,  nc-r_wf,  trivial-member-add-name1,  nc-r'_wf,  nat_properties,  decidable__le,  full-omega-unsat,  intformand_wf,  intformnot_wf,  intformle_wf,  itermConstant_wf,  itermVar_wf,  int_formula_prop_and_lemma,  int_formula_prop_not_lemma,  int_formula_prop_le_lemma,  int_term_value_constant_lemma,  int_term_value_var_lemma,  int_formula_prop_wf,  istype-le,  face-presheaf_wf2,  pi-comp-app_wf,  pi-comp-lambda_wf,  cubical_set_cumulativity-i-j,  cubical-type-cumulativity2,  cube-context-adjoin_wf,  nc-1_wf,  names-hom_wf,  cubical-path-0_wf,  cubical-pi_wf,  cubical-term_wf,  cubical-subset_wf,  nc-s_wf,  f-subset-add-name,  csm-ap-type_wf,  cubical-type-cumulativity,  csm-comp_wf,  formal-cube_wf1,  subset-iota_wf,  context-map_wf,  I_cube_wf,  strong-subtype-deq-subtype,  strong-subtype-set3,  strong-subtype-self,  fset_wf,  composition-op_wf,  cubical-type_wf,  cubical_set_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation_alt,  introduction,  cut,  functionExtensionality,  sqequalRule,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  hypothesisEquality,  hypothesis,  inhabitedIsType,  lambdaFormation_alt,  rename,  callbyvalueReduce,  setEquality,  applyEquality,  because_Cache,  independent_isectElimination,  lambdaEquality_alt,  intEquality,  natural_numberEquality,  setElimination,  dependent_functionElimination,  dependent_set_memberEquality_alt,  unionElimination,  approximateComputation,  independent_functionElimination,  dependent_pairFormation_alt,  int_eqEquality,  Error :memTop,  independent_pairFormation,  universeIsType,  voidElimination,  instantiate,  equalityIstype,  equalityTransitivity,  equalitySymmetry,  axiomEquality,  isect_memberEquality_alt,  isectIsTypeImplies

Latex:
\mforall{}[Gamma:j\mvdash{}].  \mforall{}[A:\{Gamma  \mvdash{}  \_\}].  \mforall{}[B:\{Gamma.A  \mvdash{}  \_\}].  \mforall{}[cA:Gamma  \mvdash{}  CompOp(A)].
\mforall{}[cB:Gamma.A  \mvdash{}  CompOp(B)].
    (pi-comp(Gamma;A;B;cA;cB)  \mmember{}  I:fset(\mBbbN{})
      {}\mrightarrow{}  i:\{i:\mBbbN{}|  \mneg{}i  \mmember{}  I\} 
      {}\mrightarrow{}  rho:Gamma(I+i)
      {}\mrightarrow{}  phi:\mBbbF{}(I)
      {}\mrightarrow{}  mu:\{I+i,s(phi)  \mvdash{}  \_:(\mPi{}A  B)<rho>  o  iota\}
      {}\mrightarrow{}  lambda:cubical-path-0(Gamma;\mPi{}A  B;I;i;rho;phi;mu)
      {}\mrightarrow{}  J:fset(\mBbbN{})
      {}\mrightarrow{}  f:J  {}\mrightarrow{}  I
      {}\mrightarrow{}  u1:A(f((i1)(rho)))
      {}\mrightarrow{}  let  j  =  new-name(J)  in
              let  nu  =  pi-comp-nu(Gamma;A;cA;I;i;rho;J;f;u1;j)  in
              cubical-path-1(Gamma.A;B;J;j;(f,i=j(rho);nu);f(phi);
                                            pi-comp-app(Gamma;A;I;i;rho;phi;mu;J;f;j;nu)))



Date html generated: 2020_05_20-PM-03_59_40
Last ObjectModification: 2020_04_09-PM-08_18_05

Theory : cubical!type!theory


Home Index