Loogle!
Result
Found 72 declarations mentioning Subalgebra.LinearDisjoint.
- Subalgebra.LinearDisjoint 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (A B : Subalgebra R S) : Prop - Subalgebra.LinearDisjoint.of_subsingleton 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] {A B : Subalgebra R S} [Subsingleton R] : A.LinearDisjoint B - Subalgebra.LinearDisjoint.of_subsingleton_top 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] {A B : Subalgebra R S} [Subsingleton S] : A.LinearDisjoint B - Subalgebra.LinearDisjoint.symm 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) : B.LinearDisjoint A - Subalgebra.linearDisjoint_comm 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} : A.LinearDisjoint B ↔ B.LinearDisjoint A - Subalgebra.LinearDisjoint.map 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) {T : Type w} [Semiring T] [Algebra R T] (f : S →ₐ[R] T) (hf : Function.Injective ⇑f) : (Subalgebra.map f A).LinearDisjoint (Subalgebra.map f B) - Subalgebra.LinearDisjoint.bot_left 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (B : Subalgebra R S) : ⊥.LinearDisjoint B - Subalgebra.LinearDisjoint.bot_right 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (A : Subalgebra R S) : A.LinearDisjoint ⊥ - Subalgebra.LinearDisjoint.symm_of_commute 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (hc : ∀ (a : ↥A) (b : ↥B), Commute ↑a ↑b) : B.LinearDisjoint A - Subalgebra.linearDisjoint_comm_of_commute 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] {A B : Subalgebra R S} (hc : ∀ (a : ↥A) (b : ↥B), Commute ↑a ↑b) : A.LinearDisjoint B ↔ B.LinearDisjoint A - Subalgebra.LinearDisjoint.isDomain_of_injective 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] [IsDomain S] {A : Type u_1} {B : Type u_2} [Semiring A] [Semiring B] [Algebra R A] [Algebra R B] {fa : A →ₐ[R] S} {fb : B →ₐ[R] S} (hfa : Function.Injective ⇑fa) (hfb : Function.Injective ⇑fb) (H : fa.range.LinearDisjoint fb.range) : IsDomain (TensorProduct R A B) - Subalgebra.LinearDisjoint.include_range 📋 Mathlib.RingTheory.LinearDisjoint
(R : Type u) [CommSemiring R] (A : Type v) [Semiring A] (B : Type w) [Semiring B] [Algebra R A] [Algebra R B] : Algebra.TensorProduct.includeLeft.range.LinearDisjoint Algebra.TensorProduct.includeRight.range - Subalgebra.LinearDisjoint.of_isField' 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A : Type v} [Ring A] {B : Type w} [Ring B] [Algebra R A] [Algebra R B] (H : IsField (TensorProduct R A B)) (fa : A →ₐ[R] S) (fb : B →ₐ[R] S) (hfa : Function.Injective ⇑fa) (hfb : Function.Injective ⇑fb) : fa.range.LinearDisjoint fb.range - Subalgebra.LinearDisjoint.of_le_left_of_flat 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) {A' : Subalgebra R S} (h : A' ≤ A) [Module.Flat R ↥B] : A'.LinearDisjoint B - Subalgebra.LinearDisjoint.of_le_right_of_flat 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) {B' : Subalgebra R S} (h : B' ≤ B) [Module.Flat R ↥A] : A.LinearDisjoint B' - Subalgebra.LinearDisjoint.eq_bot_of_self 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [Field R] [CommRing S] [Algebra R S] {A : Subalgebra R S} (H : A.LinearDisjoint A) : A = ⊥ - Subalgebra.LinearDisjoint.of_linearDisjoint_finite_left 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (A B : Subalgebra R S) [Algebra.IsIntegral R ↥A] (H : ∀ A' ≤ A, ∀ [Module.Finite R ↥A'], A'.LinearDisjoint B) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.of_linearDisjoint_finite_right 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (A B : Subalgebra R S) [Algebra.IsIntegral R ↥B] (H : ∀ B' ≤ B, ∀ [Module.Finite R ↥B'], A.LinearDisjoint B') : A.LinearDisjoint B - Subalgebra.LinearDisjoint.isDomain 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [IsDomain S] : IsDomain (TensorProduct R ↥A ↥B) - Subalgebra.LinearDisjoint.inf_eq_bot 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [Field R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) : A ⊓ B = ⊥ - Subalgebra.LinearDisjoint.basisOfBasisLeft 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} (b : Module.Basis ι R ↥A) : Module.Basis ι (↥B) S - Subalgebra.LinearDisjoint.basisOfBasisRight 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} (b : Module.Basis ι R ↥B) : Module.Basis ι (↥A) S - Subalgebra.linearDisjoint_iff 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [Semiring S] [Algebra R S] (A B : Subalgebra R S) : A.LinearDisjoint B ↔ (Subalgebra.toSubmodule A).LinearDisjoint (Subalgebra.toSubmodule B) - Subalgebra.LinearDisjoint.eq_bot_of_commute_of_self 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [Field R] [Ring S] [Algebra R S] {A : Subalgebra R S} (H : A.LinearDisjoint A) (hc : ∀ (a b : ↥A), Commute ↑a ↑b) : A = ⊥ - Subalgebra.LinearDisjoint.rank_eq_one_of_flat_of_self_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A : Subalgebra R S} (H : A.LinearDisjoint A) [Module.Flat R ↥A] (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥A = 1 - Subalgebra.LinearDisjoint.of_le_of_flat_left 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) {A' B' : Subalgebra R S} (ha : A' ≤ A) (hb : B' ≤ B) [Module.Flat R ↥A] [Module.Flat R ↥B'] : A'.LinearDisjoint B' - Subalgebra.LinearDisjoint.of_le_of_flat_right 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) {A' B' : Subalgebra R S} (ha : A' ≤ A) (hb : B' ≤ B) [Module.Flat R ↥B] [Module.Flat R ↥A'] : A'.LinearDisjoint B' - Subalgebra.LinearDisjoint.exists_field_of_isDomain_of_injective 📋 Mathlib.RingTheory.LinearDisjoint
(R : Type u) [CommRing R] (A : Type v) [CommRing A] (B : Type w) [CommRing B] [Algebra R A] [Algebra R B] [Module.Flat R A] [Module.Flat R B] [IsDomain (TensorProduct R A B)] (ha : Function.Injective ⇑(algebraMap R A)) (hb : Function.Injective ⇑(algebraMap R B)) : ∃ K x x_1 fa fb, Function.Injective ⇑fa ∧ Function.Injective ⇑fb ∧ fa.range.LinearDisjoint fb.range - Subalgebra.LinearDisjoint.of_isField 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : IsField (TensorProduct R ↥A ↥B)) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.rank_eq_one_of_commute_of_flat_of_self_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A : Subalgebra R S} (H : A.LinearDisjoint A) [Module.Flat R ↥A] (hc : ∀ (a b : ↥A), Commute ↑a ↑b) (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥A = 1 - Subalgebra.LinearDisjoint.of_linearDisjoint_finite 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} [Algebra.IsIntegral R ↥A] [Algebra.IsIntegral R ↥B] (H : ∀ (A' B' : Subalgebra R S), A' ≤ A → B' ≤ B → ∀ [Module.Finite R ↥A'] [Module.Finite R ↥B'], A'.LinearDisjoint B') : A.LinearDisjoint B - Subalgebra.LinearDisjoint.mulMap 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) : TensorProduct R ↥A ↥B ≃ₐ[R] ↥(A ⊔ B) - Subalgebra.LinearDisjoint.linearIndependent_mul_of_flat_left 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥A] {κ : Type u_1} {ι : Type u_2} {a : κ → ↥A} {b : ι → ↥B} (ha : LinearIndependent R a) (hb : LinearIndependent R b) : LinearIndependent R fun i => ↑(a i.1) * ↑(b i.2) - Subalgebra.LinearDisjoint.linearIndependent_mul_of_flat_right 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥B] {κ : Type u_1} {ι : Type u_2} {a : κ → ↥A} {b : ι → ↥B} (ha : LinearIndependent R a) (hb : LinearIndependent R b) : LinearIndependent R fun i => ↑(a i.1) * ↑(b i.2) - Subalgebra.LinearDisjoint.sup_free_of_free 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Free R ↥A] [Module.Free R ↥B] : Module.Free R ↥(A ⊔ B) - Subalgebra.LinearDisjoint.linearIndependent_right_of_flat 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥A] {ι : Type u_1} {b : ι → ↥B} (hb : LinearIndependent R b) : LinearIndependent (↥A) (⇑B.val ∘ b) - Subalgebra.LinearDisjoint.inf_eq_bot_of_commute 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [Field R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (hc : ∀ (a b : ↥(A ⊓ B)), Commute ↑a ↑b) : A ⊓ B = ⊥ - Subalgebra.LinearDisjoint.linearIndependent_left_op_of_flat 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥B] {ι : Type u_1} {a : ι → ↥A} (ha : LinearIndependent R a) : LinearIndependent (↥B.op) (MulOpposite.op ∘ ⇑A.val ∘ a) - Subalgebra.LinearDisjoint.linearIndependent_left_of_flat 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥B] {ι : Type u_1} {a : ι → ↥A} (ha : LinearIndependent R a) : LinearIndependent (↥B) (⇑A.val ∘ a) - Subalgebra.LinearDisjoint.linearIndependent_mul_of_flat 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (hf : Module.Flat R ↥A ∨ Module.Flat R ↥B) {κ : Type u_1} {ι : Type u_2} {a : κ → ↥A} {b : ι → ↥B} (ha : LinearIndependent R a) (hb : LinearIndependent R b) : LinearIndependent R fun i => ↑(a i.1) * ↑(b i.2) - Subalgebra.LinearDisjoint.mulMapLeftOfSupEqTop 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) : TensorProduct R ↥A ↥B ≃ₐ[↥A] S - Subalgebra.LinearDisjoint.linearIndependent_left_of_flat_of_commute 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥B] {ι : Type u_1} {a : ι → ↥A} (ha : LinearIndependent R a) (hc : ∀ (a : ↥A) (b : ↥B), Commute ↑a ↑b) : LinearIndependent (↥B) (⇑A.val ∘ a) - Subalgebra.LinearDisjoint.of_basis_right 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] (A B : Subalgebra R S) {ι : Type u_1} (b : Module.Basis ι R ↥B) (H : LinearIndependent (↥A) (⇑B.val ∘ ⇑b)) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.rank_inf_eq_one_of_flat_left_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥A] (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥(A ⊓ B) = 1 - Subalgebra.LinearDisjoint.rank_inf_eq_one_of_flat_right_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥B] (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥(A ⊓ B) = 1 - Subalgebra.LinearDisjoint.of_basis_left_op 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] (A B : Subalgebra R S) {ι : Type u_1} (a : Module.Basis ι R ↥A) (H : LinearIndependent (↥B.op) (MulOpposite.op ∘ ⇑A.val ∘ ⇑a)) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.of_basis_left 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] (A B : Subalgebra R S) {ι : Type u_1} (a : Module.Basis ι R ↥A) (H : LinearIndependent (↥B) (⇑A.val ∘ ⇑a)) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.of_basis_left_of_commute 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] (A B : Subalgebra R S) {ι : Type u_1} (a : Module.Basis ι R ↥A) (H : LinearIndependent (↥B) (⇑A.val ∘ ⇑a)) (hc : ∀ (a : ↥A) (b : ↥B), Commute ↑a ↑b) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.rank_inf_eq_one_of_flat_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (hf : Module.Flat R ↥A ∨ Module.Flat R ↥B) (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥(A ⊓ B) = 1 - Subalgebra.LinearDisjoint.algebraMap_basisOfBasisRight_apply 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} (b : Module.Basis ι R ↥B) (i : ι) : (H.basisOfBasisRight H' b) i = (algebraMap (↥B) S) (b i) - Subalgebra.LinearDisjoint.basisOfBasisLeft_apply 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} (b : Module.Basis ι R ↥A) (i : ι) : (H.basisOfBasisLeft H' b) i = (algebraMap (↥A) S) (b i) - Subalgebra.LinearDisjoint.of_basis_mul 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] (A B : Subalgebra R S) {κ : Type u_1} {ι : Type u_2} (a : Module.Basis κ R ↥A) (b : Module.Basis ι R ↥B) (H : LinearIndependent R fun i => ↑(a i.1) * ↑(b i.2)) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.rank_inf_eq_one_of_commute_of_flat_left_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥A] (hc : ∀ (a b : ↥(A ⊓ B)), Commute ↑a ↑b) (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥(A ⊓ B) = 1 - Subalgebra.LinearDisjoint.rank_inf_eq_one_of_commute_of_flat_right_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Flat R ↥B] (hc : ∀ (a b : ↥(A ⊓ B)), Commute ↑a ↑b) (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥(A ⊓ B) = 1 - Subalgebra.LinearDisjoint.rank_inf_eq_one_of_commute_of_flat_of_inj 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [Ring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (hf : Module.Flat R ↥A ∨ Module.Flat R ↥B) (hc : ∀ (a b : ↥(A ⊓ B)), Commute ↑a ↑b) (hinj : Function.Injective ⇑(algebraMap R S)) : Module.rank R ↥(A ⊓ B) = 1 - Subalgebra.LinearDisjoint.finrank_sup_of_free 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Free R ↥A] [Module.Free R ↥B] : Module.finrank R ↥(A ⊔ B) = Module.finrank R ↥A * Module.finrank R ↥B - Subalgebra.LinearDisjoint.rank_sup_of_free 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Free R ↥A] [Module.Free R ↥B] : Module.rank R ↥(A ⊔ B) = Module.rank R ↥A * Module.rank R ↥B - Subalgebra.linearDisjoint_iff_injective 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} : A.LinearDisjoint B ↔ Function.Injective ⇑(A.mulMap B) - Subalgebra.LinearDisjoint.of_finrank_sup_of_free 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} [Module.Free R ↥A] [Module.Free R ↥B] [Module.Finite R ↥A] [Module.Finite R ↥B] (H : Module.finrank R ↥(A ⊔ B) = Module.finrank R ↥A * Module.finrank R ↥B) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.leftMulMatrix_basisOfBasisRight_algebraMap 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} [Fintype ι] [DecidableEq ι] (b : Module.Basis ι R ↥B) (x : ↥B) : (Algebra.leftMulMatrix (H.basisOfBasisRight H' b)) ((algebraMap (↥B) S) x) = (algebraMap R ↥A).mapMatrix ((Algebra.leftMulMatrix b) x) - Subalgebra.LinearDisjoint.adjoin_rank_eq_rank_left 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Free R ↥A] [Module.Flat R ↥B] [Nontrivial R] [Nontrivial S] : Module.rank ↥B ↥(Algebra.adjoin ↥B ↑A) = Module.rank R ↥A - Subalgebra.LinearDisjoint.adjoin_rank_eq_rank_right 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) [Module.Free R ↥B] [Module.Flat R ↥A] [Nontrivial R] [Nontrivial S] : Module.rank ↥A ↥(Algebra.adjoin ↥A ↑B) = Module.rank R ↥B - Subalgebra.LinearDisjoint.mulMapLeftOfSupEqTop_tmul 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) (a : ↥A) (b : ↥B) : (H.mulMapLeftOfSupEqTop H') (a ⊗ₜ[R] b) = ↑a * ↑b - Subalgebra.LinearDisjoint.val_mulMap_tmul 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (a : ↥A) (b : ↥B) : ↑(H.mulMap (a ⊗ₜ[R] b)) = ↑a * ↑b - Subalgebra.LinearDisjoint.norm_algebraMap 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) [Module.Free R ↥B] [Module.Finite R ↥B] (x : ↥B) : (Algebra.norm ↥A) ((algebraMap (↥B) S) x) = (algebraMap R ↥A) ((Algebra.norm R) x) - Subalgebra.LinearDisjoint.mulMapLeftOfSupEqTop_symm_apply 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) (x : ↥B) : (H.mulMapLeftOfSupEqTop H').symm ↑x = 1 ⊗ₜ[R] x - Subalgebra.LinearDisjoint.algebraMap_basisOfBasisRight_repr_apply 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} (b : Module.Basis ι R ↥B) (x : ↥B) (i : ι) : (algebraMap (↥A) S) (((H.basisOfBasisRight H' b).repr ↑x) i) = (algebraMap R S) ((b.repr x) i) - Subalgebra.LinearDisjoint.basisOfBasisLeft_repr_apply 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommSemiring R] [CommSemiring S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) {ι : Type u_1} (b : Module.Basis ι R ↥A) (x : ↥A) (i : ι) : (algebraMap (↥B) S) (((H.basisOfBasisLeft H' b).repr ↑x) i) = (algebraMap R S) ((b.repr x) i) - Subalgebra.LinearDisjoint.of_finrank_coprime_of_free 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} [Module.Free R ↥A] [Module.Free R ↥B] [Module.Free ↥A ↥(Algebra.adjoin ↥A ↑B)] [Module.Free ↥B ↥(Algebra.adjoin ↥B ↑A)] (H : (Module.finrank R ↥A).Coprime (Module.finrank R ↥B)) : A.LinearDisjoint B - Subalgebra.LinearDisjoint.trace_algebraMap 📋 Mathlib.RingTheory.LinearDisjoint
{R : Type u} {S : Type v} [CommRing R] [CommRing S] [Algebra R S] {A B : Subalgebra R S} (H : A.LinearDisjoint B) (H' : A ⊔ B = ⊤) [Module.Free R ↥B] [Module.Finite R ↥B] (x : ↥B) : (Algebra.trace (↥A) S) ((algebraMap (↥B) S) x) = (algebraMap R ↥A) ((Algebra.trace R ↥B) x) - IntermediateField.linearDisjoint_iff 📋 Mathlib.FieldTheory.LinearDisjoint
{F : Type u} {E : Type v} [Field F] [Field E] [Algebra F E] (A : IntermediateField F E) (L : Type w) [Field L] [Algebra F L] [Algebra L E] [IsScalarTower F L E] : A.LinearDisjoint L ↔ A.LinearDisjoint (IsScalarTower.toAlgHom F L E).range - IntermediateField.linearDisjoint_iff' 📋 Mathlib.FieldTheory.LinearDisjoint
{F : Type u} {E : Type v} [Field F] [Field E] [Algebra F E] {A B : IntermediateField F E} : A.LinearDisjoint ↥B ↔ A.LinearDisjoint B.toSubalgebra
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