OAI/SetTheory/PartitionConsistency/Construction/MergerPushouts.lean
36 declarations, 0 contain sorry, 0 declared as axioms
MergerPresentation
- def
OAI.PartitionConsistency.MergerAlgebra.Word.evaluateline 17Source documentation
Interpretation of an actual merger normal form. New letters are evaluated in their displayed order; the target is an arbitrary monoid.
def evaluate (f : M →* N) (g : D → N) : Word M D → N | old x => f x | snoc x d => evaluate f g x * g d variable (f : M →* N) (g : D → N) (hg : ∀ d x, g (RightFreeAction.act d x) = g d * f x) include hg in
- theorem
OAI.PartitionConsistency.MergerAlgebra.Word.evaluate_actline 25 - theorem
OAI.PartitionConsistency.MergerAlgebra.Word.evaluate_mulline 34 - def
OAI.PartitionConsistency.MergerAlgebra.Word.liftHomline 44Source documentation
Universal evaluation of merger words for an equivariant interpretation of the quotient of copies.
def liftHom : Word M D →* N where …
- theorem
OAI.PartitionConsistency.MergerAlgebra.Word.liftHom_oldline 49 - theorem
OAI.PartitionConsistency.MergerAlgebra.Word.liftHom_letterline 51 - theorem
OAI.PartitionConsistency.MergerAlgebra.Word.hom_extline 59Source documentation
Old coefficients and the single-letter words generate the extension. This asserts uniqueness in arbitrary target monoids, not just conservative ones.
theorem hom_ext (F G : Word M D →* N) (ho : ∀ x, F (old x) = G (old x)) (hn : ∀ d, F (snoc (old 1) d) = G (snoc (old 1) d)) : F = G := by … - def
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.Satisfiesline 85Source documentation
Precisely the finite list of merger relations, interpreted in
N. Diagonal entries ofstartare ignored, as in the definition ofRel. Reflected joins, nonjoins or injectivity are not required in the target.def Satisfies : Prop := …
- theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.satisfies_relline 91 - def
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.interpretedCopyline 110Source documentation
Interpretation of the actual prescribed quotient, not of a free collection of formal copies.
def interpretedCopy : P.Copies hP → N := …
- theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.interpretedCopy_copyline 114 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.interpretedCopy_actline 117 - def
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.presentedLiftline 127Source documentation
The merger normal forms have the universal property of the finite relative monoid presentation used in the countable-base rearrangement.
def presentedLift : P.Merger hP →* N := …
- theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.presentedLift_oldline 131 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.presentedLift_rootline 134 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.presentedHom_extline 142Source documentation
All normal forms are determined by the old elements and the finitely many roots. This is the uniqueness part needed when comparing reordered presentations.
theorem presentedHom_ext (F G : P.Merger hP →* N) (ho : ∀ x, F (.old x) = G (.old x)) (hn : ∀ i, F (P.root hP i) = G (P.root hP i)) : F = G := by … - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.existsUnique_presentedHomline 154 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.roots_satisfyline 167Source documentation
The literal roots satisfy every relation of their relative presentation.
theorem roots_satisfy : P.Satisfies MergerAlgebra.Word.oldHom (P.root hP) := by …
Mentions: OAI.PartitionConsistency.MergerAlgebra.Word.oldHom
- theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.map_roots_satisfyline 175Source documentation
Every homomorphism from a merger, with no conservation assumption, necessarily satisfies those relations.
theorem map_roots_satisfy (F : P.Merger hP →* N) : P.Satisfies (F.comp MergerAlgebra.Word.oldHom) (fun i => F (P.root hP i)) := by …Mentions: OAI.PartitionConsistency.MergerAlgebra.Word.oldHom
- structure
OAI.PartitionConsistency.MonoidPushout.IsPushoutline 195 - def
OAI.PartitionConsistency.MonoidPushout.IsPushout.liftline 204 - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.lift_comp_leftline 207 - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.lift_comp_rightline 211 - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.hom_extline 216 - def
OAI.PartitionConsistency.MonoidPushout.IsPushout.equivline 224Source documentation
Apexes of two actual pushout squares are isomorphic over both bases.
def equiv {E : Type u} [Monoid E] {i' : B →* E} {j' : C →* E} (h' : IsPushout f g i' j') : D ≃* E := by … - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.equiv_comp_leftline 242 - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.equiv_comp_rightline 246 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.mergerSimulation_rootline 262 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.satisfies_map_iffline 271 - theorem
OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.mergerSimulation_pushoutline 288Source documentation
Simulating a finite merger is extension of scalars for its literal relative presentation.
theorem mergerSimulation_pushout : IsPushout (Word.oldHom : A →* P.Merger hP) f (P.mergerSimulation hP hA hf) (Word.oldHom : B →* (P.map f).Merger (P.valid_map hP hA hf)) where …Mentions: OAI.PartitionConsistency.DiagramForcing.OverlapPrescription.Merger
- theorem
OAI.PartitionConsistency.ProbeAlgebra.Path.simulation_pushoutline 333Source documentation
Simulating an indexed probe is a pushout for exactly its countable transition and exit presentation. No universal property is assumed.
theorem simulation_pushout : IsPushout (Word.oldHom (P.alphabet he) b) f (P.simulation he hf b) (Word.oldHom ((P.map f).alphabet (fun h => he (hf.injective (h.trans f.map_one.symm)))) (f b)) where …Mentions: OAI.PartitionConsistency.ProbeAlgebra.Word.oldHom, OAI.PartitionConsistency.ProbeAlgebra.Path.alphabet
- theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.flipline 390Source documentation
Reflection across the diagonal does not change a pushout.
theorem flip {f : A →* B} {g : A →* C} {i : B →* D} {j : C →* D} (h : IsPushout f g i j) : IsPushout g f j i where … - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.pasteline 399Source documentation
Two adjoining pushout squares give the outer pushout. In the diagram
A → B → E,C → D → F, the two vertical composites are unchanged.theorem paste {f : A →* B} {g : A →* C} {i : B →* D} {j : C →* D} {k : B →* E} {l : D →* F} {m : E →* F} (h : IsPushout f g i j) (h' : IsPushout k i m l) : IsPushout (k.comp f) g m (l.comp j) where … - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.cancel_leftline 425Source documentation
Conversely, if the left square and the outer rectangle are pushouts, then the right square is a pushout. This is the cancellation used after the selected future cells have been moved in front of one omitted cell.
theorem cancel_left {f : A →* B} {g : A →* C} {i : B →* D} {j : C →* D} {k : B →* E} {l : D →* F} {m : E →* F} (h : IsPushout f g i j) (hc : m.comp k = l.comp i) (ho : IsPushout (k.comp f) g m (l.comp j)) : IsPushout k i m l where … - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.of_idline 448Source documentation
The degenerate cell is also a pushout; no generator is added.
theorem of_id (f : A →* B) : IsPushout (MonoidHom.id A) f f (MonoidHom.id B) where … - theorem
OAI.PartitionConsistency.MonoidPushout.IsPushout.map_apexline 459Source documentation
Postcomposing a pushout apex with a fixed monoid isomorphism preserves its full universal property, not just its conservative embeddings.
theorem map_apex {f : A →* B} {g : A →* C} {i : B →* D} {j : C →* D} (h : IsPushout f g i j) (e : D ≃* E) : IsPushout f g (e.toMonoidHom.comp i) (e.toMonoidHom.comp j) where …