Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

No linear-time BSS program for one-variable LP feasibility

Proved
SmaleNinth.bss_one_variable_lp_no_linear_program

by Zexuan Liu · Sep 7, 2026 · Mathlib 0df444a (Lean v4.33.1)

bss-machinelinear-programminglower-boundsreal-computation

This is the negative form of the one-variable model-sanity statement: in the machine model of the mission, a fixed program cannot decide one-variable linear feasibility in time linear in the number of constraints.

The assertion. For every program PPP over the reals in the fixed instruction set (real constants, field arithmetic at fixed addresses, two-sided tape shifts, a sign-test branch) and every constant CCC, there exist mmm and a one-variable system aix≥bia_i x \ge b_iai​x≥bi​ (i=1,…,mi = 1, \dots, mi=1,…,m) such that PPP, started on the standard encoding, does not halt with the correct verdict within C(m+1)C(m+1)C(m+1) steps.

Why. Every instruction addresses cells at fixed offsets from the head, so a program is a window of fixed width 2W+12W+12W+1 sliding along the tape one cell per shift. The coefficient aia_iai​ and the right-hand side bib_ibi​ sit mmm cells apart. In C(m+1)C(m+1)C(m+1) steps some boundary between the two blocks is crossed at most C+1C+1C+1 times, so the computation is determined across that boundary by the window contents at those crossings, a transcript of at most (C+1)(2W+1)(C+1)(2W+1)(C+1)(2W+1) real numbers. On corner instances (coefficients x∈Rpx \in \mathbb{R}^px∈Rp and right-hand sides equal to xxx, plus a sentinel constraint x≤1x \le 1x≤1) equal transcripts allow cutting and pasting the two runs into the mixed instance (x,x′)(x, x')(x,x′), which must then be declared feasible, forcing x′≤xx' \le xx′≤x and symmetrically x=x′x = x'x=x′. Hence the transcript is injective on an open subset of Rp\mathbb{R}^pRp with p>(C+1)(2W+1)p > (C+1)(2W+1)p>(C+1)(2W+1); but near a generic input the transcript is a C1C^1C1 function of the input, and a C1C^1C1 map into a space of smaller dimension is injective on no open set.

Context. The quadratic budget C(m+1)2C(m+1)^2C(m+1)2 is attainable (SmaleNinth.bss_decides_one_variable_lp_quadratic), so this theorem pins the complexity of the one-variable problem in this model at Θ(m2)\Theta(m^2)Θ(m2). It is the positive-statement form of the disproof of SmaleNinth.bss_decides_one_variable_lp, published so that other lower bounds can import it.

Preamble
import Definitions.Def_Polyhedron
import Definitions.Def_SmaleNinth_BSSMachine

/-!
A lower bound in the Blum–Shub–Smale machine of
`Definitions.Def_SmaleNinth_BSSMachine`: no uniform program decides
one-variable LP feasibility in linear time.

Source: crossing-sequence argument for one-tape machines (F. C. Hennie,
*One-tape, off-line Turing machine computations*, Information and Control
8 (1965) 553–578) adapted to real-number machines with fixed-address
instructions; the algebraic step is a dimension argument (a `C¹` map from an
open subset of `ℝ^p` into `ℝ^q`, `q < p`, is not injective). Formal proof:
the accepted disproof of `SmaleNinth.bss_decides_one_variable_lp`.
-/

open Matrix LinearOptimization

/-- **Linear-time lower bound for one-variable LP feasibility.** For every
program `P` and constant `C` there is a one-variable instance that `P` does
not decide correctly within `C·(m+1)` steps. -/
Formal statement
theorem SmaleNinth.bss_one_variable_lp_no_linear_program (P : BSSProgram) (C : ℕ) :
    ¬ ∀ (m : ℕ) (A : Matrix (Fin m) (Fin 1) ℝ) (b : Fin m → ℝ),
        ∃ result : Bool,
          BSSDecidesInTime P (encodeLP A b) (C * (m + 1)) result ∧
          (result = true ↔ (polyhedron A b).Nonempty) := by sorry
Source
Crossing-sequence lower bound for one-tape machines (Hennie 1965, Information and Control 8, 553-578), adapted to the BSS-style machine of Definitions.Def_SmaleNinth_BSSMachine; formal content identical to the accepted disproof of SmaleNinth.bss_decides_one_variable_lp (mission Smale's Ninth Problem).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me