pith. machine review for the scientific record. sign in
theorem proved term proof high

landscapeDepth_nonneg

show as:
view Lean formalization →

landscapeDepth_nonneg establishes that the average J-cost over all assignments is nonnegative for any CNF formula. Complexity researchers analyzing SAT landscapes and frustration barriers cite it to anchor basic bounds before proving stricter results for UNSAT instances. The term proof reduces directly to nonnegativity of the defining sum and its normalization factor.

claimFor any natural number $n$ and any CNF formula $f$ on $n$ variables, the average J-cost satisfies $0 ≤ (1/2^n) ∑_a satJCost(f,a)$, where the sum is over all $2^n$ assignments and satJCost counts unsatisfied clauses.

background

The J-Frustration module quantifies the topological depth of the J-cost landscape barrier around satisfying assignments. LandscapeDepth is the average J-cost across all assignments, defined explicitly as the sum of satJCost values divided by the number of assignments (Finset.univ.card). J-cost itself is the number of unsatisfied clauses under a given assignment. The upstream theorem satJCost_nonneg asserts that this count is always nonnegative, which is the key fact imported here. CNFFormula is the standard structure of a list of clauses over n variables.

proof idea

The term proof unfolds LandscapeDepth, then applies div_nonneg. Nonnegativity of the numerator follows from Finset.sum_nonneg applied pointwise to satJCost_nonneg. The denominator is nonnegative by Nat.cast_nonneg on the cardinality of the assignment space.

why it matters in Recognition Science

The result is invoked inside jfrustrationCert to supply the depth_nonneg field of the JFrustrationCert bundle. It supports the module's core classification results, including jfrust_sat_eq_zero and landscapeDepth_unsat (which gives depth ≥1 for UNSAT formulas). Within Recognition Science this anchors the nonnegativity side of the J-cost landscape before linking to the forcing chain and phi-ladder structures.

scope and limits

Lean usage

theorem use_example {n : ℕ} (f : CNFFormula n) : 0 ≤ LandscapeDepth f := landscapeDepth_nonneg f

formal statement (Lean)

  59theorem landscapeDepth_nonneg {n : ℕ} (f : CNFFormula n) :
  60    0 ≤ LandscapeDepth f := by

proof body

Term-mode proof.

  61  unfold LandscapeDepth
  62  apply div_nonneg
  63  · exact Finset.sum_nonneg (fun a _ => satJCost_nonneg f a)
  64  · exact Nat.cast_nonneg _
  65
  66/-- For UNSAT formulas, landscape depth is ≥ 1. -/

used by (1)

From the project-wide theorem graph. These declarations reference this one in their body.

depends on (7)

Lean names referenced from this declaration's body.