refactor: proof golf from Aristotle — eliminate intermediate bindings#12
Merged
project-navi-bot merged 3 commits intomainfrom Mar 29, 2026
Merged
refactor: proof golf from Aristotle — eliminate intermediate bindings#12project-navi-bot merged 3 commits intomainfrom
project-navi-bot merged 3 commits intomainfrom
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Cherry-pick proof simplifications from Aristotle 4.28.0 output, preserving all docstrings, imports, and module documentation. Key changes: - Inline named `have h1`/`have h2` into `zify [show ...]` patterns - Convert trivial tactic blocks to term-mode proofs - Remove unused `hlogw` binding in headline theorem - Inline intermediate variables in squeeze theorem bounds - `flowerGraph'_adj_iff` via `Iff.rfl` instead of id/id constructor - `flowerGraph'` definition in term-mode instead of tactic block - Eliminate redundant named intermediates across GraphBall, PathGraphDist Net: -75 lines across 7 files. Zero sorry, clean axioms, lint passes.
Revert the h_lo/h_hi/h_res inlining in flowerDimension — the named intermediates are Mathlib-shaped and match the Route B squeeze narrative advertised in module docs.
b681fb0 to
5e32d8a
Compare
project-navi-bot
approved these changes
Mar 29, 2026
Nelson Spence (Fieldnote-Echo)
added a commit
that referenced
this pull request
Mar 29, 2026
- Add PathGraphDist as upstream candidate in README - Fix Verify.lean declaration count (20 → 27) - Fix GraphBall lemma count (8 core + 6 convenience) - Expand Aristotle role in Development Process section - Correct FlowerVert type signature in theorems.md and graph-construction.md - Add changelog entries for PRs #11 and #12
2 tasks
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.
Summary
havebindings, converts trivial tactic blocks to term-mode, and inlines redundant variables+65 -140), verified withlake build --wfailandlake lintWhat was NOT taken from Aristotle
FdFormal.X→X) — would break builddocBlamelinterChanges by file
FlowerConstruction.leanflowerGraph'term-mode,Iff.rfl, inlined intermediatesFlowerCounts.leanzify [show ...]pattern, term-modeflowerVertCountReal_posFlowerDimension.leanhlogw, inline squeeze bounds, compress decompGraphBall.leanball_topanonymous ctor,mem_ball_of_adjterm-modePathGraphDist.leanedistantisymmetry proofFlowerDiameter.leanstrict_monoand_posFlowerLog.leanh_cast→thisrenameVerification
lake build --wfail— all 1948 jobs pass, zero warningslake lint— linting passedpropext,Classical.choice,Quot.soundonlyTest plan
lake build --wfailpasseslake lintpasses🤖 Generated with Claude Code