All proofs
Project-declaredLean 4.29.1 · mathlib@5e932f97

Assoc Implies Sgr Proj Faithful

AssocImpliesSgrProjFaithful

Project documentation

Example usage of AssocFullyRightAssociate -/ theorem Assoc4 {G : Type _} [Magma G] (assoc : Equation4512 G) : ∀ x y z w : G, ((x ◇ y) ◇ z) ◇ w = x ◇ (y ◇ (z ◇ w)) := fun x y z w ↦ AssocFullyRightAssociate assoc (fun | 0 => x | 1 => y | 2 => z | 3 => w : Fin 4 → G) (((Lf 0 ⋆ Lf 1) ⋆ Lf 2) ⋆ Lf 3) inductive FreeSemigroup (α : Type _) | Singleton : α → FreeS...

Exact Lean statement

theorem AssocImpliesSgrProjFaithful {α : Type _} {G : Type _} [Magma G]
    (assoc : Equation4512 G) (f : α → G) (t : FreeMagma α) :
    evalInMagma f t = evalInSgr f (freeMagmaToFreeSgr t)

Formal artifact

Lean source

Canonical source
Full Lean sourceLean 4
theorem AssocImpliesSgrProjFaithful {α : Type _} {G : Type _} [Magma G]    (assoc : Equation4512 G) (f : α  G) (t : FreeMagma α) :    evalInMagma f t = evalInSgr f (freeMagmaToFreeSgr t) :=  match t with    | Lf a => rfl    | Lf a ⋆ tr => congrArg (f a ◇ ·) (AssocImpliesSgrProjFaithful assoc f tr)    | (tl1 ⋆ tl2) ⋆ tr => by      symm      trans evalInSgr f (freeMagmaToFreeSgr.toFun (tl1 ⋆ tl2) ◇ freeMagmaToFreeSgr.toFun tr)      · exact congrArg _ $ freeMagmaToFreeSgr.map_op' _ tr      trans evalInSgr f ((freeMagmaToFreeSgr.toFun tl1 ◇ freeMagmaToFreeSgr.toFun tl2) ◇ freeMagmaToFreeSgr.toFun tr)      · exact congrArg (fun s  evalInSgr f (s ◇ tr ↠Sgr)) $ freeMagmaToFreeSgr.map_op' tl1 tl2      trans        (evalInSgrHom assoc f).toFun (freeMagmaToFreeSgr.toFun tl1 ◇ freeMagmaToFreeSgr.toFun tl2) ◇          (evalInSgrHom assoc f).toFun (freeMagmaToFreeSgr.toFun tr)      · apply (evalInSgrHom assoc f).map_op'      trans         ((evalInSgrHom assoc f).toFun (freeMagmaToFreeSgr.toFun tl1) ◇          (evalInSgrHom assoc f).toFun (freeMagmaToFreeSgr.toFun tl2)) ◇          evalInSgr f (freeMagmaToFreeSgr.toFun tr)      · exact congrArg (· ◇ _) $ (evalInSgrHom assoc f).map_op' (tl1 ↠Sgr) (tl2 ↠Sgr)      symm      trans (tl1 ⋆ tl2 ⬝ f) ◇ evalInSgr f (freeMagmaToFreeSgr tr)      · exact congrArg _ (AssocImpliesSgrProjFaithful assoc f tr)      trans (evalInSgr f (freeMagmaToFreeSgr tl1) ◇ (tl2 ⬝ f)) ◇ evalInSgr f (freeMagmaToFreeSgr tr)      · exact congrArg (fun s  (s ◇ _) ◇ _) (AssocImpliesSgrProjFaithful assoc f tl1)      · exact congrArg (fun s  (_ ◇ s) ◇ _) (AssocImpliesSgrProjFaithful assoc f tl2)
Project
Equational Theories
License
Apache-2.0
Commit
7e276a2d05e8
Source
equational_theories/FreeSemigroup.lean:107-133

Reuse this declaration

Bring the exact result into your workflow

The import identifies the source module. Your project still needs the pinned package dependency shown on this page.

What this badge means

This completion status comes from the project or community source. It has not yet been represented here as an independent rebuild and axiom audit.

Continue in this project

Related declarations

Project-declaredLean 4.29.1

Eq255 equiv Lx Rx

Eq677.eq255_equiv_LxRx

Plain-language statement

Blueprint Lemma 13.2(v). E255 at x ↔ L_x ∘ R_x has a fixed point.

universal algebraequational logiccombinatorics

Source project: Equational Theories

Person-level attribution pending.

View proof record