Loogle!
Result
Found 127 declarations mentioning LinearEquiv.trans.
- LinearEquiv.refl_trans 📋 Mathlib.Algebra.Module.Equiv.Defs
{R : Type u_1} {S : Type u_6} {M : Type u_7} {M₂ : Type u_9} [Semiring R] [Semiring S] [AddCommMonoid M] [AddCommMonoid M₂] {module_M : Module R M} {module_S_M₂ : Module S M₂} {σ : R →+* S} {σ' : S →+* R} {re₁ : RingHomInvPair σ σ'} {re₂ : RingHomInvPair σ' σ} (e : M ≃ₛₗ[σ] M₂) : (LinearEquiv.refl R M).trans e = e - LinearEquiv.trans_refl 📋 Mathlib.Algebra.Module.Equiv.Defs
{R : Type u_1} {S : Type u_6} {M : Type u_7} {M₂ : Type u_9} [Semiring R] [Semiring S] [AddCommMonoid M] [AddCommMonoid M₂] {module_M : Module R M} {module_S_M₂ : Module S M₂} {σ : R →+* S} {σ' : S →+* R} {re₁ : RingHomInvPair σ σ'} {re₂ : RingHomInvPair σ' σ} (e : M ≃ₛₗ[σ] M₂) : e.trans (LinearEquiv.refl S M₂) = e - LinearEquiv.self_trans_symm 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {M₁ : Type u_8} {M₂ : Type u_9} [Semiring R₁] [Semiring R₂] [AddCommMonoid M₁] [AddCommMonoid M₂] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} (f : M₁ ≃ₛₗ[σ₁₂] M₂) : f.trans f.symm = LinearEquiv.refl R₁ M₁ - LinearEquiv.symm_trans_self 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {M₁ : Type u_8} {M₂ : Type u_9} [Semiring R₁] [Semiring R₂] [AddCommMonoid M₁] [AddCommMonoid M₂] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} (f : M₁ ≃ₛₗ[σ₁₂] M₂) : f.symm.trans f = LinearEquiv.refl R₂ M₂ - LinearEquiv.trans 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} [RingHomInvPair σ₁₃ σ₃₁] {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomInvPair σ₃₁ σ₁₃] (e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂) (e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃) : M₁ ≃ₛₗ[σ₁₃] M₃ - LinearEquiv.coe_trans 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] {e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂} {e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃} : ↑(e₁₂.trans e₂₃) = ↑e₂₃ ∘ₛₗ ↑e₁₂ - LinearEquiv.comp_coe 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] (f : M₁ ≃ₛₗ[σ₁₂] M₂) (f' : M₂ ≃ₛₗ[σ₂₃] M₃) : ↑f' ∘ₛₗ ↑f = ↑(f.trans f') - LinearEquiv.symm_trans_cancel_left 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomCompTriple σ₂₁ σ₁₃ σ₂₃] [RingHomCompTriple σ₃₁ σ₁₂ σ₃₂] (e : M₁ ≃ₛₗ[σ₁₂] M₂) (f : M₂ ≃ₛₗ[σ₂₃] M₃) : e.symm.trans (e.trans f) = f - LinearEquiv.symm_trans_cancel_right 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomCompTriple σ₂₁ σ₁₃ σ₂₃] [RingHomCompTriple σ₃₁ σ₁₂ σ₃₂] (e : M₁ ≃ₛₗ[σ₁₂] M₂) (f : M₃ ≃ₛₗ[σ₃₂] M₂) : (f.trans e.symm).trans e = f - LinearEquiv.trans_symm_cancel_left 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomCompTriple σ₂₁ σ₁₃ σ₂₃] [RingHomCompTriple σ₃₁ σ₁₂ σ₃₂] (e : M₁ ≃ₛₗ[σ₁₂] M₂) (f : M₁ ≃ₛₗ[σ₁₃] M₃) : e.trans (e.symm.trans f) = f - LinearEquiv.trans_symm_cancel_right 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomCompTriple σ₂₁ σ₁₃ σ₂₃] [RingHomCompTriple σ₃₁ σ₁₂ σ₃₂] (e : M₁ ≃ₛₗ[σ₁₂] M₂) (f : M₃ ≃ₛₗ[σ₃₁] M₁) : (f.trans e).trans e.symm = f - LinearEquiv.trans_symm 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] {e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂} {e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃} : (e₁₂.trans e₂₃).symm = e₂₃.symm.trans e₁₂.symm - LinearEquiv.trans_apply 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] {e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂} {e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃} (c : M₁) : (e₁₂.trans e₂₃) c = e₂₃ (e₁₂ c) - LinearEquiv.symm_trans_apply 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] {e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂} {e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃} (c : M₃) : (e₁₂.trans e₂₃).symm c = e₁₂.symm (e₂₃.symm c) - LinearEquiv.trans_assoc 📋 Mathlib.Algebra.Module.Equiv.Defs
{R₁ : Type u_2} {R₂ : Type u_3} {R₃ : Type u_4} {R₄ : Type u_5} {M₁ : Type u_8} {M₂ : Type u_9} {M₃ : Type u_10} {M₄ : Type u_11} [Semiring R₁] [Semiring R₂] [Semiring R₃] [Semiring R₄] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] [AddCommMonoid M₄] {module_M₁ : Module R₁ M₁} {module_M₂ : Module R₂ M₂} {module_M₃ : Module R₃ M₃} {module_M₄ : Module R₄ M₄} {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] {σ₁₄ : R₁ →+* R₄} {σ₄₁ : R₄ →+* R₁} [RingHomInvPair σ₁₄ σ₄₁] [RingHomInvPair σ₄₁ σ₁₄] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {σ₂₄ : R₂ →+* R₄} {σ₄₂ : R₄ →+* R₂} [RingHomInvPair σ₂₄ σ₄₂] [RingHomInvPair σ₄₂ σ₂₄] {σ₃₄ : R₃ →+* R₄} {σ₄₃ : R₄ →+* R₃} [RingHomInvPair σ₃₄ σ₄₃] [RingHomInvPair σ₄₃ σ₃₄] {re₁₂ : RingHomInvPair σ₁₂ σ₂₁} {re₂₁ : RingHomInvPair σ₂₁ σ₁₂} {re₂₃ : RingHomInvPair σ₂₃ σ₃₂} {re₃₂ : RingHomInvPair σ₃₂ σ₂₃} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomCompTriple σ₁₂ σ₂₄ σ₁₄] [RingHomCompTriple σ₄₂ σ₂₁ σ₄₁] [RingHomCompTriple σ₁₃ σ₃₄ σ₁₄] [RingHomCompTriple σ₄₃ σ₃₁ σ₄₁] [RingHomCompTriple σ₂₃ σ₃₄ σ₂₄] [RingHomCompTriple σ₄₃ σ₃₂ σ₄₂] (e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂) (e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃) (e₃₄ : M₃ ≃ₛₗ[σ₃₄] M₄) : (e₁₂.trans e₂₃).trans e₃₄ = e₁₂.trans (e₂₃.trans e₃₄) - LinearEquiv.trans_smul 📋 Mathlib.Algebra.Module.Equiv.Defs
{S : Type u_14} {R : Type u_15} {V : Type u_16} {W : Type u_17} {G : Type u_18} [Semiring R] [Semiring S] [AddCommMonoid V] [Module R V] [Module S V] [AddCommMonoid W] [Module R W] [Module S W] [AddCommMonoid G] [Module R G] [Module S G] [SMulCommClass R S W] [SMul S R] [IsScalarTower S R V] [IsScalarTower S R W] [IsScalarTower S R G] (α : Sˣ) (e : G ≃ₗ[R] V) (f : V ≃ₗ[R] W) : e ≪≫ₗ (α • f) = α • e ≪≫ₗ f - LinearEquiv.smul_trans 📋 Mathlib.Algebra.Module.Equiv.Defs
{S : Type u_14} {R : Type u_15} {V : Type u_16} {W : Type u_17} {G : Type u_18} [Semiring R] [Semiring S] [AddCommMonoid V] [Module R V] [Module S V] [AddCommMonoid W] [Module R W] [Module S W] [AddCommMonoid G] [Module R G] [Module S G] [SMulCommClass R S W] [SMul S R] [IsScalarTower S R V] [IsScalarTower S R W] [SMulCommClass R S V] [IsScalarTower S R G] (α : Sˣ) (e : G ≃ₗ[R] V) (f : V ≃ₗ[R] W) : (α • e) ≪≫ₗ f = α • e ≪≫ₗ f - AddEquiv.toNatLinearEquiv_trans 📋 Mathlib.Algebra.Module.Equiv.Basic
{M : Type u_5} {M₂ : Type u_7} {M₃ : Type u_8} [AddCommMonoid M] [AddCommMonoid M₂] [AddCommMonoid M₃] (e : M ≃+ M₂) (e₂ : M₂ ≃+ M₃) : (e.trans e₂).toNatLinearEquiv = e.toNatLinearEquiv ≪≫ₗ e₂.toNatLinearEquiv - LinearEquiv.funCongrLeft_comp 📋 Mathlib.Algebra.Module.Equiv.Basic
(R : Type u_1) (M : Type u_5) [Semiring R] [AddCommMonoid M] [Module R M] {m : Type u_9} {n : Type u_10} {p : Type u_11} (e₁ : m ≃ n) (e₂ : n ≃ p) : LinearEquiv.funCongrLeft R M (e₁.trans e₂) = LinearEquiv.funCongrLeft R M e₂ ≪≫ₗ LinearEquiv.funCongrLeft R M e₁ - AddEquiv.toIntLinearEquiv_trans 📋 Mathlib.Algebra.Module.Equiv.Basic
{M : Type u_5} {M₂ : Type u_7} {M₃ : Type u_8} [AddCommGroup M] [AddCommGroup M₂] [AddCommGroup M₃] {modM : Module ℤ M} {modM₂ : Module ℤ M₂} {modM₃ : Module ℤ M₃} (e : M ≃+ M₂) (e₂ : M₂ ≃+ M₃) : (e.trans e₂).toIntLinearEquiv = e.toIntLinearEquiv ≪≫ₗ e₂.toIntLinearEquiv - Units.mulRightLinearEquiv_trans_mulRightLinearEquiv 📋 Mathlib.Algebra.Module.Equiv.Basic
{R : Type u_9} {A : Type u_10} [Semiring R] [Semiring A] [Module R A] [IsScalarTower R A A] (a b : Aˣ) : Units.mulRightLinearEquiv R a ≪≫ₗ Units.mulRightLinearEquiv R b = Units.mulRightLinearEquiv R (a * b) - LinearEquiv.mul_eq_trans 📋 Mathlib.Algebra.Module.Equiv.Basic
{R : Type u_1} {M : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] (f g : M ≃ₗ[R] M) : f * g = g ≪≫ₗ f - LinearEquiv.conj_trans 📋 Mathlib.Algebra.Module.Equiv.Basic
{R₁' : Type u_12} {R₂' : Type u_13} {R₃' : Type u_14} {M₁' : Type u_20} {M₂' : Type u_21} {M₃' : Type u_22} [CommSemiring R₁'] [CommSemiring R₂'] [CommSemiring R₃'] [AddCommMonoid M₁'] [AddCommMonoid M₂'] [AddCommMonoid M₃'] [Module R₁' M₁'] [Module R₂' M₂'] [Module R₃' M₃'] {σ₁'₂' : R₁' →+* R₂'} {σ₂'₁' : R₂' →+* R₁'} {σ₂'₃' : R₂' →+* R₃'} {σ₃'₂' : R₃' →+* R₂'} {σ₁'₃' : R₁' →+* R₃'} {σ₃'₁' : R₃' →+* R₁'} [RingHomInvPair σ₁'₂' σ₂'₁'] [RingHomInvPair σ₂'₁' σ₁'₂'] [RingHomInvPair σ₂'₃' σ₃'₂'] [RingHomInvPair σ₃'₂' σ₂'₃'] [RingHomInvPair σ₁'₃' σ₃'₁'] [RingHomInvPair σ₃'₁' σ₁'₃'] [RingHomCompTriple σ₁'₂' σ₂'₃' σ₁'₃'] [RingHomCompTriple σ₃'₂' σ₂'₁' σ₃'₁'] (e₁ : M₁' ≃ₛₗ[σ₁'₂'] M₂') (e₂ : M₂' ≃ₛₗ[σ₂'₃'] M₃') : e₁.conj.trans e₂.conj = (e₁.trans e₂).conj - LinearEquiv.arrowCongr_trans 📋 Mathlib.Algebra.Module.Equiv.Basic
{R₁ : Type u_9} {R₂ : Type u_10} {R₃ : Type u_11} {R₁' : Type u_12} {R₂' : Type u_13} {R₃' : Type u_14} {M₁ : Type u_17} {M₂ : Type u_18} {M₃ : Type u_19} {M₁' : Type u_20} {M₂' : Type u_21} {M₃' : Type u_22} [Semiring R₁] [Semiring R₂] [Semiring R₃] [CommSemiring R₁'] [CommSemiring R₂'] [CommSemiring R₃'] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] [AddCommMonoid M₁'] [AddCommMonoid M₂'] [AddCommMonoid M₃'] [Module R₁ M₁] [Module R₂ M₂] [Module R₃ M₃] [Module R₁' M₁'] [Module R₂' M₂'] [Module R₃' M₃'] {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} {σ₁'₂' : R₁' →+* R₂'} {σ₂'₁' : R₂' →+* R₁'} {σ₂'₃' : R₂' →+* R₃'} {σ₃'₂' : R₃' →+* R₂'} {σ₁'₃' : R₁' →+* R₃'} {σ₃'₁' : R₃' →+* R₁'} {σ₁₁' : R₁ →+* R₁'} {σ₂₂' : R₂ →+* R₂'} {σ₃₃' : R₃ →+* R₃'} {σ₂₁' : R₂ →+* R₁'} {σ₁₂' : R₁ →+* R₂'} {σ₃₂' : R₃ →+* R₂'} {σ₂₃' : R₂ →+* R₃'} {σ₃₁' : R₃ →+* R₁'} {σ₁₃' : R₁ →+* R₃'} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] [RingHomInvPair σ₁'₂' σ₂'₁'] [RingHomInvPair σ₂'₁' σ₁'₂'] [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] [RingHomInvPair σ₂'₃' σ₃'₂'] [RingHomInvPair σ₃'₂' σ₂'₃'] [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] [RingHomInvPair σ₁'₃' σ₃'₁'] [RingHomInvPair σ₃'₁' σ₁'₃'] [RingHomCompTriple σ₁₁' σ₁'₂' σ₁₂'] [RingHomCompTriple σ₂₁ σ₁₂' σ₂₂'] [RingHomCompTriple σ₂₂' σ₂'₁' σ₂₁'] [RingHomCompTriple σ₁₂ σ₂₁' σ₁₁'] [RingHomCompTriple σ₁₁' σ₁'₃' σ₁₃'] [RingHomCompTriple σ₃₁ σ₁₃' σ₃₃'] [RingHomCompTriple σ₃₃' σ₃'₁' σ₃₁'] [RingHomCompTriple σ₁₃ σ₃₁' σ₁₁'] [RingHomCompTriple σ₂₂' σ₂'₃' σ₂₃'] [RingHomCompTriple σ₃₂ σ₂₃' σ₃₃'] [RingHomCompTriple σ₃₃' σ₃'₂' σ₃₂'] [RingHomCompTriple σ₂₃ σ₃₂' σ₂₂'] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomCompTriple σ₁'₂' σ₂'₃' σ₁'₃'] [RingHomCompTriple σ₃'₂' σ₂'₁' σ₃'₁'] (e₁ : M₁ ≃ₛₗ[σ₁₂] M₂) (e₁' : M₁' ≃ₛₗ[σ₁'₂'] M₂') (e₂ : M₂ ≃ₛₗ[σ₂₃] M₃) (e₂' : M₂' ≃ₛₗ[σ₂'₃'] M₃') : (e₁.arrowCongr e₁').trans (e₂.arrowCongr e₂') = (e₁.trans e₂).arrowCongr (e₁'.trans e₂') - Units.mulLeftLinearEquiv_trans_mulLeftLinearEquiv 📋 Mathlib.Algebra.Module.Equiv.Basic
{R : Type u_9} {A : Type u_10} [Semiring R] [Semiring A] [Module R A] [SMulCommClass R A A] (a b : Aˣ) : (Units.mulLeftLinearEquiv R A) a ≪≫ₗ (Units.mulLeftLinearEquiv R A) b = (Units.mulLeftLinearEquiv R A) (b * a) - AlgEquiv.toLinearEquiv_trans 📋 Mathlib.Algebra.Algebra.Equiv
{R : Type uR} {A₁ : Type uA₁} {A₂ : Type uA₂} {A₃ : Type uA₃} [CommSemiring R] [Semiring A₁] [Semiring A₂] [Semiring A₃] [Algebra R A₁] [Algebra R A₂] [Algebra R A₃] (e₁ : A₁ ≃ₐ[R] A₂) (e₂ : A₂ ≃ₐ[R] A₃) : ↑(e₁.trans e₂) = ↑e₁ ≪≫ₗ ↑e₂ - Finsupp.mapRange.linearEquiv_trans 📋 Mathlib.LinearAlgebra.Finsupp.Defs
{α : Type u_1} {M : Type u_2} {N : Type u_3} {P : Type u_4} {R : Type u_5} {R₂ : Type u_6} {R₃ : Type u_7} [Semiring R] [Semiring R₂] [Semiring R₃] [AddCommMonoid M] [Module R M] [AddCommMonoid N] [Module R₂ N] [AddCommMonoid P] [Module R₃ P] {σ₁₂ : R →+* R₂} {σ₂₁ : R₂ →+* R} {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {σ₁₃ : R →+* R₃} {σ₃₁ : R₃ →+* R} [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] (f : M ≃ₛₗ[σ₁₂] N) (f₂ : N ≃ₛₗ[σ₂₃] P) : Finsupp.mapRange.linearEquiv (f.trans f₂) = (Finsupp.mapRange.linearEquiv f).trans (Finsupp.mapRange.linearEquiv f₂) - Finsupp.domLCongr_trans 📋 Mathlib.LinearAlgebra.Finsupp.LSum
{M : Type u_2} {R : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {α₁ : Type u_7} {α₂ : Type u_8} {α₃ : Type u_9} (f : α₁ ≃ α₂) (f₂ : α₂ ≃ α₃) : Finsupp.domLCongr f ≪≫ₗ Finsupp.domLCongr f₂ = Finsupp.domLCongr (f.trans f₂) - Module.Basis.equiv_trans 📋 Mathlib.LinearAlgebra.Basis.Defs
{ι' : Type u_2} {M' : Type u_5} [AddCommMonoid M'] {ι : Type u_7} {R : Type u_8} {M : Type u_9} [Semiring R] [AddCommMonoid M] [Module R M] (b : Module.Basis ι R M) [Module R M'] {M'' : Type u_10} (b' : Module.Basis ι' R M') [AddCommMonoid M''] [Module R M''] {ι'' : Type u_11} (b'' : Module.Basis ι'' R M'') (e : ι ≃ ι') (e' : ι' ≃ ι'') : b.equiv b' e ≪≫ₗ b'.equiv b'' e' = b.equiv b'' (e.trans e') - Module.Basis.map_repr 📋 Mathlib.LinearAlgebra.Basis.Defs
{ι : Type u_1} {R : Type u_3} {M : Type u_4} {M' : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M'] (b : Module.Basis ι R M) (f : M ≃ₗ[R] M') : (b.map f).repr = f.symm ≪≫ₗ b.repr - Module.Basis.map_equivFun 📋 Mathlib.LinearAlgebra.Basis.Defs
{ι : Type u_1} {R : Type u_3} {M : Type u_4} {M' : Type u_5} [Semiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid M'] [Module R M'] [Finite ι] (b : Module.Basis ι R M) (f : M ≃ₗ[R] M') : (b.map f).equivFun = f.symm ≪≫ₗ b.equivFun - Module.Basis.mapCoeffs_repr 📋 Mathlib.LinearAlgebra.Basis.Defs
{ι : Type u_7} {R : Type u_8} {M : Type u_9} [Semiring R] [AddCommMonoid M] [Module R M] (b : Module.Basis ι R M) {R' : Type u_10} [Semiring R'] [Module R' M] (f : R ≃+* R') (h : ∀ (c : R) (x : M), f c • x = c • x) : (b.mapCoeffs f h).repr = LinearEquiv.restrictScalars R' b.repr ≪≫ₗ Finsupp.mapRange.linearEquiv (Module.compHom.toLinearEquiv f.symm).symm - Module.Basis.span_neg 📋 Mathlib.LinearAlgebra.Basis.Basic
{ι : Type u_1} {R : Type u_6} {M : Type u_7} [Ring R] [AddCommGroup M] [Module R M] {v : ι → M} (hli : LinearIndependent R v) (h : Submodule.span R (Set.range v) = Submodule.span R (Set.range (-v)) := by simp [← neg_range']) : Module.Basis.span ⋯ = (Module.Basis.span hli).map (LinearEquiv.neg R ≪≫ₗ LinearEquiv.ofEq (Submodule.span R (Set.range v)) (Submodule.span R (Set.range (-v))) h) - LinearEquiv.piCongrRight_trans 📋 Mathlib.LinearAlgebra.Pi
{R : Type u} {ι : Type x} [Semiring R] {φ : ι → Type u_1} {ψ : ι → Type u_2} {χ : ι → Type u_3} [(i : ι) → AddCommMonoid (φ i)] [(i : ι) → Module R (φ i)] [(i : ι) → AddCommMonoid (ψ i)] [(i : ι) → Module R (ψ i)] [(i : ι) → AddCommMonoid (χ i)] [(i : ι) → Module R (χ i)] (e : (i : ι) → φ i ≃ₗ[R] ψ i) (f : (i : ι) → ψ i ≃ₗ[R] χ i) : LinearEquiv.piCongrRight e ≪≫ₗ LinearEquiv.piCongrRight f = LinearEquiv.piCongrRight fun i => e i ≪≫ₗ f i - Submodule.Quotient.equiv_trans 📋 Mathlib.LinearAlgebra.Quotient.Basic
{R : Type u_1} [Ring R] {R₂ : Type u_5} [Ring R₂] {σ₁₂ : R →+* R₂} {σ₂₁ : R₂ →+* R} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] {M : Type u_6} {N : Type u_7} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R₂ N] (P : Submodule R M) (Q : Submodule R₂ N) {R₃ : Type u_8} {O : Type u_9} [Ring R₃] [AddCommGroup O] [Module R₃ O] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} {σ₁₃ : R →+* R₃} {σ₃₁ : R₃ →+* R} [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] (S : Submodule R₃ O) (e : M ≃ₛₗ[σ₁₂] N) (f : N ≃ₛₗ[σ₂₃] O) (he : Submodule.map (↑e) P = Q) (hf : Submodule.map (↑f) Q = S) (hef : Submodule.map (↑(e.trans f)) P = S) : Submodule.Quotient.equiv P S (e.trans f) hef = (Submodule.Quotient.equiv P Q e he).trans (Submodule.Quotient.equiv Q S f hf) - LinearEquiv.dualMap_trans 📋 Mathlib.LinearAlgebra.Dual.Defs
{R : Type u_1} {M₁ : Type u_2} {M₂ : Type u_3} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] {M₃ : Type u_4} [AddCommMonoid M₃] [Module R M₃] (f : M₁ ≃ₗ[R] M₂) (g : M₂ ≃ₗ[R] M₃) : g.dualMap ≪≫ₗ f.dualMap = (f ≪≫ₗ g).dualMap - DFinsupp.mapRange.linearEquiv_trans 📋 Mathlib.LinearAlgebra.DFinsupp
{ι : Type u_1} {R : Type u_3} [Semiring R] {β : ι → Type u_7} {β₁ : ι → Type u_8} {β₂ : ι → Type u_9} [(i : ι) → AddCommMonoid (β i)] [(i : ι) → AddCommMonoid (β₁ i)] [(i : ι) → AddCommMonoid (β₂ i)] [(i : ι) → Module R (β i)] [(i : ι) → Module R (β₁ i)] [(i : ι) → Module R (β₂ i)] (f : (i : ι) → β i ≃ₗ[R] β₁ i) (f₂ : (i : ι) → β₁ i ≃ₗ[R] β₂ i) : (DFinsupp.mapRange.linearEquiv fun i => f i ≪≫ₗ f₂ i) = DFinsupp.mapRange.linearEquiv f ≪≫ₗ DFinsupp.mapRange.linearEquiv f₂ - AddMonoidAlgebra.mapDomainLinearEquiv_trans 📋 Mathlib.Algebra.MonoidAlgebra.Module
{R : Type u_1} {S : Type u_2} {M : Type u_3} {N : Type u_4} {O : Type u_5} [Semiring R] [Semiring S] [Module R S] (e₁ : M ≃ N) (e₂ : N ≃ O) : AddMonoidAlgebra.mapDomainLinearEquiv R S (e₁.trans e₂) = AddMonoidAlgebra.mapDomainLinearEquiv R S e₁ ≪≫ₗ AddMonoidAlgebra.mapDomainLinearEquiv R S e₂ - MonoidAlgebra.mapDomainLinearEquiv_trans 📋 Mathlib.Algebra.MonoidAlgebra.Module
{R : Type u_1} {S : Type u_2} {M : Type u_3} {N : Type u_4} {O : Type u_5} [Semiring R] [Semiring S] [Module R S] (e₁ : M ≃ N) (e₂ : N ≃ O) : MonoidAlgebra.mapDomainLinearEquiv R S (e₁.trans e₂) = MonoidAlgebra.mapDomainLinearEquiv R S e₁ ≪≫ₗ MonoidAlgebra.mapDomainLinearEquiv R S e₂ - LinearMap.GeneralLinearGroup.congrLinearEquiv_trans 📋 Mathlib.LinearAlgebra.GeneralLinearGroup.Basic
{R : Type u_1} [Semiring R] {N₁ : Type u_9} {N₂ : Type u_10} {N₃ : Type u_11} [AddCommMonoid N₁] [AddCommMonoid N₂] [AddCommMonoid N₃] [Module R N₁] [Module R N₂] [Module R N₃] (e₁₂ : N₁ ≃ₗ[R] N₂) (e₂₃ : N₂ ≃ₗ[R] N₃) : (LinearMap.GeneralLinearGroup.congrLinearEquiv e₁₂).trans (LinearMap.GeneralLinearGroup.congrLinearEquiv e₂₃) = LinearMap.GeneralLinearGroup.congrLinearEquiv (e₁₂ ≪≫ₗ e₂₃) - LinearMap.GeneralLinearGroup.congrLinearEquiv_trans' 📋 Mathlib.LinearAlgebra.GeneralLinearGroup.Basic
{R₁ : Type u_3} {R₂ : Type u_4} {R₃ : Type u_5} {M₁ : Type u_6} {M₂ : Type u_7} {M₃ : Type u_8} [Semiring R₁] [Semiring R₂] [Semiring R₃] [AddCommMonoid M₁] [AddCommMonoid M₂] [AddCommMonoid M₃] [Module R₁ M₁] [Module R₂ M₂] [Module R₃ M₃] {σ₁₂ : R₁ →+* R₂} {σ₂₃ : R₂ →+* R₃} {σ₁₃ : R₁ →+* R₃} {σ₂₁ : R₂ →+* R₁} {σ₃₂ : R₃ →+* R₂} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₂₁ σ₁₂] [RingHomInvPair σ₃₂ σ₂₃] [RingHomInvPair σ₃₁ σ₁₃] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] (e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂) (e₂₃ : M₂ ≃ₛₗ[σ₂₃] M₃) : (LinearMap.GeneralLinearGroup.congrLinearEquiv e₁₂).trans (LinearMap.GeneralLinearGroup.congrLinearEquiv e₂₃) = LinearMap.GeneralLinearGroup.congrLinearEquiv (e₁₂.trans e₂₃) - LinearMap.GeneralLinearGroup.congrLinearEquiv_apply 📋 Mathlib.LinearAlgebra.GeneralLinearGroup.Basic
{R₁ : Type u_3} {R₂ : Type u_4} {M₁ : Type u_6} {M₂ : Type u_7} [Semiring R₁] [Semiring R₂] [AddCommMonoid M₁] [AddCommMonoid M₂] [Module R₁ M₁] [Module R₂ M₂] {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] (e₁₂ : M₁ ≃ₛₗ[σ₁₂] M₂) (g : LinearMap.GeneralLinearGroup R₁ M₁) : (LinearMap.GeneralLinearGroup.congrLinearEquiv e₁₂) g = LinearMap.GeneralLinearGroup.ofLinearEquiv (e₁₂.symm.trans (g.toLinearEquiv.trans e₁₂)) - Submodule.prodComm_trans_prodEquivOfIsCompl 📋 Mathlib.LinearAlgebra.Projection
{R : Type u_1} [Ring R] {E : Type u_2} [AddCommGroup E] [Module R E] (p q : Submodule R E) (h : IsCompl p q) : LinearEquiv.prodComm R ↥q ↥p ≪≫ₗ p.prodEquivOfIsCompl q h = q.prodEquivOfIsCompl p ⋯ - TensorProduct.comm_trans_comm 📋 Mathlib.LinearAlgebra.TensorProduct.Basic
(R : Type u_1) [CommSemiring R] (M : Type u_6) (N : Type u_7) [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] : TensorProduct.comm R N M ≪≫ₗ TensorProduct.comm R M N = LinearEquiv.refl R (TensorProduct R N M) - LinearEquiv.lTensor_trans_rTensor 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R P] [Module R Q] (f : M ≃ₗ[R] P) (g : N ≃ₗ[R] Q) : LinearEquiv.lTensor M g ≪≫ₗ LinearEquiv.rTensor Q f = TensorProduct.congr f g - LinearEquiv.rTensor_trans_lTensor 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R P] [Module R Q] (f : M ≃ₗ[R] P) (g : N ≃ₗ[R] Q) : LinearEquiv.rTensor N f ≪≫ₗ LinearEquiv.lTensor P g = TensorProduct.congr f g - LinearEquiv.lTensor_trans 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R P] [Module R Q] (g : P ≃ₗ[R] Q) (f : N ≃ₗ[R] P) : LinearEquiv.lTensor M (f ≪≫ₗ g) = LinearEquiv.lTensor M f ≪≫ₗ LinearEquiv.lTensor M g - LinearEquiv.rTensor_trans 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R P] [Module R Q] (g : P ≃ₗ[R] Q) (f : N ≃ₗ[R] P) : LinearEquiv.rTensor M (f ≪≫ₗ g) = LinearEquiv.rTensor M f ≪≫ₗ LinearEquiv.rTensor M g - LinearEquiv.comm_trans_lTensor_trans_comm_eq 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R N] [Module R P] [Module R Q] (g : N ≃ₗ[R] P) : TensorProduct.comm R N Q ≪≫ₗ LinearEquiv.lTensor Q g ≪≫ₗ TensorProduct.comm R Q P = LinearEquiv.rTensor Q g - LinearEquiv.comm_trans_rTensor_trans_comm_eq 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R N] [Module R P] [Module R Q] (g : N ≃ₗ[R] P) : TensorProduct.comm R Q N ≪≫ₗ LinearEquiv.rTensor Q g ≪≫ₗ TensorProduct.comm R P Q = LinearEquiv.lTensor Q g - TensorProduct.congr_trans 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} {R₂ : Type u_2} {R₃ : Type u_3} [CommSemiring R] [CommSemiring R₂] [CommSemiring R₃] {σ₁₂ : R →+* R₂} {σ₂₃ : R₂ →+* R₃} {σ₁₃ : R →+* R₃} {M : Type u_4} {N : Type u_5} {M₂ : Type u_9} {M₃ : Type u_10} {N₂ : Type u_11} {N₃ : Type u_12} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid M₂] [AddCommMonoid N₂] [AddCommMonoid M₃] [AddCommMonoid N₃] [Module R M] [Module R N] [Module R₂ M₂] [Module R₂ N₂] [Module R₃ M₃] [Module R₃ N₃] {σ₂₁ : R₂ →+* R} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] {σ₃₂ : R₃ →+* R₂} [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] {σ₃₁ : R₃ →+* R} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] (f₂ : M₂ ≃ₛₗ[σ₂₃] M₃) (g₂ : N₂ ≃ₛₗ[σ₂₃] N₃) (f₁ : M ≃ₛₗ[σ₁₂] M₂) (g₁ : N ≃ₛₗ[σ₁₂] N₂) : TensorProduct.congr (f₁.trans f₂) (g₁.trans g₂) = (TensorProduct.congr f₁ g₁).trans (TensorProduct.congr f₂ g₂) - LinearEquiv.congr_trans_lTensor 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R S] [Module R P] [Module R Q] (g' : Q ≃ₗ[R] S) (f : M ≃ₗ[R] P) (g : N ≃ₗ[R] Q) : TensorProduct.congr f g ≪≫ₗ LinearEquiv.lTensor P g' = TensorProduct.congr f (g ≪≫ₗ g') - LinearEquiv.congr_trans_rTensor 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R S] [Module R P] [Module R Q] (f' : P ≃ₗ[R] S) (f : M ≃ₗ[R] P) (g : N ≃ₗ[R] Q) : TensorProduct.congr f g ≪≫ₗ LinearEquiv.rTensor Q f' = TensorProduct.congr (f ≪≫ₗ f') g - LinearEquiv.lTensor_trans_congr 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R S] [Module R P] [Module R Q] (f : M ≃ₗ[R] P) (g : N ≃ₗ[R] Q) (g' : S ≃ₗ[R] N) : LinearEquiv.lTensor M g' ≪≫ₗ TensorProduct.congr f g = TensorProduct.congr f (g' ≪≫ₗ g) - LinearEquiv.rTensor_trans_congr 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R S] [Module R P] [Module R Q] (f : M ≃ₗ[R] P) (g : N ≃ₗ[R] Q) (f' : S ≃ₗ[R] M) : LinearEquiv.rTensor N f' ≪≫ₗ TensorProduct.congr f g = TensorProduct.congr (f' ≪≫ₗ f) g - Equiv.tensorProductComm_def 📋 Mathlib.LinearAlgebra.TensorProduct.Map
(R : Type u_1) {A : Type u_2} {A' : Type u_3} {B : Type u_4} {B' : Type u_5} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid A'] [AddCommMonoid B'] [Module R A] [Module R B] [Module R A'] [Module R B'] (eA : A ≃ₗ[R] A') (eB : B ≃ₗ[R] B') : TensorProduct.comm R A B = TensorProduct.congr eA eB ≪≫ₗ (TensorProduct.comm R A' B' ≪≫ₗ TensorProduct.congr eB.symm eA.symm) - LinearEquiv.tensorProductComm_def 📋 Mathlib.LinearAlgebra.TensorProduct.Map
(R : Type u_1) {A : Type u_2} {A' : Type u_3} {B : Type u_4} {B' : Type u_5} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid A'] [AddCommMonoid B'] [Module R A] [Module R B] [Module R A'] [Module R B'] (eA : A ≃ₗ[R] A') (eB : B ≃ₗ[R] B') : TensorProduct.comm R A B = TensorProduct.congr eA eB ≪≫ₗ (TensorProduct.comm R A' B' ≪≫ₗ TensorProduct.congr eB.symm eA.symm) - TensorProduct.congr_congr 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} {R₂ : Type u_2} {R₃ : Type u_3} [CommSemiring R] [CommSemiring R₂] [CommSemiring R₃] {σ₁₂ : R →+* R₂} {σ₂₃ : R₂ →+* R₃} {σ₁₃ : R →+* R₃} {M : Type u_4} {N : Type u_5} {M₂ : Type u_9} {M₃ : Type u_10} {N₂ : Type u_11} {N₃ : Type u_12} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid M₂] [AddCommMonoid N₂] [AddCommMonoid M₃] [AddCommMonoid N₃] [Module R M] [Module R N] [Module R₂ M₂] [Module R₂ N₂] [Module R₃ M₃] [Module R₃ N₃] {σ₂₁ : R₂ →+* R} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] {σ₃₂ : R₃ →+* R₂} [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] {σ₃₁ : R₃ →+* R} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] (f₂ : M₂ ≃ₛₗ[σ₂₃] M₃) (g₂ : N₂ ≃ₛₗ[σ₂₃] N₃) (f₁ : M ≃ₛₗ[σ₁₂] M₂) (g₁ : N ≃ₛₗ[σ₁₂] N₂) (x : TensorProduct R M N) : (TensorProduct.congr f₂ g₂) ((TensorProduct.congr f₁ g₁) x) = (TensorProduct.congr (f₁.trans f₂) (g₁.trans g₂)) x - LinearEquiv.lTensor_trans_apply 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R P] [Module R Q] (g : P ≃ₗ[R] Q) (f : N ≃ₗ[R] P) (x : TensorProduct R M N) : (LinearEquiv.lTensor M (f ≪≫ₗ g)) x = (LinearEquiv.lTensor M g) ((LinearEquiv.lTensor M f) x) - LinearEquiv.rTensor_trans_apply 📋 Mathlib.LinearAlgebra.TensorProduct.Map
{R : Type u_1} [CommSemiring R] (M : Type u_4) {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R P] [Module R Q] (g : P ≃ₗ[R] Q) (f : N ≃ₗ[R] P) (y : TensorProduct R N M) : (LinearEquiv.rTensor M (f ≪≫ₗ g)) y = (LinearEquiv.rTensor M g) ((LinearEquiv.rTensor M f) y) - LinearEquiv.mapMatrix_trans 📋 Mathlib.Data.Matrix.Basic
{m : Type u_2} {n : Type u_3} {R : Type u_4} {S : Type u_5} {T : Type u_6} {α : Type u_8} {β : Type u_9} {γ : Type u_10} [Semiring R] [Semiring S] [Semiring T] [AddCommMonoid α] [AddCommMonoid β] [AddCommMonoid γ] [Module R α] [Module S β] [Module T γ] {σᵣₛ : R →+* S} {σₛₜ : S →+* T} {σᵣₜ : R →+* T} [RingHomCompTriple σᵣₛ σₛₜ σᵣₜ] {σₛᵣ : S →+* R} {σₜₛ : T →+* S} {σₜᵣ : T →+* R} [RingHomCompTriple σₜₛ σₛᵣ σₜᵣ] [RingHomInvPair σᵣₛ σₛᵣ] [RingHomInvPair σₛᵣ σᵣₛ] [RingHomInvPair σₛₜ σₜₛ] [RingHomInvPair σₜₛ σₛₜ] [RingHomInvPair σᵣₜ σₜᵣ] [RingHomInvPair σₜᵣ σᵣₜ] (f : α ≃ₛₗ[σᵣₛ] β) (g : β ≃ₛₗ[σₛₜ] γ) : f.mapMatrix.trans g.mapMatrix = (f.trans g).mapMatrix - TensorProduct.comm_trans_lid 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
{R : Type u_1} [CommSemiring R] {M : Type u_4} [AddCommMonoid M] [Module R M] : TensorProduct.comm R M R ≪≫ₗ TensorProduct.lid R M = TensorProduct.rid R M - TensorProduct.comm_trans_rid 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
{R : Type u_1} [CommSemiring R] {M : Type u_4} [AddCommMonoid M] [Module R M] : TensorProduct.comm R R M ≪≫ₗ TensorProduct.rid R M = TensorProduct.lid R M - TensorProduct.lid_tensor 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
{R : Type u_1} [CommSemiring R] {M : Type u_4} {N : Type u_5} [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] : TensorProduct.lid R (TensorProduct R M N) = (TensorProduct.assoc R R M N).symm ≪≫ₗ LinearEquiv.rTensor N (TensorProduct.lid R M) - TensorProduct.tensorTensorTensorComm_trans_tensorTensorTensorComm 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
(R : Type u_1) [CommSemiring R] {M : Type u_4} {N : Type u_5} {P : Type u_6} {Q : Type u_7} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [AddCommMonoid Q] [Module R M] [Module R N] [Module R Q] [Module R P] : TensorProduct.tensorTensorTensorComm R M N P Q ≪≫ₗ TensorProduct.tensorTensorTensorComm R M P N Q = LinearEquiv.refl R (TensorProduct R (TensorProduct R M N) (TensorProduct R P Q)) - TensorProduct.leftComm_def 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
(R : Type u_1) [CommSemiring R] {M : Type u_4} {N : Type u_5} {P : Type u_6} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [Module R M] [Module R N] [Module R P] : TensorProduct.leftComm R M N P = (TensorProduct.assoc R M N P).symm ≪≫ₗ TensorProduct.congr (TensorProduct.comm R M N) (LinearEquiv.refl R P) ≪≫ₗ TensorProduct.assoc R N M P - TensorProduct.rightComm_def 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
(R : Type u_1) [CommSemiring R] {M : Type u_4} {N : Type u_5} {P : Type u_6} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [Module R M] [Module R N] [Module R P] : TensorProduct.rightComm R M N P = TensorProduct.assoc R M N P ≪≫ₗ TensorProduct.congr (LinearEquiv.refl R M) (TensorProduct.comm R N P) ≪≫ₗ (TensorProduct.assoc R M P N).symm - Equiv.tensorProductAssoc_def 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
(R : Type u_10) {A : Type u_11} {A' : Type u_12} {B : Type u_13} {B' : Type u_14} {C : Type u_15} {C' : Type u_16} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid A'] [AddCommMonoid B'] [AddCommMonoid C'] [Module R A] [Module R B] [Module R C] [Module R A'] [Module R B'] [Module R C'] (eA : A ≃ₗ[R] A') (eB : B ≃ₗ[R] B') (eC : C ≃ₗ[R] C') : TensorProduct.assoc R A B C = TensorProduct.congr (TensorProduct.congr eA eB) eC ≪≫ₗ (TensorProduct.assoc R A' B' C' ≪≫ₗ TensorProduct.congr eA.symm (TensorProduct.congr eB.symm eC.symm)) - LinearEquiv.tensorProductAssoc_def 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
(R : Type u_10) {A : Type u_11} {A' : Type u_12} {B : Type u_13} {B' : Type u_14} {C : Type u_15} {C' : Type u_16} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid A'] [AddCommMonoid B'] [AddCommMonoid C'] [Module R A] [Module R B] [Module R C] [Module R A'] [Module R B'] [Module R C'] (eA : A ≃ₗ[R] A') (eB : B ≃ₗ[R] B') (eC : C ≃ₗ[R] C') : TensorProduct.assoc R A B C = TensorProduct.congr (TensorProduct.congr eA eB) eC ≪≫ₗ (TensorProduct.assoc R A' B' C' ≪≫ₗ TensorProduct.congr eA.symm (TensorProduct.congr eB.symm eC.symm)) - TensorProduct.assoc_tensor'' 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
{R : Type u_1} [CommSemiring R] {M : Type u_4} {N : Type u_5} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R Q] [Module R S] : TensorProduct.assoc R M N (TensorProduct R Q S) = (TensorProduct.assoc R (TensorProduct R M N) Q S).symm ≪≫ₗ LinearEquiv.rTensor S (TensorProduct.assoc R M N Q) ≪≫ₗ TensorProduct.assoc R M (TensorProduct R N Q) S ≪≫ₗ LinearEquiv.lTensor M (TensorProduct.assoc R N Q S) - TensorProduct.assoc_tensor' 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
{R : Type u_1} [CommSemiring R] {M : Type u_4} {N : Type u_5} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R Q] [Module R S] : TensorProduct.assoc R M (TensorProduct R N Q) S = LinearEquiv.rTensor S (TensorProduct.assoc R M N Q).symm ≪≫ₗ TensorProduct.assoc R (TensorProduct R M N) Q S ≪≫ₗ TensorProduct.assoc R M N (TensorProduct R Q S) ≪≫ₗ LinearEquiv.lTensor M (TensorProduct.assoc R N Q S).symm - TensorProduct.assoc_tensor 📋 Mathlib.LinearAlgebra.TensorProduct.Associator
{R : Type u_1} [CommSemiring R] {M : Type u_4} {N : Type u_5} {Q : Type u_7} {S : Type u_8} [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid Q] [AddCommMonoid S] [Module R M] [Module R N] [Module R Q] [Module R S] : TensorProduct.assoc R (TensorProduct R M N) Q S = LinearEquiv.rTensor S (TensorProduct.assoc R M N Q) ≪≫ₗ TensorProduct.assoc R M (TensorProduct R N Q) S ≪≫ₗ LinearEquiv.lTensor M (TensorProduct.assoc R N Q S) ≪≫ₗ (TensorProduct.assoc R M N (TensorProduct R Q S)).symm - LinearEquiv.baseChange_trans 📋 Mathlib.LinearAlgebra.TensorProduct.Tower
(R : Type u_1) (A : Type u_2) (M : Type u_4) (N : Type u_5) {P : Type u_6} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [Module R M] [Module R N] [Module R P] (e : M ≃ₗ[R] N) (f : N ≃ₗ[R] P) : LinearEquiv.baseChange R A M P (e ≪≫ₗ f) = LinearEquiv.baseChange R A M N e ≪≫ₗ LinearEquiv.baseChange R A N P f - TensorProduct.AlgebraTensorModule.congr_trans 📋 Mathlib.LinearAlgebra.TensorProduct.Tower
{R : Type uR} {A : Type uA} {M : Type uM} {N : Type uN} {P : Type uP} {Q : Type uQ} {P' : Type uP'} {Q' : Type uQ'} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] [Module A M] [IsScalarTower R A M] [AddCommMonoid N] [Module R N] [AddCommMonoid P] [Module R P] [Module A P] [IsScalarTower R A P] [AddCommMonoid Q] [Module R Q] [AddCommMonoid P'] [Module R P'] [Module A P'] [IsScalarTower R A P'] [AddCommMonoid Q'] [Module R Q'] (f₁ : M ≃ₗ[A] P) (f₂ : P ≃ₗ[A] P') (g₁ : N ≃ₗ[R] Q) (g₂ : Q ≃ₗ[R] Q') : TensorProduct.AlgebraTensorModule.congr (f₁ ≪≫ₗ f₂) (g₁ ≪≫ₗ g₂) = TensorProduct.AlgebraTensorModule.congr f₁ g₁ ≪≫ₗ TensorProduct.AlgebraTensorModule.congr f₂ g₂ - Module.Basis.repr_smul 📋 Mathlib.LinearAlgebra.Basis.SMul
{ι : Type u_1} {R : Type u_2} {M : Type u_4} [Semiring R] [AddCommMonoid M] [Module R M] {G : Type u_5} [Group G] [DistribMulAction G M] [SMulCommClass G R M] (g : G) (b : Module.Basis ι R M) : (g • b).repr = (DistribMulAction.toLinearEquiv R M g).symm ≪≫ₗ b.repr - IsFractionRing.semilinearEquivOfRingEquiv_comp 📋 Mathlib.RingTheory.Localization.FractionRing
{A : Type u_8} {B : Type u_9} (K : Type u_10) (L : Type u_11) [CommRing A] [CommRing B] [CommRing K] [CommRing L] [Algebra A K] [IsFractionRing A K] [Algebra B L] [IsFractionRing B L] (f : A ≃+* B) {C : Type u_12} (M : Type u_13) [CommRing C] [CommRing M] [Algebra C M] [IsFractionRing C M] (g : B ≃+* C) : have this := ⋯; have this_1 := ⋯; IsFractionRing.semilinearEquivOfRingEquiv K M (f.trans g) = (IsFractionRing.semilinearEquivOfRingEquiv K L f).trans (IsFractionRing.semilinearEquivOfRingEquiv L M g) - AlternatingMap.domLCongr_trans 📋 Mathlib.LinearAlgebra.Alternating.Basic
(R : Type u_1) [Semiring R] {M : Type u_2} [AddCommMonoid M] [Module R M] (N : Type u_3) [AddCommMonoid N] [Module R N] (ι : Type u_7) {M₂ : Type u_10} [AddCommMonoid M₂] [Module R M₂] {M₃ : Type u_11} [AddCommMonoid M₃] [Module R M₃] (S : Type u_12) [Semiring S] [Module S N] [SMulCommClass R S N] (e : M ≃ₗ[R] M₂) (f : M₂ ≃ₗ[R] M₃) : AlternatingMap.domLCongr R N ι S e ≪≫ₗ AlternatingMap.domLCongr R N ι S f = AlternatingMap.domLCongr R N ι S (e ≪≫ₗ f) - Matrix.reindexLinearEquiv_trans 📋 Mathlib.LinearAlgebra.Matrix.Reindex
{m : Type u_1} {n : Type u_2} {m' : Type u_4} {n' : Type u_5} {m'' : Type u_7} {n'' : Type u_8} (R : Type u_9) (A : Type u_10) [Semiring R] [AddCommMonoid A] [Module R A] (e₁ : m ≃ m') (e₂ : n ≃ n') (e₁' : m' ≃ m'') (e₂' : n' ≃ n'') : Matrix.reindexLinearEquiv R A e₁ e₂ ≪≫ₗ Matrix.reindexLinearEquiv R A e₁' e₂' = Matrix.reindexLinearEquiv R A (e₁.trans e₁') (e₂.trans e₂') - Matrix.reindexLinearEquiv_trans_reindexLinearEquiv 📋 Mathlib.LinearAlgebra.Matrix.Reindex
{m : Type u_1} {n : Type u_2} {m' : Type u_4} {n' : Type u_5} {m'' : Type u_7} {n'' : Type u_8} (R : Type u_9) (A : Type u_10) [Semiring R] [AddCommMonoid A] [Module R A] (e₁ : m ≃ m') (e₂ : n ≃ n') (e₁' : m' ≃ m'') (e₂' : n' ≃ n'') : Matrix.reindexLinearEquiv R A e₁ e₂ ≪≫ₗ Matrix.reindexLinearEquiv R A e₁' e₂' = Matrix.reindexLinearEquiv R A (e₁.trans e₁') (e₂.trans e₂') - CoalgEquiv.trans_toLinearEquiv 📋 Mathlib.RingTheory.Coalgebra.Equiv
{R : Type u_1} {A : Type u_2} {B : Type u_3} {C : Type u_4} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [Module R A] [Module R B] [Module R C] [CoalgebraStruct R A] [CoalgebraStruct R B] [CoalgebraStruct R C] {e₁₂ : A ≃ₗc[R] B} {e₂₃ : B ≃ₗc[R] C} : (e₁₂.trans e₂₃).toLinearEquiv = e₁₂.toLinearEquiv ≪≫ₗ e₂₃.toLinearEquiv - ContinuousLinearEquiv.trans_toLinearEquiv 📋 Mathlib.Topology.Algebra.Module.Equiv
{R₁ : Type u_1} {R₂ : Type u_2} {R₃ : Type u_3} [Semiring R₁] [Semiring R₂] [Semiring R₃] {σ₁₂ : R₁ →+* R₂} {σ₂₁ : R₂ →+* R₁} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] {σ₁₃ : R₁ →+* R₃} {σ₃₁ : R₃ →+* R₁} [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] {M₁ : Type u_4} [TopologicalSpace M₁] [AddCommMonoid M₁] {M₂ : Type u_5} [TopologicalSpace M₂] [AddCommMonoid M₂] {M₃ : Type u_6} [TopologicalSpace M₃] [AddCommMonoid M₃] [Module R₁ M₁] [Module R₂ M₂] [Module R₃ M₃] (e₁ : M₁ ≃SL[σ₁₂] M₂) (e₂ : M₂ ≃SL[σ₂₃] M₃) : ↑(e₁.trans e₂) = (↑e₁).trans ↑e₂ - LinearEquiv.det_conj 📋 Mathlib.LinearAlgebra.Determinant
{R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') : LinearEquiv.det (e.symm ≪≫ₗ f ≪≫ₗ e) = LinearEquiv.det f - LinearEquiv.det_trans 📋 Mathlib.LinearAlgebra.Determinant
{R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] (f g : M ≃ₗ[R] M) : LinearEquiv.det (f ≪≫ₗ g) = LinearEquiv.det g * LinearEquiv.det f - LinearMap.BilinForm.flip_flip 📋 Mathlib.LinearAlgebra.BilinearForm.Basic
{R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] : LinearMap.BilinForm.flipHom ≪≫ₗ LinearMap.BilinForm.flipHom = LinearEquiv.refl R (LinearMap.BilinForm R M) - LinearEquiv.congrRight₂_trans 📋 Mathlib.LinearAlgebra.BilinearForm.Hom
{R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {N₁ : Type u_9} {N₂ : Type u_10} {N₃ : Type u_11} [AddCommMonoid N₁] [AddCommMonoid N₂] [AddCommMonoid N₃] [Module R N₁] [Module R N₂] [Module R N₃] (e₁₂ : N₁ ≃ₗ[R] N₂) (e₂₃ : N₂ ≃ₗ[R] N₃) : (e₁₂ ≪≫ₗ e₂₃).congrRight₂ = e₁₂.congrRight₂ ≪≫ₗ e₂₃.congrRight₂ - LinearMap.BilinForm.congr_trans 📋 Mathlib.LinearAlgebra.BilinearForm.Hom
{R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {M' : Type u_7} {M'' : Type u_8} [AddCommMonoid M'] [AddCommMonoid M''] [Module R M'] [Module R M''] (e : M ≃ₗ[R] M') (f : M' ≃ₗ[R] M'') : LinearMap.BilinForm.congr e ≪≫ₗ LinearMap.BilinForm.congr f = LinearMap.BilinForm.congr (e ≪≫ₗ f) - LinearMap.BilinForm.congr_congr 📋 Mathlib.LinearAlgebra.BilinearForm.Hom
{R : Type u_1} {M : Type u_2} [CommSemiring R] [AddCommMonoid M] [Module R M] {M' : Type u_7} {M'' : Type u_8} [AddCommMonoid M'] [AddCommMonoid M''] [Module R M'] [Module R M''] (e : M' ≃ₗ[R] M'') (f : M ≃ₗ[R] M') (B : LinearMap.BilinForm R M) : (LinearMap.BilinForm.congr e) ((LinearMap.BilinForm.congr f) B) = (LinearMap.BilinForm.congr (f ≪≫ₗ e)) B - LinearEquiv.trans_dualMap_symm_flip 📋 Mathlib.LinearAlgebra.PerfectPairing.Basic
{R : Type u_1} {M : Type u_2} {N : Type u_3} [CommSemiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid N] [Module R N] [Module.IsReflexive R M] (e : N ≃ₗ[R] Module.Dual R M) : ↑(e ≪≫ₗ e.flip.symm.dualMap) = Module.Dual.eval R N - LinearEquiv.symm_flip 📋 Mathlib.LinearAlgebra.PerfectPairing.Basic
{R : Type u_1} {M : Type u_2} {N : Type u_3} [CommSemiring R] [AddCommMonoid M] [Module R M] [AddCommMonoid N] [Module R N] [Module.IsReflexive R M] (e : N ≃ₗ[R] Module.Dual R M) : e.flip.symm = e.symm.dualMap ≪≫ₗ (Module.evalEquiv R M).symm - Module.infinite_range_reflection_reflection_iterate_iff 📋 Mathlib.LinearAlgebra.Reflection
{R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} {y : M} {g : Module.Dual R M} [IsAddTorsionFree M] (hfx : f x = 2) (hgy : g y = 2) (hgxfy : f y * g x = 4) : (Set.range fun n => (⇑(Module.reflection hgy ≪≫ₗ Module.reflection hfx))^[n] y).Infinite ↔ f y • x ≠ 2 • y - Module.reflection_reflection_iterate 📋 Mathlib.LinearAlgebra.Reflection
{R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} {y : M} {g : Module.Dual R M} (hfx : f x = 2) (hgy : g y = 2) (hgxfy : f y * g x = 4) (n : ℕ) : (⇑(Module.reflection hgy ≪≫ₗ Module.reflection hfx))^[n] y = y + n • (f y • x - 2 • y) - RootPairing.Equiv.coweightEquiv_comp_toLin 📋 Mathlib.LinearAlgebra.RootSystem.Hom
{ι : Type u_1} {R : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : RootPairing ι R M N} (x y : P.Equiv P) : (x.comp y).coweightEquiv = x.coweightEquiv ≪≫ₗ y.coweightEquiv - RootPairing.Equiv.weightEquiv_comp_toLin 📋 Mathlib.LinearAlgebra.RootSystem.Hom
{ι : Type u_1} {R : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : RootPairing ι R M N} (x y : P.Equiv P) : (x.comp y).weightEquiv = y.weightEquiv ≪≫ₗ x.weightEquiv - RootPairing.Equiv.coweightEquiv_mul 📋 Mathlib.LinearAlgebra.RootSystem.Hom
{ι : Type u_1} {R : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : RootPairing ι R M N} (x y : P.Equiv P) : x.coweightEquiv * y.coweightEquiv = y.coweightEquiv ≪≫ₗ x.coweightEquiv - RootPairing.Equiv.weightEquiv_mul 📋 Mathlib.LinearAlgebra.RootSystem.Hom
{ι : Type u_1} {R : Type u_2} {M : Type u_3} {N : Type u_4} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {P : RootPairing ι R M N} (x y : P.Equiv P) : x.weightEquiv * y.weightEquiv = y.weightEquiv ≪≫ₗ x.weightEquiv - Algebra.Extension.cotangentComplexBaseChange_eq_lTensor_cotangentComplex 📋 Mathlib.RingTheory.Extension.Cotangent.Basic
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Extension R S) (A : Type u_1) [CommRing A] [Algebra S A] [Algebra P.Ring A] [IsScalarTower P.Ring S A] : KaehlerDifferential.cotangentComplexBaseChange R S P.Ring A = ↑(TensorProduct.AlgebraTensorModule.cancelBaseChange P.Ring S A A Ω[P.Ring⁄R]) ∘ₗ LinearMap.baseChange A P.cotangentComplex ∘ₗ ↑((TensorProduct.AlgebraTensorModule.cancelBaseChange P.Ring S A A ↥P.ker).symm ≪≫ₗ LinearEquiv.baseChange S A (TensorProduct P.Ring S ↥P.ker) P.Cotangent P.cotangentEquiv) - Algebra.Extension.lTensor_cotangentComplex_eq_cotangentComplexBaseChange 📋 Mathlib.RingTheory.Extension.Cotangent.Basic
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (P : Algebra.Extension R S) (A : Type u_1) [CommRing A] [Algebra S A] [Algebra P.Ring A] [IsScalarTower P.Ring S A] : LinearMap.baseChange A P.cotangentComplex = ↑(TensorProduct.AlgebraTensorModule.cancelBaseChange P.Ring S A A Ω[P.Ring⁄R]).symm ∘ₗ KaehlerDifferential.cotangentComplexBaseChange R S P.Ring A ∘ₗ ↑((TensorProduct.AlgebraTensorModule.cancelBaseChange P.Ring S A A ↥P.ker).symm ≪≫ₗ LinearEquiv.baseChange S A (TensorProduct P.Ring S ↥P.ker) P.Cotangent P.cotangentEquiv).symm - PiTensorProduct.reindex_trans 📋 Mathlib.LinearAlgebra.PiTensorProduct.Basic
{ι : Type u_1} {ι₂ : Type u_2} {ι₃ : Type u_3} {R : Type u_4} [CommSemiring R] {s : ι → Type u_7} [(i : ι) → AddCommMonoid (s i)] [(i : ι) → Module R (s i)] (e : ι ≃ ι₂) (e' : ι₂ ≃ ι₃) : PiTensorProduct.reindex R s e ≪≫ₗ PiTensorProduct.reindex R (fun i => s (e.symm i)) e' = PiTensorProduct.reindex R s (e.trans e') - TensorPower.cast_trans 📋 Mathlib.LinearAlgebra.TensorPower.Basic
(R : Type u_1) (M : Type u_2) [CommSemiring R] [AddCommMonoid M] [Module R M] {i j k : ℕ} (h : i = j) (h' : j = k) : TensorPower.cast R M h ≪≫ₗ TensorPower.cast R M h' = TensorPower.cast R M ⋯ - Submodule.comm_trans_lTensorOne 📋 Mathlib.LinearAlgebra.TensorProduct.Submodule
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (M : Submodule R S) : TensorProduct.comm R ↥M ↥⊥ ≪≫ₗ M.lTensorOne = M.rTensorOne - Submodule.comm_trans_rTensorOne 📋 Mathlib.LinearAlgebra.TensorProduct.Submodule
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (M : Submodule R S) : TensorProduct.comm R ↥⊥ ↥M ≪≫ₗ M.rTensorOne = M.lTensorOne - Submodule.mulMap_op 📋 Mathlib.LinearAlgebra.TensorProduct.Submodule
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (M N : Submodule R S) : (Submodule.equivOpposite.symm (MulOpposite.op M)).mulMap (Submodule.equivOpposite.symm (MulOpposite.op N)) = ↑(MulOpposite.opLinearEquiv R) ∘ₗ N.mulMap M ∘ₗ ↑(TensorProduct.congr ((MulOpposite.opLinearEquiv R).symm.ofSubmodule' M) ((MulOpposite.opLinearEquiv R).symm.ofSubmodule' N) ≪≫ₗ TensorProduct.comm R ↥M ↥N) - LinearIsometryEquiv.toLinearEquiv_trans 📋 Mathlib.Analysis.Normed.Operator.LinearIsometry
{R : Type u_1} {R₂ : Type u_2} {R₃ : Type u_3} {E : Type u_4} {E₂ : Type u_5} {E₃ : Type u_6} [Semiring R] [Semiring R₂] [Semiring R₃] {σ₁₂ : R →+* R₂} {σ₂₁ : R₂ →+* R} {σ₁₃ : R →+* R₃} {σ₃₁ : R₃ →+* R} {σ₂₃ : R₂ →+* R₃} {σ₃₂ : R₃ →+* R₂} [RingHomInvPair σ₁₂ σ₂₁] [RingHomInvPair σ₂₁ σ₁₂] [RingHomInvPair σ₁₃ σ₃₁] [RingHomInvPair σ₃₁ σ₁₃] [RingHomInvPair σ₂₃ σ₃₂] [RingHomInvPair σ₃₂ σ₂₃] [RingHomCompTriple σ₁₂ σ₂₃ σ₁₃] [RingHomCompTriple σ₃₂ σ₂₁ σ₃₁] [SeminormedAddCommGroup E] [SeminormedAddCommGroup E₂] [SeminormedAddCommGroup E₃] [Module R E] [Module R₂ E₂] [Module R₃ E₃] (e : E ≃ₛₗᵢ[σ₁₂] E₂) (e' : E₂ ≃ₛₗᵢ[σ₂₃] E₃) : (e.trans e').toLinearEquiv = e.trans e'.toLinearEquiv - AffineEquiv.ofLinearEquiv_trans_ofLinearEquiv 📋 Mathlib.LinearAlgebra.AffineSpace.AffineEquiv
{k : Type u_10} {V : Type u_11} {P : Type u_12} [Ring k] [AddCommGroup V] [Module k V] [AddTorsor V P] (A B : V ≃ₗ[k] V) (p₀ p₁ p₂ : P) : (AffineEquiv.ofLinearEquiv A p₀ p₁).trans (AffineEquiv.ofLinearEquiv B p₁ p₂) = AffineEquiv.ofLinearEquiv (A ≪≫ₗ B) p₀ p₂ - AffineSubspace.linear_topEquiv 📋 Mathlib.LinearAlgebra.AffineSpace.AffineSubspace.Basic
(k : Type u_1) (V : Type u_2) (P : Type u_3) [Ring k] [AddCommGroup V] [Module k V] [S : AddTorsor V P] : (AffineSubspace.topEquiv k V P).linear = (LinearEquiv.ofEq ⊤.direction ⊤ ⋯).trans Submodule.topEquiv - AffineSubspace.linear_equivMapOfInjective 📋 Mathlib.Analysis.Normed.Affine.Isometry
{𝕜 : Type u_1} {V₁ : Type u_3} {V₂ : Type u_5} {P₁ : Type u_8} {P₂ : Type u_11} [NormedField 𝕜] [SeminormedAddCommGroup V₁] [NormedSpace 𝕜 V₁] [PseudoMetricSpace P₁] [NormedAddTorsor V₁ P₁] [SeminormedAddCommGroup V₂] [NormedSpace 𝕜 V₂] [PseudoMetricSpace P₂] [NormedAddTorsor V₂ P₂] (E : AffineSubspace 𝕜 P₁) [Nonempty ↥E] (φ : P₁ →ᵃ[𝕜] P₂) (hφ : Function.Injective ⇑φ) : (E.equivMapOfInjective φ hφ).linear = (Submodule.equivMapOfInjective φ.linear ⋯ E.direction).trans (LinearEquiv.ofEq (Submodule.map φ.linear E.direction) (AffineSubspace.map φ E).direction ⋯) - LinearEquiv.withLpCongr_trans 📋 Mathlib.Analysis.Normed.Lp.WithLp
(p : ENNReal) {K : Type u_1} {K' : Type u_2} {K'' : Type u_3} {V : Type u_4} {V' : Type u_5} {V'' : Type u_6} [Semiring K] [Semiring K'] [Semiring K''] {σ : K →+* K'} {σ' : K' →+* K} [RingHomInvPair σ σ'] [RingHomInvPair σ' σ] {τ : K' →+* K''} {τ' : K'' →+* K'} [RingHomInvPair τ τ'] [RingHomInvPair τ' τ] {ρ : K →+* K''} {ρ' : K'' →+* K} [RingHomInvPair ρ ρ'] [RingHomInvPair ρ' ρ] [RingHomCompTriple σ τ ρ] [RingHomCompTriple τ' σ' ρ'] [AddCommGroup V] [Module K V] [AddCommGroup V'] [Module K' V'] [AddCommGroup V''] [Module K'' V''] (f : V ≃ₛₗ[σ] V') (g : V' ≃ₛₗ[τ] V'') : LinearEquiv.withLpCongr p (f.trans g) = (LinearEquiv.withLpCongr p f).trans (LinearEquiv.withLpCongr p g) - OrthonormalBasis.coe_toBasis_repr 📋 Mathlib.Analysis.InnerProductSpace.PiL2
{ι : Type u_1} {𝕜 : Type u_3} [RCLike 𝕜] {E : Type u_4} [NormedAddCommGroup E] [InnerProductSpace 𝕜 E] [Fintype ι] (b : OrthonormalBasis ι 𝕜 E) : b.toBasis.equivFun = b.repr.toLinearEquiv ≪≫ₗ WithLp.linearEquiv 2 𝕜 (ι → 𝕜) - Module.Basis.coe_toOrthonormalBasis_repr 📋 Mathlib.Analysis.InnerProductSpace.PiL2
{ι : Type u_1} {𝕜 : Type u_3} [RCLike 𝕜] {E : Type u_4} [NormedAddCommGroup E] [InnerProductSpace 𝕜 E] [Fintype ι] (v : Module.Basis ι 𝕜 E) (hv : Orthonormal 𝕜 ⇑v) : ⇑(v.toOrthonormalBasis hv).repr = ⇑(v.equivFun ≪≫ₗ (WithLp.linearEquiv 2 𝕜 (ι → 𝕜)).symm) - Module.Basis.coe_toOrthonormalBasis_repr_symm 📋 Mathlib.Analysis.InnerProductSpace.PiL2
{ι : Type u_1} {𝕜 : Type u_3} [RCLike 𝕜] {E : Type u_4} [NormedAddCommGroup E] [InnerProductSpace 𝕜 E] [Fintype ι] (v : Module.Basis ι 𝕜 E) (hv : Orthonormal 𝕜 ⇑v) : ⇑(v.toOrthonormalBasis hv).repr.symm = ⇑(WithLp.linearEquiv 2 𝕜 (ι → 𝕜) ≪≫ₗ v.equivFun.symm) - Submodule.toLinearEquiv_orthogonalDecomposition_symm 📋 Mathlib.Analysis.InnerProductSpace.ProdL2
{𝕜 : Type u_1} {E : Type u_4} [RCLike 𝕜] [NormedAddCommGroup E] [InnerProductSpace 𝕜 E] (K : Submodule 𝕜 E) [K.HasOrthogonalProjection] : K.orthogonalDecomposition.symm.toLinearEquiv = WithLp.linearEquiv 2 𝕜 (↥K × ↥Kᗮ) ≪≫ₗ K.prodEquivOfIsCompl Kᗮ ⋯ - Submodule.toLinearEquiv_orthogonalDecomposition 📋 Mathlib.Analysis.InnerProductSpace.ProdL2
{𝕜 : Type u_1} {E : Type u_4} [RCLike 𝕜] [NormedAddCommGroup E] [InnerProductSpace 𝕜 E] (K : Submodule 𝕜 E) [K.HasOrthogonalProjection] : K.orthogonalDecomposition.toLinearEquiv = (K.prodEquivOfIsCompl Kᗮ ⋯).symm ≪≫ₗ (WithLp.linearEquiv 2 𝕜 (↥K × ↥Kᗮ)).symm - LinearMap.IntrinsicStar.starLinearEquiv_eq_arrowCongr 📋 Mathlib.Algebra.Star.LinearMap
{R : Type u_5} {E : Type u_6} {F : Type u_7} [CommSemiring R] [StarRing R] [AddCommMonoid E] [StarAddMonoid E] [Module R E] [StarModule R E] [AddCommMonoid F] [StarAddMonoid F] [Module R F] [StarModule R F] : starLinearEquiv R = (WithConv.linearEquiv R (E →ₗ[R] F)).trans (((starLinearEquiv R).arrowCongr (starLinearEquiv R)).trans (WithConv.linearEquiv R (E →ₗ[R] F)).symm) - WeakDual.toLinearEquiv_extendRCLikeL 📋 Mathlib.Analysis.Normed.Module.WeakDual
{𝕜 : Type u_5} {F : Type u_7} [RCLike 𝕜] [AddCommGroup F] [Module 𝕜 F] [TopologicalSpace F] [ContinuousConstSMul 𝕜 F] [Module ℝ F] [IsScalarTower ℝ 𝕜 F] : ↑WeakDual.extendRCLikeL = WeakDual.toStrongDual ≪≫ₗ StrongDual.extendRCLikeₗ ≪≫ₗ LinearEquiv.restrictScalars ℝ StrongDual.toWeakDual - Matrix.l2_opNorm_def 📋 Mathlib.Analysis.CStarAlgebra.Matrix
{𝕜 : Type u_1} {m : Type u_2} {n : Type u_3} [RCLike 𝕜] [Fintype m] [Fintype n] [DecidableEq n] (A : Matrix m n 𝕜) : ‖A‖ = ‖(Matrix.toEuclideanLin ≪≫ₗ LinearMap.toContinuousLinearMap) A‖ - Matrix.l2_opNNNorm_def 📋 Mathlib.Analysis.CStarAlgebra.Matrix
{𝕜 : Type u_1} {m : Type u_2} {n : Type u_3} [RCLike 𝕜] [Fintype m] [Fintype n] [DecidableEq n] (A : Matrix m n 𝕜) : ‖A‖₊ = ‖(Matrix.toEuclideanLin ≪≫ₗ LinearMap.toContinuousLinearMap) A‖₊ - Bundle.Trivialization.coe_coordChangeL' 📋 Mathlib.Topology.VectorBundle.Basic
{R : Type u_1} {B : Type u_2} {F : Type u_3} {E : B → Type u_4} [Semiring R] [TopologicalSpace F] [TopologicalSpace B] [TopologicalSpace (Bundle.TotalSpace F E)] [AddCommMonoid F] [Module R F] [(x : B) → AddCommMonoid (E x)] [(x : B) → Module R (E x)] (e e' : Bundle.Trivialization F Bundle.TotalSpace.proj) [Bundle.Trivialization.IsLinear R e] [Bundle.Trivialization.IsLinear R e'] {b : B} (hb : b ∈ e.baseSet ∩ e'.baseSet) : ↑(Bundle.Trivialization.coordChangeL R e e' b) = (Bundle.Trivialization.linearEquivAt R e b ⋯).symm ≪≫ₗ Bundle.Trivialization.linearEquivAt R e' b ⋯ - Bundle.Trivialization.coe_coordChangeL 📋 Mathlib.Topology.VectorBundle.Basic
{R : Type u_1} {B : Type u_2} {F : Type u_3} {E : B → Type u_4} [Semiring R] [TopologicalSpace F] [TopologicalSpace B] [TopologicalSpace (Bundle.TotalSpace F E)] [AddCommMonoid F] [Module R F] [(x : B) → AddCommMonoid (E x)] [(x : B) → Module R (E x)] (e e' : Bundle.Trivialization F Bundle.TotalSpace.proj) [Bundle.Trivialization.IsLinear R e] [Bundle.Trivialization.IsLinear R e'] {b : B} (hb : b ∈ e.baseSet ∩ e'.baseSet) : ⇑(Bundle.Trivialization.coordChangeL R e e' b) = ⇑((Bundle.Trivialization.linearEquivAt R e b ⋯).symm ≪≫ₗ Bundle.Trivialization.linearEquivAt R e' b ⋯) - Bundle.Trivialization.coordChangeL_symm_apply 📋 Mathlib.Topology.VectorBundle.Basic
{R : Type u_1} {B : Type u_2} {F : Type u_3} {E : B → Type u_4} [Semiring R] [TopologicalSpace F] [TopologicalSpace B] [TopologicalSpace (Bundle.TotalSpace F E)] [AddCommMonoid F] [Module R F] [(x : B) → AddCommMonoid (E x)] [(x : B) → Module R (E x)] (e e' : Bundle.Trivialization F Bundle.TotalSpace.proj) [Bundle.Trivialization.IsLinear R e] [Bundle.Trivialization.IsLinear R e'] {b : B} (hb : b ∈ e.baseSet ∩ e'.baseSet) : ⇑(Bundle.Trivialization.coordChangeL R e e' b).symm = ⇑((Bundle.Trivialization.linearEquivAt R e' b ⋯).symm ≪≫ₗ Bundle.Trivialization.linearEquivAt R e b ⋯) - Module.Basis.mulOpposite_repr_eq 📋 Mathlib.LinearAlgebra.Basis.MulOpposite
{R : Type u_1} {H : Type u_2} {ι : Type u_3} [Semiring R] [AddCommMonoid H] [Module R H] (b : Module.Basis ι R H) : b.mulOpposite.repr = (MulOpposite.opLinearEquiv R).symm ≪≫ₗ b.repr - Orientation.rightAngleRotationAux₁_def 📋 Mathlib.Analysis.InnerProductSpace.TwoDim
{E : Type u_2} [NormedAddCommGroup E] [InnerProductSpace ℝ E] [Fact (Module.finrank ℝ E = 2)] (o : Orientation ℝ E (Fin 2)) : o.rightAngleRotationAux₁ = have to_dual := (InnerProductSpace.toDual ℝ E).toLinearEquiv ≪≫ₗ LinearMap.toContinuousLinearMap.symm; ↑to_dual.symm ∘ₗ o.areaForm - Homogenization.congr_trans 📋 Mathlib.LinearAlgebra.AffineSpace.Homogenization
{R : Type u_1} [Ring R] {V₁ : Type u_4} {P₁ : Type u_5} [AddCommGroup V₁] [Module R V₁] [AddTorsor V₁ P₁] {V₂ : Type u_6} {P₂ : Type u_7} [AddCommGroup V₂] [Module R V₂] [AddTorsor V₂ P₂] {V₃ : Type u_8} {P₃ : Type u_9} [AddCommGroup V₃] [Module R V₃] [AddTorsor V₃ P₃] (f : P₁ ≃ᵃ[R] P₂) (g : P₂ ≃ᵃ[R] P₃) : Homogenization.congr (f.trans g) = Homogenization.congr f ≪≫ₗ Homogenization.congr g - LinearEquiv.transvection.trans_of_left_eq 📋 Mathlib.LinearAlgebra.Transvection.Basic
{R : Type u_1} {V : Type u_2} [Ring R] [AddCommGroup V] [Module R V] {f : Module.Dual R V} {v w : V} (hv : f v = 0) (hw : f w = 0) (hvw : f (v + w) = 0 := by simp [hv, hw]) : LinearEquiv.transvection hw ≪≫ₗ LinearEquiv.transvection hv = LinearEquiv.transvection hvw - LinearEquiv.transvection.trans_of_right_eq 📋 Mathlib.LinearAlgebra.Transvection.Basic
{R : Type u_1} {V : Type u_2} [Ring R] [AddCommGroup V] [Module R V] {f g : Module.Dual R V} {v : V} (hf : f v = 0) (hg : g v = 0) (hfg : (f + g) v = 0 := by simp [hf, hg]) : LinearEquiv.transvection hg ≪≫ₗ LinearEquiv.transvection hf = LinearEquiv.transvection hfg - SpecialLinearGroup.congr_linearEquiv_trans 📋 Mathlib.LinearAlgebra.SpecialLinearGroup
{R : Type u_1} {V : Type u_2} [CommRing R] [AddCommGroup V] [Module R V] {W : Type u_3} {X : Type u_4} [AddCommGroup W] [Module R W] [AddCommGroup X] [Module R X] (e : V ≃ₗ[R] W) (f : W ≃ₗ[R] X) : (SpecialLinearGroup.congr_linearEquiv e).trans (SpecialLinearGroup.congr_linearEquiv f) = SpecialLinearGroup.congr_linearEquiv (e ≪≫ₗ f) - SpecialLinearGroup.congr_linearEquiv_coe_apply 📋 Mathlib.LinearAlgebra.SpecialLinearGroup
{R : Type u_1} {V : Type u_2} [CommRing R] [AddCommGroup V] [Module R V] {W : Type u_3} [AddCommGroup W] [Module R W] (e : V ≃ₗ[R] W) (f : SpecialLinearGroup R V) : ↑((SpecialLinearGroup.congr_linearEquiv e) f) = e.symm ≪≫ₗ ↑f ≪≫ₗ e - DividedPowerAlgebra.mapEquiv_trans 📋 Mathlib.RingTheory.DividedPowerAlgebra.Init
{R : Type u_2} {M : Type u_3} [CommSemiring R] [AddCommMonoid M] [Module R M] {N : Type u_5} [AddCommMonoid N] [Module R N] {P : Type u_6} [AddCommMonoid P] [Module R P] (g : M ≃ₗ[R] N) (h : N ≃ₗ[R] P) : (DividedPowerAlgebra.mapEquiv g).trans (DividedPowerAlgebra.mapEquiv h) = DividedPowerAlgebra.mapEquiv (g ≪≫ₗ h)
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?bBy main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→and∀) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
⊢ (_ : Type _)finds all definitions which provide data while⊢ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision 69fae59