Nuprl Lemma : comp-op-to-comp-fun-inverse

∀[Gamma:j⊢]. ∀[A:{Gamma ⊢ _}]. ∀[cA:Gamma ⊢ CompOp(A)].  (cfun-to-cop(Gamma;A;cop-to-cfun(cA)) = cA ∈ Gamma ⊢ CompOp(A))


Proof




Definitions occuring in Statement :  comp-fun-to-comp-op: cfun-to-cop(Gamma;A;comp),  comp-op-to-comp-fun: cop-to-cfun(cA),  composition-op: Gamma ⊢ CompOp(A),  cubical-type: {X ⊢ _},  cubical_set: CubicalSet,  uall: ∀[x:A]. B[x],  equal: s = t ∈ T
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  composition-op: Gamma ⊢ CompOp(A),  member: t ∈ T,  subtype_rel: A ⊆r B,  uimplies: b supposing a,  all: ∀x:A. B[x],  nat: ℕ,  ge: i ≥ j ,  decidable: Dec(P),  or: P ∨ Q,  not: ¬A,  implies: P ⇒ Q,  satisfiable_int_formula: satisfiable_int_formula(fmla),  exists: ∃x:A. B[x],  false: False,  and: P ∧ Q,  prop: ℙ,  so_lambda: λ2x.t[x],  so_apply: x[s],  sq_stable: SqStable(P),  squash: ↓T,  interval-presheaf: 𝕀,  names: names(I),  cubical-path-1: cubical-path-1(Gamma;A;I;i;rho;phi;u),  comp-op-to-comp-fun: cop-to-cfun(cA),  comp-fun-to-comp-op: cfun-to-cop(Gamma;A;comp),  comp-fun-to-comp-op1: comp-fun-to-comp-op1(Gamma;A;comp),  csm-composition: (comp)sigma,  composition-term: comp cA [phi ⊢→ u] a0,  cubical-term-at: u(a),  canonical-section: canonical-section(Gamma;A;I;rho;a),  composition-uniformity: composition-uniformity(Gamma;A;comp),  names-hom: I ⟶ J,  nc-e': g,i=j,  cube+: cube+(I;i),  cc-adjoin-cube: (v;u),  bool: 𝔹,  unit: Unit,  it: ⋅,  btrue: tt,  uiff: uiff(P;Q),  ifthenelse: if b then t else f fi ,  guard: {T},  cubical-type-at: A(a),  pi1: fst(t),  interval-type: 𝕀,  constant-cubical-type: (X),  I_cube: A(I),  functor-ob: ob(F),  lattice-point: Point(l),  record-select: r.x,  dM: dM(I),  free-DeMorgan-algebra: free-DeMorgan-algebra(T;eq),  mk-DeMorgan-algebra: mk-DeMorgan-algebra(L;n),  record-update: r[x := v],  eq_atom: x =a y,  bfalse: ff,  free-DeMorgan-lattice: free-DeMorgan-lattice(T;eq),  free-dist-lattice: free-dist-lattice(T; eq),  mk-bounded-distributive-lattice: mk-bounded-distributive-lattice,  mk-bounded-lattice: mk-bounded-lattice(T;m;j;z;o),  DeMorgan-algebra: DeMorganAlgebra,  sq_type: SQType(T),  bnot: ¬bb,  assert: ↑b,  formal-cube: formal-cube(I),  cube-set-restriction: f(s),  pi2: snd(t),  nh-id: 1,  true: True,  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q,  nc-s: s,  dM_inc: <x>,  dminc: <i>,  free-dl-inc: free-dl-inc(x),  fset-singleton: {x},  cons: [a / b],  context-map: <rho>,  csm-comp: G o F,  csm-ap: (s)x,  compose: f o g,  functor-arrow: arrow(F),  cubical-type: {X ⊢ _},  csm-ap-type: (AF)s,  subset-iota: iota,  csm-ap-term: (t)s,  subset-trans: subset-trans(I;J;f;x),  nh-comp: g ⋅ f,  dma-lift-compose: dma-lift-compose(I;J;eqi;eqj;f;g),  dM-lift: dM-lift(I;J;f),  cube-context-adjoin: X.A,  face-presheaf: 𝔽,  bdd-distributive-lattice: BoundedDistributiveLattice,  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),  bounded-lattice-hom: Hom(l1;l2),  lattice-hom: Hom(l1;l2),  cubical-type-ap-morph: (u a f),  face-type: 𝔽,  fl-morph: <f>,  fl-lift: fl-lift(T;eq;L;eqL;f0;f1),  face-lattice-property,  free-dist-lattice-with-constraints-property,  lattice-extend-wc: lattice-extend-wc(L;eq;eqL;f;ac),  lattice-extend: lattice-extend(L;eq;eqL;f;ac),  lattice-fset-join: \/(s),  reduce: reduce(f;k;as),  list_ind: list_ind,  fset-image: f"(s),  f-union: f-union(domeq;rngeq;s;x.g[x]),  list_accum: list_accum,  cubical-path-0: cubical-path-0(Gamma;A;I;i;rho;phi;u),  cat-arrow: cat-arrow(C),  type-cat: TypeCat,  cube_set_map: A ⟶ B,  psc_map: A ⟶ B,  nat-trans: nat-trans(C;D;F;G),  fset: fset(T),  quotient: x,y:A//B[x; y],  cat-ob: cat-ob(C),  op-cat: op-cat(C),  spreadn: spread4,  cube-cat: CubeCat,  nc-0: (i0),  free-dma-lift: free-dma-lift(T;eq;dm;eq2;f),  free-DeMorgan-algebra-property,  free-dist-lattice-property,  empty-fset: {},  nil: [],  lattice-0: 0,  dM0: 0,  nequal: a ≠ b ∈ T ,  dma-hom: dma-hom(dma1;dma2),  cubical-path-condition: cubical-path-condition(Gamma;A;I;i;rho;phi;u;a0),  rev_uimplies: rev_uimplies(P;Q),  nc-1: (i1)
Lemmas referenced :  cubical-path-0_wf,  cubical-type-cumulativity2,  cubical_set_cumulativity-i-j,  cubical-term_wf,  cubical-subset_wf,  add-name_wf,  cube-set-restriction_wf,  face-presheaf_wf2,  nc-s_wf,  f-subset-add-name,  csm-ap-type_wf,  csm-comp_wf,  formal-cube_wf1,  subset-iota_wf,  context-map_wf,  I_cube_wf,  nat_properties,  decidable__le,  full-omega-unsat,  intformand_wf,  intformnot_wf,  intformle_wf,  itermConstant_wf,  itermVar_wf,  istype-int,  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,  nat_wf,  not_wf,  fset-member_wf,  int-deq_wf,  strong-subtype-deq-subtype,  strong-subtype-set3,  le_wf,  strong-subtype-self,  fset_wf,  sq_stable__composition-uniformity,  composition-uniformity_wf,  composition-op_wf,  cubical-type_wf,  cubical_set_wf,  interval-type-at,  I_cube_pair_redex_lemma,  dM_inc_wf,  new-name_wf,  trivial-member-add-name1,  nh-id_wf,  eq_int_wf,  eqtt_to_assert,  assert_of_eq_int,  subtype_rel_self,  lattice-point_wf,  dM_wf,  subtype_rel_set,  DeMorgan-algebra-structure_wf,  lattice-structure_wf,  lattice-axioms_wf,  bounded-lattice-structure-subtype,  DeMorgan-algebra-structure-subtype,  subtype_rel_transitivity,  bounded-lattice-structure_wf,  bounded-lattice-axioms_wf,  equal_wf,  lattice-meet_wf,  lattice-join_wf,  DeMorgan-algebra-axioms_wf,  eqff_to_assert,  bool_cases_sqequal,  subtype_base_sq,  bool_wf,  bool_subtype_base,  assert-bnot,  neg_assert_of_eq_int,  not-added-name,  names_wf,  istype-top,  squash_wf,  true_wf,  istype-universe,  nh-id-right,  names-subtype,  iff_weakening_equal,  names-hom_wf,  nc-e'_wf,  cubical-type-at_wf,  cube-set-restriction-id,  nc-1_wf,  cubical-type-ap-morph-id,  cubical-term-equal,  csm-ap-type-at,  cubical-subset-I_cube,  cube-set-restriction-comp,  csm-ap-context-map,  cubical-term-at_wf,  context-map_wf_cubical-subset,  interval-type-ap-morph,  cube_set_restriction_pair_lemma,  dM-lift_wf2,  dM-lift-inc,  nh-comp_wf,  name-morph-satisfies_wf,  face_lattice_wf,  fl-morph-comp2,  fl-morph_wf,  int_subtype_base,  name-morph-satisfies-comp,  nc-e'-lemma3,  csm-ap-restriction,  csm-ap_wf,  cubical-type-equal,  subtype_rel_product,  subtype_rel_universe1,  subtype_rel_dep_function,  equal_functionality_wrt_subtype_rel2,  csm-ap-term_wf,  subset-trans_wf,  cube_set_map_wf,  face-type-ap-morph,  nc-0_wf,  cube-context-adjoin_wf,  interval-type_wf,  cube+_wf,  cc-adjoin-cube_wf,  cat-ob_wf,  op-cat_wf,  cube-cat_wf,  cubical-type-ap-morph_wf,  cc-adjoin-cube-restriction,  formal-cube-restriction,  dM0_wf,  intformeq_wf,  int_formula_prop_eq_lemma,  interval-type-ap-inc,  eq_int_eq_true,  btrue_wf,  not_assert_elim,  btrue_neq_bfalse,  dM-lift_wf,  set_subtype_base,  sq_stable__fset-member,  sq_stable__not,  subtype_rel-equal,  apply-fl-morph-id,  nh-comp-assoc,  nc-e'-1,  nc-e-comp-nc-0,  istype-void,  istype-cubical-type-at,  cube-set-restriction-when-id,  s-comp-nc-0,  csm-ap-term-at,  istype-cubical-term,  nc-e'-lemma2,  cubical-path-condition_wf,  cubical-path-1_wf,  dM1-sq-singleton-empty,  dM1_wf,  sq_stable__cubical-path-condition',  cubical-path-condition'_wf,  face-lattice-property,  free-dist-lattice-with-constraints-property,  free-DeMorgan-algebra-property,  free-dist-lattice-property
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation_alt,  equalitySymmetry,  dependent_set_memberEquality_alt,  sqequalHypSubstitution,  setElimination,  thin,  rename,  cut,  functionExtensionality,  instantiate,  introduction,  extract_by_obid,  isectElimination,  hypothesisEquality,  applyEquality,  because_Cache,  hypothesis,  sqequalRule,  independent_isectElimination,  dependent_functionElimination,  natural_numberEquality,  unionElimination,  approximateComputation,  independent_functionElimination,  dependent_pairFormation_alt,  lambdaEquality_alt,  int_eqEquality,  Error :memTop,  independent_pairFormation,  universeIsType,  voidElimination,  setEquality,  intEquality,  imageMemberEquality,  baseClosed,  imageElimination,  inhabitedIsType,  equalityTransitivity,  lambdaFormation_alt,  equalityElimination,  productElimination,  productEquality,  cumulativity,  isectEquality,  equalityIstype,  promote_hyp,  universeEquality,  functionEquality,  hyp_replacement,  dependent_pairEquality_alt,  functionIsType,  closedConclusion,  sqequalBase,  applyLambdaEquality

Latex:
\mforall{}[Gamma:j\mvdash{}].  \mforall{}[A:\{Gamma  \mvdash{}  \_\}].  \mforall{}[cA:Gamma  \mvdash{}  CompOp(A)].    (cfun-to-cop(Gamma;A;cop-to-cfun(cA))  =  cA)



Date html generated: 2020_05_20-PM-04_33_53
Last ObjectModification: 2020_04_21-AM-00_59_29

Theory : cubical!type!theory


Home Index