putnam_2013_a5: use EuclideanSpace so area3 measures Euclidean area - #348
Merged
GeorgeTsoukalas merged 1 commit intoAug 26, 2026
Merged
Conversation
On `Fin 3 → ℝ` Mathlib's instance norm is the sup norm, so the `μH[2]` in `harea3` is the Hausdorff area of the l-infinity metric, whose ratio to Euclidean area varies with the plane's orientation — while `harea2`'s `volume` on `Fin 2 → ℝ` is genuine Lebesgue area, so the two sides of the theorem measure different geometries. This commit changes only the ambient types to `EuclideanSpace ℝ (Fin n)`; `harea2`, `harea3` and the conclusion are unchanged. `μH[2]` is unnormalized, so on a 2-plane in `EuclideanSpace ℝ (Fin 3)` it equals (4/π) × Euclidean area — but that is one constant for every plane, and area-definiteness (`∑ aᵢⱼₖ · area ≥ 0` over all configurations) is invariant under uniform positive rescaling of the area functional, so the corrected statement is equivalent to the original problem.
GeorgeTsoukalas
self-requested a review
August 26, 2026 20:36
GeorgeTsoukalas
approved these changes
Aug 26, 2026
GeorgeTsoukalas
left a comment
Collaborator
There was a problem hiding this comment.
This looks correct to me - thanks for the justification!
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses #277 for putnam_2013_a5, following exactly the resolution Joseph Myers proposed there.
What
A type-only change to
lean4/src/putnam_2013_a5.lean: the ambient typesFin 2 → ℝ/Fin 3 → ℝbecomeEuclideanSpace ℝ (Fin 2)/EuclideanSpace ℝ (Fin 3)(in thearea2/area3signatures and the twoA :binders).harea2,harea3and the conclusion are character-for-character unchanged — 4 lines touched, no new definitions.The defect
The problem is about ordinary Euclidean areas of triangles, but
Fin 3 → ℝcarries Mathlib's Pi instance, i.e. the supremum norm, andμH[2]is built fromEMetric.diam, soharea3computes the 2-dimensional Hausdorff measure of the ℓ∞ metric. That is not "area scaled by a constant": its ratio to Euclidean area varies with the plane's orientation (1 on coordinate planes vs 4/(3√3) ≈ 0.77 on the plane orthogonal to (1,1,1)). Meanwhileharea2'svolumeonFin 2 → ℝis genuine Lebesgue area, so the two sides of the implication measure different geometries. The mismatch is fatal to the intended projection-and-averaging solution: the ℓ∞ Busemann 2-area admits no positive Crofton measure (it violates Hlawka's inequality), so no analogue of the "integrate |n·n̂| over the sphere and factor out the constant" step exists, and the statement as written appears to be substantially harder than the Putnam problem.Why the fix is correct (and why unnormalized μH[2] is fine)
μH[2]is unnormalized — Mathlib's Hausdorff measure carries no ω_d/2^d factor — so it doesn't literally equal Euclidean area: on any 2-dimensional affine subspace ofEuclideanSpace ℝ (Fin 3)one getsμH[2]= (4/π) × Euclidean area. The key point is that this is a single constant, the same for every plane, because the Euclidean metric is rotation-invariant. Since area-definiteness is of the form∑ aᵢⱼₖ · area(…) ≥ 0quantified over configurations, it is invariant under multiplying the area functional by any positive constant — so the EuclideanSpace statement is equivalent to the original problem, exactly as predicted in #277 ("area scaled by some positive constant… scaling the area doesn't actually matter to the statement"). The same argument covers the constant mismatch withharea2(true area, constant 1): each side's predicate is separately scale-invariant.Notes
putnam_2019_a4— the other instance mentioned in Fix 2013 A5 #277 — already statesμH[2]onEuclideanSpace ℝ (Fin 3)on current main.putnam_1975_b2(‖normals i‖ = 1withnormals : ℕ → (Fin 3 → ℝ)reads as the sup norm, weakening the intended statement); we can file that separately if useful.🤖 Generated with Claude Code