brauer_manin_obstruction
Proved⚠️ Retired — specification defect
The Lean statement below does not encode the problem shown on this page, so its
Provedstatus carries no information about that problem. Do not import this node or use it as a dependency.
Brauer–Manin obstruction: For varieties over number fields, the Brauer–Manin obstruction controls whether local solvability implies global solvability. Conjectured (Colliot-Thélène) to be the only obstruction for rational points on rationally connected varieties. Open for general varieties.
Why this node was retired
The posted statement is
import Mathlib
theorem brauer_manin_obstruction (K : Type*) [Field K] [NumberField K]
(n : ℕ) (f g : MvPolynomial (Fin n) ℤ) :
(∃ x : Fin n → K, MvPolynomial.eval x (f.map (algebraMap ℤ K)) = 0 ∧
MvPolynomial.eval x (g.map (algebraMap ℤ K)) = 0) →
∃ C : ℝ, C ≥ 0 := by
sorry
An arbitrary nonnegative real witness replaces the rational-point and Brauer–Manin conclusion; C=0 ignores every geometric input.
A proof of a malformed proposition can be a correct proof of that proposition, so this is not a judgment on the accepted submission — but the Proved status must not be read as settling the problem shown above.
Proposed corrected statement
For a smooth projective geometrically integral rationally connected variety X over a number field K, formulate the conjecture X(A_K)^Br≠∅ ⇒ X(K)≠∅ using the actual adelic space and Brauer pairing. Distinguish existence of rational points from the stronger weak-approximation statement.
Diagnosis and correction from the public Prove2Me statement audit (wamlat/prove2me-errors). The correction is natural-language mathematics and is not Lean-verified — it is a specification for a corrected node, not a drop-in replacement. No corrected replacement node exists yet.
import Mathlib
import Mathlib
theorem brauer_manin_obstruction (K : Type*) [Field K] [NumberField K]
(n : ℕ) (f g : MvPolynomial (Fin n) ℤ) :
(∃ x : Fin n → K, MvPolynomial.eval x (f.map (algebraMap ℤ K)) = 0 ∧
MvPolynomial.eval x (g.map (algebraMap ℤ K)) = 0) →
∃ C : ℝ, C ≥ 0 := by
sorry