-
Notifications
You must be signed in to change notification settings - Fork 259
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: definition and basic properties of linearly disjoint #9651
base: master
Are you sure you want to change the base?
Conversation
Personally I'm inclined to use the following as the definition:
and we should be able to show
Note that in general I don't know if there are benefits of doing things in this generality; I just think it's better to find out most general statements we can prove. Maybe @AntoineChambert-Loir has thoughts? |
I don't have a clear idea. When the target algebra is not commutative, it does not seem obvious that the |
I doubt that. In the proof I use |
Maybe the right place for this file in mathlib's hierarchy is in Algebra.Algebra, or RingTheory (like |
I think that this requires K/R being flat, no? [EDIT] Yes, it requires flatness, at least for the items 1 and 2. Otherwise there is a counterexample: let R=Z, S=Z×Fp×Fp×Fp, let K be the submodule generated by (1,1,1,1) and (0,1,1,0), S be the submodule generated by (1,1,1,1) and (0,0,1,1), then they are both subalgebras, not flat over R, isomorphic to Z⊕Fp as R-modules, and they are linearly disjoint if using tensor product definition. On the other hand, (p,0,0,0) is contained in their intersections, which is R-linearly independent, but not K-linearly independent nor L-linearly independent. I don't know if there is counterexample for item 3. I can prove it if assuming one of K,L is flat over R. |
You're right! Thanks for the counterexample and sorry for my mistake. So either we assume flatness or we require R to be a field; both would be fine with me. |
I think it's better to give the map |
# Conflicts: # Mathlib/LinearAlgebra/LinearDisjoint.lean
…arly disjoint of submodules (#12434) This is part 1 of #9651. We adapt the definitions in <https://en.wikipedia.org/wiki/Linearly_disjoint>. Let `R` be a commutative ring, `S` be an `R`-algebra (not necessarily commutative). Two `R`-submodules `M` and `N` in `S` are linearly disjoint, if the natural `R`-linear map `M ⊗[R] N →ₗ[R] S` (`Submodule.mulMap M N`) induced by the multiplication in `S` is injective. The following is the first equivalent characterization of linearly disjointness: - `Submodule.LinearDisjoint.linearIndependent_left_of_flat`: if `M` and `N` are linearly disjoint, if `N` is a flat `R`-module, then for any family of `R`-linearly independent elements `{ m_i }` of `M`, they are also `N`-linearly independent, in the sense that the `R`-linear map from `ι →₀ N` to `S` which maps `{ n_i }` to the sum of `m_i * n_i` (`Submodule.mulLeftMap N m`) is injective. - `Submodule.LinearDisjoint.of_basis_left`: conversely, if `{ m_i }` is an `R`-basis of `M`, which is also `N`-linearly independent, then `M` and `N` are linearly disjoint. Dually, we have: - `Submodule.LinearDisjoint.linearIndependent_right_of_flat`: if `M` and `N` are linearly disjoint, if `M` is a flat `R`-module, then for any family of `R`-linearly independent elements `{ n_i }` of `N`, they are also `M`-linearly independent, in the sense that the `R`-linear map from `ι →₀ M` to `S` which maps `{ m_i }` to the sum of `m_i * n_i` (`Submodule.mulRightMap M n`) is injective. - `Submodule.LinearDisjoint.of_basis_right`: conversely, if `{ n_i }` is an `R`-basis of `N`, which is also `M`-linearly independent, then `M` and `N` are linearly disjoint. The following is the second equivalent characterization of linearly disjointness: - `Submodule.LinearDisjoint.linearIndependent_mul_of_flat`: if `M` and `N` are linearly disjoint, if one of `M` and `N` is flat, then for any family of `R`-linearly independent elements `{ m_i }` of `M`, and any family of `R`-linearly independent elements `{ n_j }` of `N`, the family `{ m_i * n_j }` in `S` is also `R`-linearly independent. - `Submodule.LinearDisjoint.of_basis_mul`: conversely, if `{ m_i }` is an `R`-basis of `M`, if `{ n_i }` is an `R`-basis of `N`, such that the family `{ m_i * n_j }` in `S` is `R`-linearly independent, then `M` and `N` are linearly disjoint. Other results: - `Submodule.LinearDisjoint.symm_of_commute`, `Submodule.linearDisjoint_symm_of_commute`: linearly disjoint is symmetric under some commutative conditions. - `Submodule.linearDisjoint_op`: linearly disjoint is preserved by taking multiplicative opposite. - `Submodule.LinearDisjoint.of_le_left_of_flat`, `Submodule.LinearDisjoint.of_le_right_of_flat`, `Submodule.LinearDisjoint.of_le_of_flat_left`, `Submodule.LinearDisjoint.of_le_of_flat_right`: linearly disjoint is preserved by taking submodules under some flatness conditions. - `Submodule.LinearDisjoint.of_linearDisjoint_fg_left`, `Submodule.LinearDisjoint.of_linearDisjoint_fg_right`, `Submodule.LinearDisjoint.of_linearDisjoint_fg`: conversely, if any finitely generated submodules of `M` and `N` are linearly disjoint, then `M` and `N` themselves are linearly disjoint. - `Submodule.LinearDisjoint.bot_left`, `Submodule.LinearDisjoint.bot_right`: the zero module is linearly disjoint with any other submodules. - `Submodule.LinearDisjoint.one_left`, `Submodule.LinearDisjoint.one_right`: the image of `R` in `S` is linearly disjoint with any other submodules. - `Submodule.LinearDisjoint.of_left_le_one_of_flat`, `Submodule.LinearDisjoint.of_right_le_one_of_flat`: if a submodule is contained in the image of `R` in `S`, then it is linearly disjoint with any other submodules, under some flatness conditions. - `Submodule.LinearDisjoint.not_linearIndependent_pair_of_commute_of_flat`, `Submodule.LinearDisjoint.rank_inf_le_one_of_commute_of_flat`: if `M` and `N` are linearly disjoint, if one of `M` and `N` is flat, then any two commutative elements contained in the intersection of `M` and `N` are not `R`-linearly independent (namely, their span is not `R ^ 2`). In particular, if any two elements in the intersection of `M` and `N` are commutative, then the rank of the intersection of `M` and `N` is at most one. - `Submodule.LinearDisjoint.rank_le_one_of_commute_of_flat_of_self`: if `M` and itself are linearly disjoint, if `M` is flat, if any two elements in `M` are commutative, then the rank of `M` is at most one. The results with name containing "of_commute" also have corresponding specified versions assuming `S` is commutative.
# Conflicts: # Mathlib.lean
PR summary 63dbf292deImport changes for modified filesNo significant changes to the import graph Import changes for all files
|
discussion: https://leanprover.zulipchat.com/#narrow/stream/217875-Is-there-code-for-X.3F/topic/Linearly.20disjoint
finsuppTensorFinsupp
#11598 [needfinsuppTensorFinsupp'_symm_single
]LinearEquiv.(l|r)Tensor
#11731lTensor_preserves_injective_linearMap
#11748Subalgebra.finite_(bot|sup)
#12025OrzechProperty
#13425