Skip to content

feat(ForMathlib): Lipschitz-frontier boundary-cell count (4/4) - #16

Merged
xroblot merged 6 commits into
masterfrom
idx-4
Jul 11, 2026
Merged

feat(ForMathlib): Lipschitz-frontier boundary-cell count (4/4)#16
xroblot merged 6 commits into
masterfrom
idx-4

Conversation

@CBirkbeck

@CBirkbeck CBirkbeck commented Jun 18, 2026

Copy link
Copy Markdown
Owner

Part 4 of 4 of the index-image counting bounds (split from PR #10) — completes IndexImageCount.lean. Stacked on part 3; GitHub retargets the base to master as parents merge.

Adds:

  • ncard_index_image_frontier_le — if ∂s is covered by m images φⱼ '' [0,1]ᵈ⁻¹ of M-Lipschitz maps, the number of n⁻¹ℤ^ι grid cells meeting ∂s is O(nᵈ⁻¹), with explicit constant m · (2⌈M⌉₊+1)ᵈ · 2ᵈ⁻¹.

Sums the single-chart count from part 3 over the cover. This is the boundary-cell input that the effective lattice-point count (the follow-up LatticePointCount.lean stack) consumes.

Builds green on the v4.31.0-rc1 / mathlib-master pin.

🤖 Generated with Claude Code


Final slice (stacked on 3/4) -- completes `IndexImageCount.lean`. Adds
`ncard_index_image_frontier_le`: a frontier covered by `m` Lipschitz images of `[0,1]ᵈ⁻¹`
meets `O(nᵈ⁻¹)` grid cells.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@xroblot

xroblot commented Jul 9, 2026

Copy link
Copy Markdown
Collaborator

Merge master into this PR

CBirkbeck and others added 2 commits July 9, 2026 19:14
- ncard_index_image_frontier_le carries an explicit [Fintype iota] (the
  master merge generalised the section variable to {iota : Type*})
- a Fintype.card_fin normalisation restores the (n+1)^(|iota|-1) factor
  after the generalised chart bound returns (n+1)^|Fin (|iota|-1)| (xroblot)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@CBirkbeck
CBirkbeck changed the base branch from idx-3 to master July 9, 2026 19:27
@CBirkbeck

Copy link
Copy Markdown
Owner Author

Done — merged master in and retargeted the base:

  • Base idx-3master (idx-3 merged in feat(ForMathlib): single-chart boundary-cell count (3/4) #15; its branch wasn't deleted, so GitHub didn't auto-retarget this one).
  • Merged master — brings in the v4.32.0-rc1 pin and the now-generalised ncard_index_image_chart_le (φ : (κ → ℝ) → (ι → ℝ) for any [Fintype κ], landed in feat(ForMathlib): single-chart boundary-cell count (3/4) #15).
  • Adapted this slice's ncard_index_image_frontier_le to the merged file: it now carries an explicit [Fintype ι] (master generalised the section variable to {ι : Type*}), and a one-line Fintype.card_fin normalisation restores the (n+1)^(|ι|-1) factor after the chart bound comes back as (n+1)^|Fin (|ι|-1)|. The rest of the proof is unchanged.

lake build CebotarevDensity is green locally on the merge; the diff is back to just this slice's frontier lemma on top of master.

Comment thread CebotarevDensity/ForMathlib/IndexImageCount.lean Outdated
Comment thread CebotarevDensity/ForMathlib/IndexImageCount.lean Outdated
CBirkbeck and others added 2 commits July 11, 2026 14:03
- ncard_index_image_frontier_le: replace the have hpow + calc block with a
  single rw chain closed by gcongr + lia; drop the unreferenced local
  (xroblot review)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- ncard_index_image_frontier_le no longer needs the local NeZero n
  instance: setFinite_index_image_of_isBounded needs only Finite iota and
  ncard_index_image_chart_le derives NeZero from hn internally (xroblot)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Comment thread CebotarevDensity/ForMathlib/IndexImageCount.lean Outdated
- ncard_index_image_frontier_le elaborates without the classical opener;
  the finiteness and ncard steps supply their own decidability (xroblot)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@xroblot
xroblot merged commit c64095e into master Jul 11, 2026
2 checks passed
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.

2 participants