# Auditing the Proof

## Trusted Statement

[`Challenge.lean`](Challenge.lean) imports only Mathlib and independently
defines the public vocabulary before stating the three target theorems.
Its placeholders are statement-only inputs, not part of the proof library.

[`ComparatorChallenge.lean`](ComparatorChallenge.lean) imports the two exact
level-18 certificate modules because comparator requires permitted native
axioms and constants occurring in their types to exist in the challenge
environment. It does not import the analytic bridge or final theorem module.
[`Solution.lean`](Solution.lean) imports the proved declarations.

## Lean Checks

```bash
lake exe cache get
lean-serial lake build CollatzPredecessor090
lean-serial lake build Challenge
lean-serial lake build ComparatorChallenge
lean-serial lake build Solution
lean-serial lake env lean AxiomAudit.lean
tools/check_no_sorry.sh
scripts/audit_sorries.sh .
```

The placeholder scans exclude only `Challenge.lean` and
`ComparatorChallenge.lean`. They reject `sorry`, `admit`, project-declared
`axiom`, and `unsafe` in the proof library.

## Axiom Footprint

All three public wrappers must print exactly:

```text
propext
Classical.choice
Quot.sound
Erdos1135.KrasikovLagarias.k18AdaptiveForcedPotentialCertificate_check._native.native_decide.ax_1_1
Erdos1135.KrasikovLagarias.k18Gamma901EncodedCertificate_check._native.native_decide.ax_1_1
```

This makes the release `NATIVE_ASSISTED`, not kernel-clean.

## Comparator

With compatible `landrun`, `lean4export`, and `comparator` binaries:

```bash
lean-serial lake env comparator comparator.json
```

Comparator checks that the proved internal declarations match the independent
targets and use only the permitted axioms.

## Finite Evidence

```bash
make payloads
make verify-python
make verify-cpp
```

Expected decisive values:

| Check | Rows | Failures | Decisive value |
| --- | ---: | ---: | --- |
| level-18 LP | 129,140,163 | 0 | minimum margin `4,147,742,755` |
| adaptive potential | 215,233,605 | 0 | range `0..34` |
| combined | 344,373,768 | 0 | C++ mutation rejected |

The external verifiers are independent audit evidence. The public theorem
still has the two disclosed native-decision dependencies.

## Source Footprint

The release contains 64 Lean files and 10,779 nonempty Lean lines:

| Surface | Files | Nonempty lines |
| --- | ---: | ---: |
| handwritten proof library | 57 | 10,570 |
| generated certificate wrappers | 2 | 83 |
| public, challenge, solution, and audit entry points | 5 | 126 |

These counts are over the final standalone source tree and exclude Mathlib.

## Scope

Explanatory prose and visuals are not proof evidence. The formal evidence is
the exact Lean source, pinned dependencies, tracked certificate chunks,
executable checks, statement comparison, and recorded axiom footprint.
