Skip to content
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(measure_theory/{lp_space,set_integral}): extend linear map lemmas from R to is_R_or_C #8210

Closed
wants to merge 41 commits into from

Conversation

RemyDegenne
Copy link
Collaborator

@RemyDegenne RemyDegenne commented Jul 6, 2021


Open in Gitpod

@RemyDegenne RemyDegenne added awaiting-review The author would like community review of the PR awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review The author would like community review of the PR labels Jul 6, 2021
@RemyDegenne RemyDegenne added awaiting-review The author would like community review of the PR awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-author A reviewer has asked the author a question or requested changes awaiting-review The author would like community review of the PR labels Jul 6, 2021
@RemyDegenne RemyDegenne added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels Jul 6, 2021
Co-authored-by: Eric Wieser <wieser.eric@gmail.com>
Comment on lines 1543 to 1547
variables {𝕜 : Type*} [is_R_or_C 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 F]

/-- Composing `f : Lp ` with `L : E →L[] F`. -/
def comp_Lp (L : E →L[] F) (f : Lp E p μ) : Lp F p μ :=
/-- Composing `f : Lp ` with `L : E →L[𝕜] F`. -/
def comp_Lp (L : E →L[𝕜] F) (f : Lp E p μ) : Lp F p μ :=
L.lipschitz.comp_Lp (map_zero L) f
Copy link
Member

Choose a reason for hiding this comment

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

What actually needs is_R_or_C here? Is [nondiscrete_normed_field 𝕜] enough?

Copy link
Member

Choose a reason for hiding this comment

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

This def and the two lemmas below it are true for only

variables {𝕜 : Type*} [nondiscrete_normed_field 𝕜] [semi_normed_space 𝕜 E] [semi_normed_space 𝕜 F]

while the rest of this section is true for

variables {𝕜 : Type*} [nondiscrete_normed_field 𝕜] [normed_space 𝕜 E] [normed_space 𝕜 F]

I think you can replace every occurence of normed_space in this file with semi_normed_space which means you don't need the second set of assumptions to be different.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Indeed all those hypotheses can be relaxed. This is code I wrote before all the normed_space in mathlib became semi_normed_space.
I'll add semi_ to all hypotheses in the file (if that works).

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It worked without any issue.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It's more complicated in the set_integral file. Either some normed_space in other files should be replaced by semi_normed_space, or most normed_space arguments are actually needed.

Copy link
Member

Choose a reason for hiding this comment

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

Perhaps the normed_group arguments need to be replaced by semi_normed_group? Just a thought, I haven't tested it.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Right, I replaced some normed_space by semi_normed_space, but those are all still normed_group (and changing to semi_normed_group looks like it causes errors). So I effectively still have normed_space and it is as if I did not do anything. I suppose the two main possible courses of action are to keep things as they are here, or to work towards using semi_normed_group as much as possible.

I confess that investigating that normed vs seminormed issue in all Lp/integral files does not interest me very much right now, and I think that it is beyond the goal of this PR.

Copy link
Member

@hrmacbeth hrmacbeth Jul 6, 2021

Choose a reason for hiding this comment

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

I confess that investigating that normed vs seminormed issue in all Lp/integral files does not interest me very much right now

I agree!

Copy link
Member

Choose a reason for hiding this comment

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

Sorry for sending you into that rabbit hole - I only meant it as a throwaway observation, the change to nondiscrete_normed_field was much more relevant.

@RemyDegenne RemyDegenne added awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review The author would like community review of the PR labels Jul 6, 2021
@RemyDegenne RemyDegenne added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels Jul 6, 2021
@RemyDegenne RemyDegenne removed the awaiting-review The author would like community review of the PR label Jul 6, 2021
@RemyDegenne
Copy link
Collaborator Author

I undid all the semi_normed_group related changes to bring this PR back to its original goal: extend some lemmas about linear map from R to is_R_or_C (or nondiscrete_normed_field when it is sufficient).
It is now ready for review.

@RemyDegenne RemyDegenne added awaiting-review The author would like community review of the PR and removed WIP Work in progress labels Jul 7, 2021
Copy link
Member

@hrmacbeth hrmacbeth left a comment

Choose a reason for hiding this comment

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

LGTM, thanks!

`Lp E p μ`. -/
def comp_LpL [fact (1 ≤ p)] (L : E →L[] F) : (Lp E p μ) →L[] (Lp F p μ) :=
def comp_LpL [fact (1 ≤ p)] (L : E →L[𝕜] F) : (Lp E p μ) →L[𝕜] (Lp F p μ) :=
Copy link
Member

Choose a reason for hiding this comment

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

Constructions like this are often hard to find in mathlib, because you don't think about them until you need them. While you're working here, would you mind adding a cross-reference to the similar constructions continuous_linear_map.comp_left_continuous, continuous_linear_map.comp_left_continuous_bounded, just to increase visibility?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Done!
Doing so, I realized that I did not know what comp_LpL was. It was in the same section as a lemma I wanted to generalize, so it got the same treatment, but I did not even read it.

Copy link
Member

@hrmacbeth hrmacbeth left a comment

Choose a reason for hiding this comment

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

Thanks!

bors d+

src/measure_theory/lp_space.lean Outdated Show resolved Hide resolved
@bors
Copy link

bors bot commented Jul 11, 2021

✌️ RemyDegenne can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@github-actions github-actions bot added delegated The PR author may merge after reviewing final suggestions. and removed awaiting-review The author would like community review of the PR labels Jul 11, 2021
Co-authored-by: hrmacbeth <25316162+hrmacbeth@users.noreply.github.com>
@RemyDegenne
Copy link
Collaborator Author

bors r+

bors bot pushed a commit that referenced this pull request Jul 11, 2021
…s from R to is_R_or_C (#8210)





Co-authored-by: Rémy Degenne <remydegenne@gmail.com>
Co-authored-by: RemyDegenne <remydegenne@gmail.com>
@bors
Copy link

bors bot commented Jul 11, 2021

Pull request successfully merged into master.

Build succeeded:

@bors bors bot changed the title feat(measure_theory/{lp_space,set_integral}): extend linear map lemmas from R to is_R_or_C [Merged by Bors] - feat(measure_theory/{lp_space,set_integral}): extend linear map lemmas from R to is_R_or_C Jul 11, 2021
@bors bors bot closed this Jul 11, 2021
@bors bors bot deleted the integral_comp branch July 11, 2021 20:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
delegated The PR author may merge after reviewing final suggestions.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants