lint: remove proof-system hotspot debt - #830
Conversation
🤖 PR Summary
The PR reduces linter debt by removing unused typeclass assumptions and simplifying proofs across six proof-system hotspots, but also introduces several new Statistics
Lean Declarations ✏️ Affected: 8 declaration(s) (line number changed)
✅ Removed: 1 `sorry`(s)
📋 **Additional Analysis**The diff makes several stylistic improvements but still contains significant violations of the ArkLib style guide. The most pervasive issues are the use of camelCase in theorem names (should be snake_case), missing docstrings on new definitions/theorems, and the use of 📄 **Per-File Summaries**
Last updated: 2026-09-01 01:29 UTC. |
Build Timing Report
CPU work is Incremental Rebuild Signal
This compares a clean project build against an incremental rebuild in the same CI job; it is a lightweight variability signal, not a full cross-run benchmark. Slowest Current Clean-Build FilesShowing 20 slowest current targets, with comparison against the selected baseline when available.
|
Result
Removes real linter debt from six proof-system hotspots without suppressing diagnostics or weakening protocol/security statements:
The changes remove unused section/typeclass premises, replace proof-only
Fintypeassumptions with weakerFiniteassumptions plus local instances, simplify dead proof branches, and make tactic dependencies explicit.Validation
0 / 0 / 0 / 0 / 3 / 1[Nontrivial L]plus[IsDomain L]overlap; none are suppressed185 -> 184, solely because two nestedsorrytokens in one already-unfinished declaration become one; the kernel-tainted declaration set is unchanged at 43, so this is not a closed proof gap125; explicit axioms and native trust remain0review-lean-formalizationhard gate: no correctness or trust blockerExact guarded timings on the reviewed head were 1.60s, 1.67s, 1.73s, 1.51s, 2.17s, and 4.05s for the six targets respectively.
API note
Three packing security theorem types are logically generalized from proof-only
Fintype/DecidableEqpremises toFinite; ordinary callers are source-compatible becauseFintypesynthesizesFinite. Explicit@or named-instance callers may need adjustment. No in-tree caller breaks.