Skip to content

feat(StatMech): prove partition-function analyticity; drop Z-smoothness sorry#1077

Merged
Timeroot merged 5 commits into
leanprover-community:masterfrom
dennj:thermoquant
May 20, 2026
Merged

feat(StatMech): prove partition-function analyticity; drop Z-smoothness sorry#1077
Timeroot merged 5 commits into
leanprover-community:masterfrom
dennj:thermoquant

Conversation

@dennj
Copy link
Copy Markdown
Contributor

@dennj dennj commented May 3, 2026

Replace DifferentiableAt_Z_if_ZIntegrable's sorry with a real Morera-style proof. Extract the general complex Laplace transform analyticity infrastructure to ForMathlib/ComplexLaplaceTransform.lean and use it to derive partition-function smoothness via the bridge contDiffAt_partitionZ_of_mem_interior_convergenceDomain.

Also:

  • MicroHamiltonian now requires measurable_H as a structure field (matches the implicit prerequisite for PartitionZ to make sense).
  • IdealGas discharges the new field.
  • entropy_A_eq_entropy_Z and β_eq_deriv_S_U take their minimal-hypothesis forms: convergence-domain membership replaces smoothness/integrability bundles, and the redundant Measurable H argument is gone.

…ss sorry

Replace `DifferentiableAt_Z_if_ZIntegrable`'s sorry with a real
Morera-style proof. Extract the general complex Laplace transform
analyticity infrastructure to `ForMathlib/ComplexLaplaceTransform.lean`
and use it to derive partition-function smoothness via the bridge
`contDiffAt_partitionZ_of_mem_interior_convergenceDomain`.

Also:
- `MicroHamiltonian` now requires `measurable_H` as a structure field
  (matches the implicit prerequisite for `PartitionZ` to make sense).
- `IdealGas` discharges the new field.
- `entropy_A_eq_entropy_Z` and `β_eq_deriv_S_U` take their
  minimal-hypothesis forms: convergence-domain membership replaces
  smoothness/integrability bundles, and the redundant `Measurable H`
  argument is gone.
@jstoobysmith
Copy link
Copy Markdown
Member

I made a PR cleaning some of the StatMech stuff up and moving it to a more appropriate file in #1087. I think it would be nice to get that merged before this. I am surprised here that the Laplace transform is not already in Mathlib.

@Timeroot
Copy link
Copy Markdown
Collaborator

#1087 is merged now so I think we can do this. There are merge conflicts, I'll take a quick look. I think it's just the StatMech folder move in #1087 that made the conflict.

Timeroot
Timeroot previously approved these changes May 19, 2026
Copy link
Copy Markdown
Collaborator

@Timeroot Timeroot left a comment

Choose a reason for hiding this comment

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

Glad to have this done. I hope we can upstream the ComplexLaplaceTransform to Mathlib

Timeroot
Timeroot previously approved these changes May 19, 2026
@Timeroot
Copy link
Copy Markdown
Collaborator

Thanks!

@Timeroot Timeroot merged commit 347297d into leanprover-community:master May 20, 2026
4 checks passed
@dennj dennj deleted the thermoquant branch May 20, 2026 12:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants