Encyclopedia Chemistry Chemistry Oxidation State From Config Dim Oxidation State Cost
ARTICLE 5 claims 3 theorems 2 models
Chemistry Oxidation State From Config Dim Oxidation State Cost
Oxidation states are how chemists count electrons a metal atom appears to have lost or gained; a new formal library defines a cost for getting that count wrong.
The cost of an oxidation state
Oxidation state is a bookkeeping number chemists assign to an atom in a compound: roughly, the charge the atom would have if all bonds were ionic. Manganese, for instance, appears in formal states from -3 to +7, though only about seven of those are common in ordinary chemistry. The Recognition Science framework, a research program that derives structure from the idea that reality keeps a discrete record of events called a ledger, has a machine-checked library of formal theorems. One declaration in that library, oxidationStateCost, defines a cost function for comparing a measured oxidation state to an expected one.
The definition is simple: it takes the ratio of the measured state to the expected state and applies the framework's universal cost function J(x) = (x + 1/x)/2 - 1. When the measured state equals the expected state, the ratio is 1 and the cost is 0. When they differ, the cost is positive. The library proves both facts: the cost is zero exactly at the expected value, and it is never negative for positive inputs. This gives chemists a quantitative way to say how far a particular oxidation state is from what a model predicts, with the same units-free, symmetric penalty for overestimating and underestimating.
The declaration also connects to a stronger claim. The library defines the canonical number of oxidation states for a d-block transition metal as 2^3 - 1 = 7, a number it derives from the framework's Count Law at dimension 3. The idea is that three binary choices, charge sign, d-electron count relative to half-fill, and ligand-field strength, generate eight combinations, of which one is excluded, leaving seven. The library proves this count equals 7 and that it is positive, and packages all these results into a certificate structure that is formally inhabited.
What the declaration does not do is establish that real transition metals actually have exactly seven stable oxidation states. That is an empirical claim. The library's docstring names a falsifier: any d-block element with a confirmed stable oxidation state count different from 7 ± 2 in standard conditions would refute it. The formal theorems guarantee the arithmetic and the cost function's properties, not the chemistry. The match to manganese's common states and to the IUPAC golden-7 list is a hypothesis awaiting broader confirmation, not a proved fact about the periodic table.
MODEL oxidationStateCost · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
/-- J-cost on oxidation state ratio: deviation from the expected state. -/
def oxidationStateCost (measured expected : ℝ) : ℝ :=
Cost.Jcost (measured / expected)
THEOREM oxidationStateCost_at_expected · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
theorem oxidationStateCost_at_expected (s : ℝ) (h : s ≠ 0) :
oxidationStateCost s s = 0 := by
unfold oxidationStateCost; rw [div_self h]; exact Cost.Jcost_unit0
THEOREM oxidationStateCost_nonneg · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
theorem oxidationStateCost_nonneg (m e : ℝ) (hm : 0 < m) (he : 0 < e) :
0 ≤ oxidationStateCost m e := by
unfold oxidationStateCost; exact Cost.Jcost_nonneg (div_pos hm he)
MODEL canonicalOxidationStateCount · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
/-- Count Law at D = 3: 2^3 - 1 = 7 canonical oxidation states. -/
def canonicalOxidationStateCount : ℕ := 2 ^ 3 - 1
THEOREM canonicalOxidationStateCount_eq · canonicalOxidationStateCount_pos · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
theorem canonicalOxidationStateCount_eq : canonicalOxidationStateCount = 7 := by
unfold canonicalOxidationStateCount; norm_num
theorem canonicalOxidationStateCount_pos : 0 < canonicalOxidationStateCount := by
rw [canonicalOxidationStateCount_eq]; norm_num
What this page does not claim
The declaration does not prove that any real transition metal has exactly seven stable oxidation states. The declaration does not derive the value 7 from first principles; it defines it as 2^3 - 1 and proves the arithmetic. The declaration does not claim the cost function is the only possible way to measure oxidation state deviation.
Verify this page
Every tagged claim above names its theorem. To check one yourself rather than trust this page, elaborate the source module with Lean 4 and audit its axiom basis:
$ lake env lean IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
expected axiom basis: [propext, Classical.choice, Quot.sound] (the Lean kernel's standard three; no RS-specific axioms)
A page whose claims cannot be reproduced this way does not ship. In production, every anchor links to the exact declaration in the public source release, and this block carries the build receipt for the page itself.
Derived articles
This page is generated by a question-recursion engine: the questions its answers raise become the next pages. The current agenda, with open targets marked red:
- How does the framework derive the Count Law at dimension 3 from the forcing chain?
- What empirical data beyond the IUPAC golden-7 list would confirm or refute the canonical count of seven?
- How does the oxidation state cost function relate to other applications of the J-cost in the framework?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
MODEL oxidationStateCost · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
/-- J-cost on oxidation state ratio: deviation from the expected state. -/ def oxidationStateCost (measured expected : ℝ) : ℝ := Cost.Jcost (measured / expected)The definition is simple: it takes the ratio of the measured state to the expected state and applies the framework's universal cost function J(x) = (x + 1/x)/2 - 1. oxidationStateCost · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.leanTHEOREM oxidationStateCost_at_expected · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
theorem oxidationStateCost_at_expected (s : ℝ) (h : s ≠ 0) : oxidationStateCost s s = 0 := by unfold oxidationStateCost; rw [div_self h]; exact Cost.Jcost_unit0When the measured state equals the expected state, the ratio is 1 and the cost is 0. oxidationStateCost_at_expected · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.leanTHEOREM oxidationStateCost_nonneg · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
theorem oxidationStateCost_nonneg (m e : ℝ) (hm : 0 < m) (he : 0 < e) : 0 ≤ oxidationStateCost m e := by unfold oxidationStateCost; exact Cost.Jcost_nonneg (div_pos hm he)When they differ, the cost is positive. oxidationStateCost_nonneg · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.leanMODEL canonicalOxidationStateCount · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
/-- Count Law at D = 3: 2^3 - 1 = 7 canonical oxidation states. -/ def canonicalOxidationStateCount : ℕ := 2 ^ 3 - 1The library defines the canonical number of oxidation states for a d-block transition metal as 2^3 - 1 = 7 canonicalOxidationStateCount · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.leanTHEOREM canonicalOxidationStateCount_eq · canonicalOxidationStateCount_pos · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean
theorem canonicalOxidationStateCount_eq : canonicalOxidationStateCount = 7 := by unfold canonicalOxidationStateCount; norm_numtheorem canonicalOxidationStateCount_pos : 0 < canonicalOxidationStateCount := by rw [canonicalOxidationStateCount_eq]; norm_numThe library proves this count equals 7 and that it is positive canonicalOxidationStateCount_eq · canonicalOxidationStateCount_pos · IndisputableMonolith/Chemistry/OxidationStateFromConfigDim.lean