Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
f7e0dbc
Begin removing blanket section exposure
Vilin97 Sep 25, 2026
8bbe46e
Reduce blanket exposure in eight validated projects
Vilin97 Sep 25, 2026
83802f2
Reduce section exposure in fourteen verified projects
Vilin97 Sep 25, 2026
614f631
Remove blanket exposure in twenty-three verified projects
Vilin97 Sep 25, 2026
a1985df
Validate exposure reduction in eleven more projects
Vilin97 Sep 25, 2026
be0a686
Remove blanket exposure from four more verified projects
Vilin97 Sep 25, 2026
d8166ca
Narrow exposure in interaction trees and geometry projects
Vilin97 Sep 25, 2026
eaa90f3
Remove blanket exposure from four further verified projects
Vilin97 Sep 25, 2026
a8a0d1e
Narrow exposure in graph counting and combinatory algebras
Vilin97 Sep 25, 2026
6d1df03
Narrow exposure in computability and Selberg sieve projects
Vilin97 Sep 25, 2026
afd6587
Remove blanket exposure in four arithmetic and probability projects
Vilin97 Sep 25, 2026
e797ca4
Narrow exposure in four analytic and algebraic projects
Vilin97 Sep 25, 2026
b47b1ed
Narrow exposure in Komlos discrepancy and circuit categories
Vilin97 Sep 25, 2026
db218b2
Narrow exposure in covering, PCF, and spectral positivity projects
Vilin97 Sep 25, 2026
f745834
Narrow exposure in Brouwer and circuit complexity proofs
Vilin97 Sep 25, 2026
192a235
Reduce exposure in three combinatorics and arithmetic projects
Vilin97 Sep 25, 2026
4f26b7b
Place Frieze projection lemmas after constructor definitions
Vilin97 Sep 25, 2026
ddc4628
Narrow exposure in Demazure operators and finite distance bounds
Vilin97 Sep 25, 2026
eb4ef2a
Use public construction equations in Anderson and Pauli bounds
Vilin97 Sep 25, 2026
41cceb0
Use projection equations for Demazure products
Vilin97 Sep 25, 2026
8207eca
Narrow computational exposure in complex analysis
Vilin97 Sep 25, 2026
f29119e
Expose arithmetic formulas used by downstream proofs
Vilin97 Sep 25, 2026
3ff5bbb
Reduce exposure in Diophantine and sieve projects
Vilin97 Sep 25, 2026
112e65a
Narrow exposure in temporal logic and counting projects
Vilin97 Sep 25, 2026
57dabce
Remove blanket exposure from three-chain geometry
Vilin97 Sep 25, 2026
abf7d78
Narrow exposure in probability and infinitary combinatorics
Vilin97 Sep 26, 2026
e900603
Use public equations in composition algebra classification
Vilin97 Sep 26, 2026
3a14628
Merge main and preserve all YAML project registrations
Vilin97 Sep 26, 2026
f85c4bd
Merge main and preserve all YAML project registrations
Vilin97 Sep 26, 2026
6711961
Replace blanket exposure in FourAP and Sabidussi
Vilin97 Sep 26, 2026
fca7ebd
Replace blanket exposure in FoZfc
Vilin97 Sep 26, 2026
f0c226e
WIP: remove remaining blanket section exposure across Lean Pool
Vilin97 Sep 26, 2026
7dfe9b3
WIP: repair module interfaces identified by full build CI
Vilin97 Sep 26, 2026
c9982dd
WIP: repair computational interfaces and public projection equations
Vilin97 Sep 26, 2026
faed5a3
Merge remote-tracking branch 'origin/main' into feature/reduce-blanke…
Vilin97 Sep 26, 2026
96461a6
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 26, 2026
c50de39
Merge remote-tracking branch 'origin/feature/reduce-blanket-exposure'…
Vilin97 Sep 26, 2026
baae171
Merge remote-tracking branch 'origin/main' into feature/reduce-blanke…
Vilin97 Sep 26, 2026
ac89e8b
WIP: repair module interfaces and preserve public equations
Vilin97 Sep 26, 2026
3bbeedf
WIP: expose required computational interfaces and repair opaque proofs
Vilin97 Sep 26, 2026
062baf3
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 26, 2026
75cb2ad
WIP: repair module visibility across computational interfaces
Vilin97 Sep 26, 2026
bfd4345
Merge remote-tracking branch 'origin/main' into feature/reduce-blanke…
Vilin97 Sep 26, 2026
d4bd8de
refactor: repair explicit module interfaces across LeanPool
Vilin97 Sep 26, 2026
ed1f25d
refactor: complete certificate interfaces and repair module boundaries
Vilin97 Sep 26, 2026
52b9553
Continue scoped exposure repairs and preserve public equations
Vilin97 Sep 26, 2026
f4d6988
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 26, 2026
7d8012c
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 26, 2026
d5fca60
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 26, 2026
4162560
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 26, 2026
e405e34
Merge remote-tracking branch 'origin/main' into pr-529
github-actions[bot] Sep 27, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 1 addition & 1 deletion LeanPool/ABCExceptions.lean
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Tags: number-theory, analytic-number-theory, abc-conjecture
MSC: 11D75, 11N37
-/

@[expose] public section
public section

/-!
## Mathematical overview
Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ABCExceptions/ForMathlib.lean
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ Import-only index for Mathlib-adjacent support files used by the ABC exceptions
development.
-/

@[expose] public section
public section
2 changes: 1 addition & 1 deletion LeanPool/ABCExceptions/ForMathlib/Misc.lean
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import Mathlib.Data.Nat.SuccPred
# LeanPool.ABCExceptions.ForMathlib.Misc
-/

@[expose] public section
public section

noncomputable section

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ABCExceptions/ForMathlib/RingTheory.lean
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ Import-only index for ring-theoretic support files used by the ABC exceptions
development.
-/

@[expose] public section
public section
2 changes: 1 addition & 1 deletion LeanPool/ABCExceptions/ForMathlib/RingTheory/Radical.lean
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import Mathlib.RingTheory.Radical.NatInt
# LeanPool.ABCExceptions.ForMathlib.RingTheory.Radical
-/

@[expose] public section
public section

namespace UniqueFactorizationMonoid

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ABCExceptions/Section2.lean
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ import Mathlib.RingTheory.Radical.NatInt
# LeanPool.ABCExceptions.Section2
-/

@[expose] public section
public section

open Finset UniqueFactorizationMonoid

Expand Down
4 changes: 3 additions & 1 deletion LeanPool/ABCExceptions/Section4.lean
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ parts of the paper.

-/

@[expose] public section
public section

noncomputable section

Expand Down Expand Up @@ -257,6 +257,7 @@ lemma ThueBound.special_two (hd : 4 ≤ d) :
end

/-- We define `section4Sum i` to be `a i + b i + c i`. -/
@[expose]
def section4Sum (a b c : ℕ → ℝ) (i : ℕ) := a i + b i + c i
local notation "s" => section4Sum a b c

Expand Down Expand Up @@ -394,6 +395,7 @@ lemma bound_4_point_9_upper (hε : 0 < ε) (f : ℕ → ℝ) (h45 : Bound4Point5
linear_combination h45.lower + hε

/-- Define `δₛ` to be the sum of the `δ_` values for `a, b, c`. -/
@[expose]
def deltaS (d : ℕ) (a b c : ℕ → ℝ) := δ_ d a + δ_ d b + δ_ d c
local notation "δₛ" => deltaS d a b c

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax.lean
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ The statement decomposes into the equality clause (`algConn_completeBipartite_tw
and the universal upper-bound clause (`algConn_le_two_of_card`).
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/AHL/AHLAmGm.lean
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ average-degree walk-count lower bound.
i.e. `Λ ≥ (D − n)/n = d_avg − 1`.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/AHL/AHLMarginals.lean
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Throughout `hδ2 : ∀ v, 2 ≤ G.degree v`. A directed edge is the `(penultima
walks is exactly `D = ∑ v, deg v` — the normalization the weighted AM–GM (W7) consumes.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
12 changes: 6 additions & 6 deletions LeanPool/ACMax/AHL/AHLStationary.lean
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ finsets with **no** `Dart`-to-walk bridge. (`Walk.penultimate_concat` is alread
"penultimate of an extension" fiber fact needs no fresh lemma.)
-/

@[expose] public section
public section

namespace ACMax

Expand Down Expand Up @@ -168,7 +168,7 @@ omit [DecidableEq V] in
/-- Unfolding of `nbWeight` on an explicit sigma constructor. -/
theorem nbWeight_mk {x v : V} (p : G.Walk x v) :
nbWeight (⟨v, p⟩ : Σ w : V, G.Walk x w) =
∏ j ∈ Finset.Ico 1 p.length, ((G.degree (p.getVert j) : ℝ) - 1)⁻¹ := rfl
∏ j ∈ Finset.Ico 1 p.length, ((G.degree (p.getVert j) : ℝ) - 1)⁻¹ := by rfl

omit [DecidableEq V] in
/-- **The weight is `1` on short walks.** For a walk of length `≤ 1` the intermediate range
Expand Down Expand Up @@ -216,7 +216,7 @@ theorem nbWeight_concat {x v t : V} (p : G.Walk x v) (hp : ¬ p.Nil) (h : G.Adj

/-- The global sigma finset of all length-`k` non-backtracking walks, tagged by their start: an
element `⟨x, ⟨v, p⟩⟩` is a length-`k` non-backtracking walk `p : G.Walk x v`. -/
def nbAll (k : ℕ) : Finset (Σ x : V, Σ v : V, G.Walk x v) :=
@[expose] def nbAll (k : ℕ) : Finset (Σ x : V, Σ v : V, G.Walk x v) :=
Finset.univ.sigma fun x => nbWalksFrom G x k

/-- Membership in `nbAll`: `⟨x, ⟨v, p⟩⟩` lies in `nbAll k` iff `p` has length `k` and is
Expand All @@ -230,18 +230,18 @@ theorem mem_nbAll {k : ℕ} {t : Σ x : V, Σ v : V, G.Walk x v} :
/-- **The last-edge marginal** (AHL's `xP = x`, def only). The total weight of the length-`k`
non-backtracking walks whose last directed edge is `(u, v)` — i.e. ending at `v` with penultimate
`u`. Its value `1` (for `k ≥ 1`, `G.Adj u v`) is the stationarity identity proved in node W3. -/
noncomputable def nbLastWeight (k : ℕ) (u v : V) : ℝ :=
@[expose] noncomputable def nbLastWeight (k : ℕ) (u v : V) : ℝ :=
∑ t ∈ (nbAll (G := G) k).filter (fun t => t.2.1 = v ∧ t.2.2.penultimate = u), nbWeight t.2

/-- **The end marginal** (def only). The total weight of the length-`k` non-backtracking walks
ending at `v`; its value `deg v` (node W4) is the marginal of `nbLastWeight` over the neighbours of
`v`. -/
noncomputable def nbEndWeight (k : ℕ) (v : V) : ℝ :=
@[expose] noncomputable def nbEndWeight (k : ℕ) (v : V) : ℝ :=
∑ t ∈ (nbAll (G := G) k).filter (fun t => t.2.1 = v), nbWeight t.2

/-- **The total weight** (def only). The total weight of all length-`k` non-backtracking walks;
its value `D = ∑ v, deg v` (node W5) is the normalization `∑_v nbEndWeight k v`. -/
noncomputable def nbWeightTotal (k : ℕ) : ℝ :=
@[expose] noncomputable def nbWeightTotal (k : ℕ) : ℝ :=
∑ t ∈ nbAll (G := G) k, nbWeight t.2

end ACMax
4 changes: 2 additions & 2 deletions LeanPool/ACMax/AHL/NBWalk.lean
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ The degree-weighted lower bound on the *number* of non-backtracking walks and th
assembly into the Moore bound are the follow-up counting node; this file lands the foundation only.
-/

@[expose] public section
public section

namespace ACMax

Expand All @@ -51,7 +51,7 @@ open SimpleGraph
/-- A walk is **non-backtracking** when it never immediately reverses a step: for every position
`i` with `i + 2 ≤ w.length`, the vertex two steps ahead differs from the current one. (For `nil`
and single-edge walks the condition is vacuous.) -/
def IsNonBacktracking {V : Type*} {G : SimpleGraph V} {u v : V} (w : G.Walk u v) : Prop :=
@[expose] def IsNonBacktracking {V : Type*} {G : SimpleGraph V} {u v : V} (w : G.Walk u v) : Prop :=
∀ i : ℕ, i + 2 ≤ w.length → w.getVert (i + 2) ≠ w.getVert i

/-- Any walk of length at most `1` (in particular `nil` and a single edge) is non-backtracking:
Expand Down
4 changes: 2 additions & 2 deletions LeanPool/ACMax/AHL/NBWalkCount.lean
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ over `fun v => Finset (G.Walk x v)` is not type-correct — the fibers must be t
endpoint first, which is exactly what `nbWalksFrom` does).
-/

@[expose] public section
public section

namespace ACMax

Expand Down Expand Up @@ -126,7 +126,7 @@ theorem card_nbWalksFrom [Fintype V] [DecidableEq V] [DecidableRel G.Adj] (x : V

/-- The one-edge non-backtracking extensions of a bundled walk `s = ⟨u, p⟩`: for each neighbour `t`
of `u` other than the penultimate vertex of `p`, the walk `p.concat _`. -/
def nbExtend (G : SimpleGraph V) [Fintype V] [DecidableEq V] [DecidableRel G.Adj] (x : V)
@[expose] def nbExtend (G : SimpleGraph V) [Fintype V] [DecidableEq V] [DecidableRel G.Adj] (x : V)
(s : Σ v : V, G.Walk x v) : Finset (Σ v : V, G.Walk x v) :=
(G.neighborFinset s.1 \ {s.2.penultimate}).image fun t =>
if h : G.Adj s.1 t then ⟨t, s.2.concat h⟩ else ⟨x, Walk.nil⟩
Expand Down
4 changes: 2 additions & 2 deletions LeanPool/ACMax/AHL/NBWeighted.lean
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Alon–Hoory–Linial irregular Moore bound chain; the walk-count and average-de
it live downstream (`AHL.AHLAmGm`, `Band.Sum`).
-/

@[expose] public section
public section

namespace ACMax

Expand All @@ -28,7 +28,7 @@ variable {V : Type*} [Fintype V] {G : SimpleGraph V} [DecidableEq V] [DecidableR

/-- `mₖ`: the total number of length-`k` non-backtracking walks, summed over all ordered
start/end pairs. By definition this is `∑ x, ∑ v, ((G.finsetWalkLength k x v).filter …).card`. -/
def nbTotalWalks (G : SimpleGraph V) [DecidableRel G.Adj] (k : ℕ) : ℕ :=
@[expose] def nbTotalWalks (G : SimpleGraph V) [DecidableRel G.Adj] (k : ℕ) : ℕ :=
∑ x : V, ∑ v : V, ((G.finsetWalkLength k x v).filter IsNonBacktracking).card

end ACMax
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/AssemblyAllRange.lean
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ This assembly replaces the split between the finite exact-Moore range and the
polynomial large-order range by one exact non-backtracking certificate.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/CertAllRange.lean
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ exponent at least eight, the fourth nonconstant term of the binomial expansion
gives a uniform certificate with no upper bound on the order.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/CertUniform.lean
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ terms and an exact chord identity for a cubic polynomial. This replaces the fiv
ratio certificates formerly used by `Band.Assembly`.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/Final.lean
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ The second range combines the direct incidence-capacity proof on
orders `48` and `49` is harmless.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/KillSharp.lean
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ longer needed: at the longer target the SUM disjunct alone covers every cell of
`55 ≤ n ≤ 122` (the EDGE disjunct was load-bearing exactly on `77 ≤ n ≤ 81` at the old target).
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/Rows.lean
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ a degree-`3`-separated obstruction at `n ≥ 48`. Notation:
Everything is `sorry`-free and axiom-clean (`[propext, Classical.choice, Quot.sound]`).
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/Subset.lean
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ verification.
`3 ≤ k ≤ L` inside `S`, in the `ZMod k` cyclic-map form.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Band/Sum.lean
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ buying the extra half-level over the pair form `ahl_irregular_moore`.
arithmetic instantiates at the extremal `V₉/2`-core.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
8 changes: 4 additions & 4 deletions LeanPool/ACMax/Counting/Cherry.lean
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ cut, so any disjoint `3`-block `P` with `2·e(P,N) + leak(P) ≤ 7` closes.
`Δ ≤ 4`, `e(M) = 2` regime for every `n ≥ 18`.
-/

@[expose] public section
public section

namespace ACMax

Expand Down Expand Up @@ -494,7 +494,7 @@ theorem residualCore_cherry (n : ℕ) (G : SimpleGraph (Fin n)) (h : ResidualCor

open Classical in
/-- The **cherry-touching hubs**: hubs adjacent to a cherry vertex. -/
noncomputable def cherryHubs (G : SimpleGraph V) (x z y : V) : Finset V :=
@[expose] noncomputable def cherryHubs (G : SimpleGraph V) (x z y : V) : Finset V :=
(hubSet G).filter (fun w => G.Adj w z ∨ G.Adj w x ∨ G.Adj w y)

open Classical in
Expand Down Expand Up @@ -610,7 +610,7 @@ theorem mem_richLowHubs {G : SimpleGraph V} {w : V} :
open Classical in
/-- The **bad neighbours** of an apex `t` against a cherry: neighbours of degree `≥ 5`
or touching the cherry — the vertices that block the SingleVertex pair selection. -/
noncomputable def badApexNbrs (G : SimpleGraph V) (x z y t : V) : Finset V :=
@[expose] noncomputable def badApexNbrs (G : SimpleGraph V) (x z y t : V) : Finset V :=
(G.neighborFinset t).filter (fun w => 5 ≤ G.degree w ∨ w ∈ cherryHubs G x z y)

open Classical in
Expand Down Expand Up @@ -753,7 +753,7 @@ private theorem mem_hubTwins {G : SimpleGraph V} {g t : V} :
open Classical in
/-- The **iso-twin neighbours** of a hub, as a pinned `def` so that its instances stay
stable across the `Fin n` / generic-`V` boundary. -/
noncomputable def isoNbrs (G : SimpleGraph V) (g : V) : Finset V :=
@[expose] noncomputable def isoNbrs (G : SimpleGraph V) (g : V) : Finset V :=
G.neighborFinset g ∩ isoTwins G

open Classical in
Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Counting/CherryMShape.lean
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ with every other degree-3 vertex an iso twin.
`Δ ≥ 5` ("fat") side of `ResidualCore` remains open.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
14 changes: 7 additions & 7 deletions LeanPool/ACMax/Counting/CompactCell.lean
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ degree excess.
the large-order reduction. The full theorem is assembled in `Band.Final`.
-/

@[expose] public section
public section

namespace ACMax

Expand All @@ -51,7 +51,7 @@ open Classical in
/-- The **slot value function** `σ(d) = (d−3)/(d−2)`: the per-slot worst-case
surplus of a degree-`d` neighbour used as a leak carrier. `σ(3) = 0`,
`σ(4) = 1/2`, `σ(5) = 2/3`, `σ(6) = 3/4`, `σ → 1`. -/
noncomputable def sigma (d : ℕ) : ℝ := ((d : ℝ) - 3) / ((d : ℝ) - 2)
@[expose] noncomputable def sigma (d : ℕ) : ℝ := ((d : ℝ) - 3) / ((d : ℝ) - 2)

open Classical in
/-- The **mass factor** `c_u = 1 + Σ_{w∈N(u)} 1/(deg w − 2)`. -/
Expand All @@ -60,7 +60,7 @@ noncomputable def cW (G : SimpleGraph V) (u : V) : ℝ :=

open Classical in
/-- The **`σ`-sum** `Σσ_u = Σ_{w∈N(u)} σ(deg w)`. -/
noncomputable def sigS (G : SimpleGraph V) (u : V) : ℝ :=
@[expose] noncomputable def sigS (G : SimpleGraph V) (u : V) : ℝ :=
∑ w ∈ G.neighborFinset u, sigma (G.degree w)

/-! ### `σ` arithmetic (`L-FB-2` real-valued facts) -/
Expand Down Expand Up @@ -398,7 +398,7 @@ open Classical in
each of which is `σ`-usable. This is the exact *spread* witness: present on every
diameter-`≥ 4` "buried" world and absent on every diameter-`3` compact cell
inhabitant. -/
def HasUsableFarPair (G : SimpleGraph V) : Prop :=
@[expose] def HasUsableFarPair (G : SimpleGraph V) : Prop :=
∃ u v : V, u ≠ v ∧ ¬G.Adj u v ∧ (∀ w : V, ¬(G.Adj u w ∧ G.Adj v w)) ∧
(∀ w w' : V, G.Adj u w → G.Adj v w' → ¬G.Adj w w') ∧
sigS G u ≤ 2 ∧ sigS G v ≤ 2
Expand Down Expand Up @@ -542,13 +542,13 @@ variable {n : ℕ}
open Classical in
/-- The **total degree excess** `X = ∑_{deg v ≥ 5} (deg v − 4)` (ℕ-valued;
the truncated subtraction is exact since every summand has degree ≥ 5). -/
noncomputable def excessX (n : ℕ) (G : SimpleGraph (Fin n)) : ℕ :=
@[expose] noncomputable def excessX (n : ℕ) (G : SimpleGraph (Fin n)) : ℕ :=
∑ v ∈ Finset.univ.filter (fun v => 5 ≤ G.degree v), (G.degree v - 4)

open Classical in
/-- The **radius-3 combinatorial ball** around `u₀`: `u₀` together with its
neighbours, second neighbours, and third neighbours. -/
noncomputable def closeSet (G : SimpleGraph (Fin n)) (u₀ : Fin n) : Finset (Fin n) :=
@[expose] noncomputable def closeSet (G : SimpleGraph (Fin n)) (u₀ : Fin n) : Finset (Fin n) :=
insert u₀ (G.neighborFinset u₀
∪ (G.neighborFinset u₀).biUnion (fun w => G.neighborFinset w)
∪ ((G.neighborFinset u₀).biUnion (fun w => G.neighborFinset w)).biUnion
Expand Down Expand Up @@ -875,6 +875,6 @@ cover `53 + 6·C₀` (the disjoint-slot 6X covering: heavy counts are dominated
by their own excess pools) when a light usable vertex exists; the second arm
`199990` dominates both the all-usable-heavy case (`n + 8 ≤ 5·29877`) and the
hoarding wall (`199985 = 6·33322 + 53`). -/
def boundLin (C₀ : ℕ) : ℕ := max ((151 + 11 * C₀) / 2) 520
@[expose] def boundLin (C₀ : ℕ) : ℕ := max ((151 + 11 * C₀) / 2) 520

end ACMax
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Counting/CompactLedgers.lean
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ same-count hubs with zero internal degree, zero `mCross` and no adjacency shares
shared twins would assemble a good `K_{2,3}` (`Σ₅deg = 21`), contradicting
`no_good_K23` (`no_two_saturated_deg6`). -/

@[expose] public section
public section

namespace ACMax

Expand Down
2 changes: 1 addition & 1 deletion LeanPool/ACMax/Counting/DecoratedC4.lean
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ The four-cycle itself misses the order-15 cut inequality by one edge; adjoining
one parent, or two adjacent parents, supplies exactly the missing slack.
-/

@[expose] public section
public section

namespace ACMax

Expand Down
Loading
Loading