Encyclopedia Cost Cost Real Character Factorization Rational Trace Nat Eq Two Of Two Eq Two
Cost Real Character Factorization Rational Trace Nat Eq Two Of Two Eq Two
A single value at 2 forces the whole natural-number trace to stay at 2, a rigidity result about the cost of recognition.
The unbroken trace
The theorem rationalTrace_nat_eq_two_of_two_eq_two is a statement about a function called the rational trace, which assigns a real number to every rational number. Its claim is stark: if the trace of the number 2 equals 2, then the trace of every positive natural number n is also 2. The proof is machine-checked in the framework's library, a collection of formal theorems verified by a computer. The result does not require the full cost hypotheses; it follows from a weaker set of assumptions called SansAnchorHypotheses, which omit the anchor at 2.
The theorem is a rigidity result. It says that the value at one point, the number 2, pins down the values on an infinite set, the positive integers. This is a strong constraint on any function satisfying the underlying composition law, a rule that ties the value at a product of two numbers to the values at the two factors. The trace function here is not the cost itself but a derived quantity, the doubled trace, which simplifies the law into a multiplicative form. The proof uses this form to propagate the value 2 from the base case to all powers of 2, and then to all natural numbers via a monotonicity argument.
The theorem does not claim that the trace of 2 is 2 for all functions; that is an assumption, not a conclusion. It also does not determine the trace for non-natural rational numbers, nor does it say anything about the cost function J itself. The result is a lemma in a larger chain, a stepping stone toward a full characterization of the cost. Its significance is that it shows how a single anchor point can control an entire arithmetic progression, a fact that the framework uses to narrow down the possible forms of the cost function.
THEOREM rationalTrace_nat_eq_two_of_two_eq_two · IndisputableMonolith/Cost/RealCharacterFactorization.lean
theorem rationalTrace_nat_eq_two_of_two_eq_two
{F : RatioOrbit → RatioOrbit} (hF : SansAnchorHypotheses F)
(htwo : rationalTrace F 2 = 2) :
∀ n : ℕ, 1 ≤ n → rationalTrace F n = 2 := by
have hpow2 : ∀ n : ℕ, n ≤ 2 ^ n := by
intro n
induction n with
| zero => norm_num
| succ k ih =>
have h1 : 1 ≤ 2 ^ k := Nat.one_le_two_pow
have hp : 2 ^ (k + 1) = 2 ^ k * 2 := by rw [pow_succ]
omega
intro n hn
have hlow : 2 ≤ rationalTrace F n := rationalTrace_nat_ge_two hF hn
have hup := rationalTrace_nat_mono hF hn (hpow2 n)
have hcast :
(((2 ^ n : ℕ) : ℚ)) = (2 : ℚ) ^ n := by norm_num
rw [hcast, rationalTrace_two_pow_eq_two hF htwo n] at hup
linarith
What this page does not claim
The theorem does not assert that the trace of 2 is 2 for any function; that is an assumption. The theorem does not determine the trace for rational numbers that are not positive integers. The theorem does not directly state the form of the cost function J.
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/Cost/RealCharacterFactorization.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:
- What does the full characterization of the rational trace look like for non-natural rational numbers?
- How does the anchor at 2 combine with the SansAnchor hypotheses to force the cost function J?
- What role does the monotonicity of the trace play in extending the result from powers of 2 to all natural numbers?
MACHINE LAYER · GROUNDED CLAIM TABLE · CLICK TO EXPAND
THEOREM rationalTrace_nat_eq_two_of_two_eq_two · IndisputableMonolith/Cost/RealCharacterFactorization.lean
theorem rationalTrace_nat_eq_two_of_two_eq_two {F : RatioOrbit → RatioOrbit} (hF : SansAnchorHypotheses F) (htwo : rationalTrace F 2 = 2) : ∀ n : ℕ, 1 ≤ n → rationalTrace F n = 2 := by have hpow2 : ∀ n : ℕ, n ≤ 2 ^ n := by intro n induction n with | zero => norm_num | succ k ih => have h1 : 1 ≤ 2 ^ k := Nat.one_le_two_pow have hp : 2 ^ (k + 1) = 2 ^ k * 2 := by rw [pow_succ] omega intro n hn have hlow : 2 ≤ rationalTrace F n := rationalTrace_nat_ge_two hF hn have hup := rationalTrace_nat_mono hF hn (hpow2 n) have hcast : (((2 ^ n : ℕ) : ℚ)) = (2 : ℚ) ^ n := by norm_num rw [hcast, rationalTrace_two_pow_eq_two hF htwo n] at hup linarithif the trace of the number 2 equals 2, then the trace of every positive natural number n is also 2 rationalTrace_nat_eq_two_of_two_eq_two · IndisputableMonolith/Cost/RealCharacterFactorization.lean