Skip to content

Conversation

themathqueen
Copy link
Collaborator

@themathqueen themathqueen commented Sep 26, 2025

The definition of ContinuousLinearMap.IsPositive remains the same in complete spaces, but this allows us to use positivity and the partial order without needing completeness. The new definition is now exactly the same as LinearMap.IsPositive but for continuous linear maps.

To use the old definition (i.e., IsSelfAdjoint and ...), instead of unfolding, use ContinuousLinearMap.isPositive_def'.

isPositive_iff is renamed to isPositive_iff', and isPositive_iff points to the same thing but with IsSymmetric instead of IsSelfAdjoint.


Open in Gitpod

@github-actions github-actions bot added the t-analysis Analysis (normed *, calculus) label Sep 26, 2025
Copy link

github-actions bot commented Sep 26, 2025

PR summary 5a6cfc3c42

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ IsPositive.isSymmetric
+ isPositive_def
+ isPositive_def'
+ isPositive_iff'
++ isPositive_id

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@themathqueen themathqueen marked this pull request as ready for review September 26, 2025 11:18
Copy link
Collaborator

@j-loreaux j-loreaux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks mostly good, thanks!

Comment on lines +234 to +235
theorem IsPositive.inner_left_eq_inner_right {T : E →L[𝕜] E} (hT : IsPositive T) (x y : E) :
⟪T x, y⟫ = ⟪x, T y⟫ := hT.isSymmetric _ _
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this to have x y instead of just x! I noticed it was wrong in the diff above.

@themathqueen themathqueen changed the title refactor(Analysis/InnerProductSpace/Positive): generalize definition to use IsSymmetric instead of IsSelfAdjoint and CompleteSpace refactor(Analysis/InnerProductSpace/Positive): generalize positivity to use IsSymmetric instead of IsSelfAdjoint and CompleteSpace Oct 16, 2025
Copy link
Collaborator

@j-loreaux j-loreaux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, thanks!

bors merge

@leanprover-community-mathlib4-bot leanprover-community-mathlib4-bot added the ready-to-merge This PR has been sent to bors. label Oct 17, 2025
mathlib-bors bot pushed a commit that referenced this pull request Oct 17, 2025
…to use `IsSymmetric` instead of `IsSelfAdjoint` and `CompleteSpace` (#30000)

The definition of `ContinuousLinearMap.IsPositive` remains the same in complete spaces, but this allows us to use positivity and the partial order without needing completeness. The new definition is now exactly the same as `LinearMap.IsPositive` but for continuous linear maps.

To use the old definition (i.e., `IsSelfAdjoint` and ...), instead of unfolding, use `ContinuousLinearMap.isPositive_def'`.

`isPositive_iff` is renamed to `isPositive_iff'`, and `isPositive_iff` points to the same thing but with `IsSymmetric` instead of `IsSelfAdjoint`.
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Oct 17, 2025

Build failed (retrying...):

@Ruben-VandeVelde
Copy link
Collaborator

bors r-

I believe you now need to qualify id

@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Oct 17, 2025

Canceled.

@themathqueen
Copy link
Collaborator Author

@j-loreaux can ya bors merge this again :)

@bryangingechen
Copy link
Contributor

bors r+

mathlib-bors bot pushed a commit that referenced this pull request Oct 17, 2025
…to use `IsSymmetric` instead of `IsSelfAdjoint` and `CompleteSpace` (#30000)

The definition of `ContinuousLinearMap.IsPositive` remains the same in complete spaces, but this allows us to use positivity and the partial order without needing completeness. The new definition is now exactly the same as `LinearMap.IsPositive` but for continuous linear maps.

To use the old definition (i.e., `IsSelfAdjoint` and ...), instead of unfolding, use `ContinuousLinearMap.isPositive_def'`.

`isPositive_iff` is renamed to `isPositive_iff'`, and `isPositive_iff` points to the same thing but with `IsSymmetric` instead of `IsSelfAdjoint`.
@mathlib-bors
Copy link
Contributor

mathlib-bors bot commented Oct 17, 2025

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title refactor(Analysis/InnerProductSpace/Positive): generalize positivity to use IsSymmetric instead of IsSelfAdjoint and CompleteSpace [Merged by Bors] - refactor(Analysis/InnerProductSpace/Positive): generalize positivity to use IsSymmetric instead of IsSelfAdjoint and CompleteSpace Oct 17, 2025
@mathlib-bors mathlib-bors bot closed this Oct 17, 2025
@themathqueen themathqueen deleted the refactor_clm_positive branch October 17, 2025 18:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-merge This PR has been sent to bors. t-analysis Analysis (normed *, calculus)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants