Skip to content

feat(QuantumMechanics) : Prove potentialOperator_isSelfAdjoint - #1490

Merged
jstoobysmith merged 3 commits into
leanprover-community:masterfrom
ereinhardt8:qm-barrier
Aug 7, 2026
Merged

feat(QuantumMechanics) : Prove potentialOperator_isSelfAdjoint#1490
jstoobysmith merged 3 commits into
leanprover-community:masterfrom
ereinhardt8:qm-barrier

Conversation

@ereinhardt8

Copy link
Copy Markdown
Contributor

This pull request provides a proof for the lemma potentialOperator_isSelfAdjoint in Physlib/QuantumMechanics/RectangularBarrier/Basic.lean, which was previously an informal_lemma. Also, it proves potentialFunction_aestronglyMeasurable because potentialOperator_isSelfAdjoint uses it.

Specific Changes

Two informal lemmas were formalized and proved:

  • RectangularBarrier.potentialFunction_aestronglyMeasurable : formalize and prove that the potential function of a rectangular barrier is almost everywhere strongly measurable
  • RectangularBarrier.potentialOperator_isSelfAdjoint : prove that the potential function of a rectangular barrier is self adjoint using the above lemma

Reviewer Guide

I fixed any linting issues found in Physlib/QuantumMechanics/RectangularBarrier/Basic.lean after I ran lake exe lint_all and ./scripts/lint-style.sh locally.

The lemma potentialFunction_aestronglyMeasurable was only proved for the canonical volume measure. Is this an issue?

Additional Comments

I wrote the code, but used ChatGPT and Google Search to suggest approaches and next steps.

Thank you!

@ereinhardt8 ereinhardt8 changed the title Qm barrier feat(QuantumMechanics) : Prove potentialOperator_isSelfAdjoint Aug 6, 2026
@github-actions

github-actions Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Thank you for this pull-request (PR). If this is your first PR, welcome to the community!

Below is what will happen next. Please read carefully if you are not familiar with the process. You may open other PRs while this one is being reviewed, and can stack PRs on top of each other, so don't let these steps slow you down.

  1. Some automated checks will be run on your PR. You can see the results of these checks at the buttom of your PR page. If any of these checks fail, you will need to fix the issues before your PR can be merged. You can learn more about these here, including how to run them locally, which is sometimes quicker than relying on the GitHub Actions. If you have never had a PR merged before, you may have to wait for a reviewer to manually start these checks (this is for security).

  2. A reviewer will look at your PR and may ask you to make changes. This may happen a couple of days after you submit your PR, so you may need to be patient. But it should not be longer than that - if it is please bring it to the attention of the community on the Zulip. The level of review will depend on where your PR is submitted. If it is submitted to ./Physlib or ./QuantumInfo, the review will be more thorough than if it is submitted to ./PhyslibAlpha. You can find out more about what the review process is looking for in our review guidelines. If a reviewer adds an awaiting-author label to your PR, address the review comments, then please remove that label by adding a comment with -awaiting-author. This helps us keep track of reviews.

  3. The reviewer will either approve your PR, or request more changes (in which case we return to step 2). Once your PR is approved, it will be merged by a maintainer, this should happen shortly after approval, though you may get more comments at this stage.

Tip: The easiest way to get have a fast review is to submit a PR that is small and self-contained, and has clear documentation explaining why things are the way they are in your chages.

If you have any problems or questions, please reach out to the community on the Zulip.

@github-actions github-actions Bot added the t-quantum-mechanics Quantum mechanics label Aug 6, 2026
rw [mulOperator_isSelfAdjoint_ofReal]
swap; ext x; simp only [Function.comp_apply, Complex.conj_ofReal]
have hQ := potentialFunction_aestronglyMeasurable
fun_prop

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Hey @ereinhardt8 Many thanks for this first PR! Just one comment from me before this can be merged. It would be convention to not to have more then one tactic on a line e.g. swap; ext x; simp [...] should be three separate lines. Other then that, this PR looks great!

@jstoobysmith

Copy link
Copy Markdown
Member

awaiting-author

@github-actions github-actions Bot added the awaiting-author A reviewer has asked the author a question or requested changes label Aug 7, 2026
@ereinhardt8

Copy link
Copy Markdown
Contributor Author

Okay! I separated the lines that had multiple tactics.
-awaiting-author

@github-actions github-actions Bot removed the awaiting-author A reviewer has asked the author a question or requested changes label Aug 7, 2026

@jstoobysmith jstoobysmith left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Great! Many thanks! I've approved, and when the linters finish, I will merge this. So nothing else you need to do here.

Many thanks for this first PR! Hopefully the first of many.

@jstoobysmith jstoobysmith added the ready-to-merge This PR is approved and will be merged shortly label Aug 7, 2026
@jstoobysmith
jstoobysmith merged commit e882411 into leanprover-community:master Aug 7, 2026
6 checks passed
@ereinhardt8
ereinhardt8 deleted the qm-barrier branch August 7, 2026 14:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-to-merge This PR is approved and will be merged shortly t-quantum-mechanics Quantum mechanics

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants