feat(Mathematics): the Cauchy–Riemann criterion for Wirtinger derivatives - #1726
pariandrea wants to merge 2 commits into
Conversation
…risation of holomorphy Adds `Physlib.Mathematics.ForMathlib.ComplexLinear`: an ℝ-linear map between complex vector spaces that commutes with multiplication by `i` is ℂ-linear. `LinearMap.map_smul_of_commutesI` is the law along one direction, `LinearMap.commutesI_of_basis` extends commuting with `i` from a ℂ-basis to every vector, and `ContinuousLinearMap.complexOfCommutesI` bundles the result as a continuous ℂ-linear map. Mathlib has this only for maps out of `ℂ` (`real_linearMap_map_smul_complex`, `ContinuousLinearMap.complexOfReal`); this is the arbitrary-domain form. With it, `clinear_of_dWirtingerAntiDir_eq_zero` (the converse of `dWirtingerAntiDir_eq_zero_of_clinear`) and the Cauchy–Riemann characterisations `differentiableAt_complex_iff_dWirtingerAntiDir_eq_zero` and `differentiableAt_complex_iff_dWirtingerAntiCoord_eq_zero`: ℂ-differentiability is real differentiability together with the vanishing of the anti-holomorphic Wirtinger derivatives. Co-authored-by: Claude Opus 5.5 <no-reply+claude-opus-5-5@anthropic.com>
… redundant by ComplexLinear Co-authored-by: Claude Opus 5.5 <no-reply+claude-opus-5-5@anthropic.com>
|
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.
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. |
|
claim |
|
@nateabr has claimed this PR for review until 2026-10-05 15:27 UTC (2 days). I will remind them here 24h before that runs out. Comment |
Adds the Cauchy–Riemann characterisation of holomorphy for the Wirtinger operators: a complex-valued
function on a complex normed space is ℂ-differentiable exactly when it is real-differentiable and
its anti-holomorphic Wirtinger derivatives vanish, in directional and in coordinate form.
The key step is that an ℝ-linear map commuting with multiplication by
iis ℂ-linear.Mathlib has this only for maps out of
ℂ(ContinuousLinearMap.complexOfReal, used for itsone-variable
differentiableAt_complex_iff_differentiableAt_real);ComplexLinear.leangives thearbitrary-domain form, which a many-variable Cauchy–Riemann argument needs.
The real-differentiability conjunct cannot be dropped:
fderivis0off the differentiabilitylocus, so the vanishing condition alone holds vacuously for a nowhere-differentiable function.
Added
Physlib/Mathematics/ForMathlib/ComplexLinear.lean(new)LinearMap.map_smul_of_commutesI: an ℝ-linear map pulls a complex scalar out of any directionalong which it commutes with
i.LinearMap.commutesI_of_basis: an ℝ-linear map commuting withion a finite ℂ-basis commuteswith it on every vector.
ContinuousLinearMap.complexOfCommutesI: a continuous ℝ-linear map commuting withiin everydirection, as a
→L[ℂ]map.ContinuousLinearMap.complexOfCommutesI_apply(simp):complexOfCommutesI L h v = L v.Physlib/Mathematics/Calculus/Wirtinger/Basic.leanclinear_of_dWirtingerAntiDir_eq_zero: converse ofdWirtingerAntiDir_eq_zero_of_clinear.differentiableAt_complex_iff_dWirtingerAntiDir_eq_zero: Cauchy–Riemann, directional form.Physlib/Mathematics/Calculus/Wirtinger/Coordinate.leandifferentiableAt_complex_iff_dWirtingerAntiCoord_eq_zero: Cauchy–Riemann in coordinates onι → ℂ, the form∂̄_Ī W = 0takes in physics.Removed: none.
Wirtinger/Basic.leandrops its import ofMathlib.Analysis.Complex.Basic, nowimplied by
ComplexLinear.Reviewer map
ComplexLinear.lean: the scalar law, the basis lemma, the bundled map.Wirtinger/Basic.lean: the converse lemma, then the Cauchy–Riemann section.Wirtinger/Coordinate.lean: the coordinate corollary.