NF weak partition development: Flypitch4.Colimit.
Lean 3 → Lean 4 Port: Notes for Colimit.lean #
Scope #
Only declarations needed by src/henkin.lean are ported. The
following are dropped:
constant_functor— 0 uses outside colimit.leantrans(the colimit lemma) — 0 uses outside colimit.lean;Transin Lean 4 is a typeclass
Quotient API choices #
colimitis@[reducible]so thatQuotient.lift,Quotient.sound, etc. can unify with it- Lean 3
quotient.mk→ Lean 4Quotient.mk (coproduct_setoid F) - Lean 3
quotient.lift→ Lean 4Quotient.lift - Lean 3
quotient.eq→ Lean 4Quotient.exact/Quotient.sound
cocone_of_colimit kept as an internal helper #
Used internally to prove same_fiber_as_push_to_r/l, which
henkin.lean uses directly.
Structures: Reflexive / Transitive deprecated in Lean 4 #
Use explicit ∀ hypotheses in directed_type.
Flypitch construction directed_type_of_nat, retained by the first-order soundness and
completeness development.
Equations
- ℕ' = { carrier := ℕ, rel := fun (x1 x2 : ℕ) => x1 ≤ x2, h_reflexive := Nat.le_refl, h_transitive := ⋯, h_directed := NFChoice.colimit.directedTypeOfNat._proof_1 }
Instances For
Notation for the corresponding first-order syntax or interpretation operation.
Equations
- NFChoice.colimit.termℕ' = Lean.ParserDescr.node `NFChoice.colimit.termℕ' 1024 (Lean.ParserDescr.symbol "ℕ'")
Instances For
Flypitch construction coproduct_of_directed_diagram, retained by the first-order soundness
and completeness development.
Equations
- NFChoice.colimit.coproductOfDirectedDiagram F = ((a : D.carrier) × F.obj a)
Instances For
Flypitch construction canonical_inclusion_coproduct, retained by the first-order soundness
and completeness development.
Equations
Instances For
Flypitch construction germ_relation, retained by the first-order soundness and
completeness development.
Equations
Instances For
The setoid on the coproduct given by germ equivalence
Equations
- NFChoice.colimit.coproductSetoid F = { r := NFChoice.colimit.germRelation F, iseqv := ⋯ }
Instances For
Flypitch construction LimitCarrier, retained by the first-order soundness and completeness
development.
Equations
Instances For
Flypitch construction canonical_map, retained by the first-order soundness and
completeness development.
Instances For
Flypitch construction cocone, retained by the first-order soundness and completeness
development.
- vertex : Type u_1
The
vertexcomponent of the corresponding first-order structure. The
mapcomponent of the corresponding first-order structure.
Instances For
Flypitch construction cocone_of_colimit, retained by the first-order soundness and
completeness development.
Equations
- NFChoice.colimit.coconeOfColimit F = { vertex := NFChoice.colimit.LimitCarrier F, map := NFChoice.colimit.canonicalMap, h_compat := ⋯ }
Instances For
Flypitch construction universal_map, retained by the first-order soundness and
completeness development.
Equations
- NFChoice.colimit.universalMap = Quotient.lift (fun (p : NFChoice.colimit.coproductOfDirectedDiagram F) => V.map p.fst p.snd) ⋯
Instances For
Flypitch construction germ_rep, retained by the first-order soundness and completeness
development.
Equations
Instances For
Flypitch construction push_to_sum_r, retained by the first-order soundness and
completeness development.
Equations
- NFChoice.colimit.pushToSumR x j = F.mor ⋯ x
Instances For
Flypitch construction push_to_sum_l, retained by the first-order soundness and
completeness development.
Equations
- NFChoice.colimit.pushToSumL x i = F.mor ⋯ x
Instances For
Flypitch construction map_aux, retained by the first-order soundness and completeness
development.
Equations
- NFChoice.omegaColimit.mapAux F h_succ x✝ 0 h = ⋯.mpr id
- NFChoice.omegaColimit.mapAux F h_succ x✝ y.succ h = if hx : x✝ = y + 1 then ⋯.mpr id else h_succ ∘ NFChoice.omegaColimit.mapAux F (fun {i : ℕ} => h_succ) x✝ y ⋯
Instances For
Flypitch construction diagram.mk.map, retained by the first-order soundness and
completeness development.
Equations
- NFChoice.omegaColimit.diagram.mk.map x y h = NFChoice.omegaColimit.mapAux F (fun {i : ℕ} => h_succ) x y h
Instances For
Flypitch construction diagram.mk, retained by the first-order soundness and completeness
development.
Equations
- NFChoice.omegaColimit.diagram.mk F h_succ = { obj := F, mor := fun {x y : ℕ'.carrier} (h : ℕ'.rel x y) => NFChoice.omegaColimit.diagram.mk.map x y h, h_mor := ⋯ }