-
Notifications
You must be signed in to change notification settings - Fork 839
[Merged by Bors] - feat(Analysis/InnerProductSpace/Positive): U.starProjection ≤ V.starProjection
iff U ≤ V
#27162
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
[Merged by Bors] - feat(Analysis/InnerProductSpace/Positive): U.starProjection ≤ V.starProjection
iff U ≤ V
#27162
Conversation
Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
theorem IsSymmetricProjection.sub_of_comp_eq_right {p q : E →ₗ[𝕜] E} | ||
(hp : p.IsSymmetricProjection) (hq : q.IsSymmetricProjection) (hqp : q ∘ₗ p = p) : | ||
(q - p).IsSymmetricProjection := by | ||
refine ⟨hp.isIdempotentElem.sub hq.isIdempotentElem (LinearMap.ext fun x => ext_inner_left 𝕜 | ||
fun y => ?_) hqp, hq.isSymmetric.sub hp.isSymmetric⟩ | ||
simp_rw [Module.End.mul_apply, ← hp.isSymmetric _, ← hq.isSymmetric _, ← comp_apply, hqp] | ||
|
||
theorem IsSymmetricProjection.sub_of_comp_eq_left {p q : E →ₗ[𝕜] E} | ||
(hp : p.IsSymmetricProjection) (hq : q.IsSymmetricProjection) (hpq : p ∘ₗ q = p) : | ||
(q - p).IsSymmetricProjection := by | ||
refine hp.sub_of_comp_eq_right hq <| LinearMap.ext fun x => ext_inner_left 𝕜 fun y => ?_ | ||
simp_rw [comp_apply, ← hq.isSymmetric _, ← hp.isSymmetric _, ← comp_apply, hpq] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@j-loreaux, should we just have one version of this instead as well?
IsSymmetricProjection.sub_of_range_le_range
: range p ≤ range q
implies q - p
is a symmetric projection?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed it, let me know if I should change it back
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks
bors merge
…Projection` iff `U ≤ V` (#27162) For symmetric projections `p` and `q`, `p ≤ q` iff `range p ≤ range q`, so then: `U.starProjection ≤ V.starProjection` iff `U ≤ V`, which implies that `Submodule.starProjection` is an injective function.
Pull request successfully merged into master. Build succeeded: |
U.starProjection ≤ V.starProjection
iff U ≤ V
U.starProjection ≤ V.starProjection
iff U ≤ V
For symmetric projections
p
andq
,p ≤ q
iffrange p ≤ range q
, so then:U.starProjection ≤ V.starProjection
iffU ≤ V
, which implies thatSubmodule.starProjection
is an injective function.v
in star projection range iff‖T v‖ = ‖v‖
#27619