TauLib.BookII.Closure.BSDbridge
TauLib.BookII.Closure.BSDbridge
Proto-rationality: the finite-stage-determined points of the primorial tower.
Registry Cross-References
- [II.D65] Proto-Rationality –
is_proto_rational,proto_rational_check,proto_rational_examples_check
Mathematical Content
II.D65 (Proto-Rationality): A point x is proto-rational if:
-
x > 1 (nontrivial), and
-
There exists a stage k such that reduce(x, k) = x (the point is determined at a finite stage – it lives entirely within Z/P_kZ).
The proto-rational points are the “algebraic” points of the primorial tower: they are determined by finitely many prime residues. Points that are NOT proto-rational would require the full inverse limit (infinitely many prime residues) to specify – these are the “transcendental” points in the tower’s number-theoretic sense.
Proto-rationality connects to BSD because:
-
Rational points on an elliptic curve are finitely determined
-
Proto-rational points in the primorial tower are finitely determined
-
The rank of the Mordell-Weil group measures how many independent rational points exist – analogously, the count of proto-rational points at each stage measures the arithmetic complexity
Examples:
-
x = 2 is proto-rational: reduce(2, 2) = 2 (since P_2 = 6 > 2)
-
x = 5 is proto-rational: reduce(5, 3) = 5 (since P_3 = 30 > 5)
-
x = 0 is NOT proto-rational: x > 1 required
-
x = 1 is NOT proto-rational: x > 1 required
Tau.BookII.Closure.is_proto_rational
source def Tau.BookII.Closure.is_proto_rational (x max_k : Denotation.TauIdx) :Bool
[II.D65] Check if a point x is proto-rational: x > 1 and there exists a stage k (searched up to max_k) such that reduce(x, k) = x. Equations
- Tau.BookII.Closure.is_proto_rational x max_k = if x ≤ 1 then false else Tau.BookII.Closure.is_proto_rational.find_stage max_k x 1 (max_k + 1) Instances For
Tau.BookII.Closure.is_proto_rational.find_stage
source@[irreducible]
**def Tau.BookII.Closure.is_proto_rational.find_stage (max_k : Denotation.TauIdx)
(x k fuel : ℕ) :Bool**
Equations
- One or more equations did not get rendered due to their size. Instances For
Tau.BookII.Closure.proto_rational_stage
source def Tau.BookII.Closure.proto_rational_stage (x max_k : Denotation.TauIdx) :Denotation.TauIdx
[II.D65] Find the smallest stage k at which x is determined. Returns 0 if x is not proto-rational within max_k stages. Equations
- Tau.BookII.Closure.proto_rational_stage x max_k = if x ≤ 1 then 0 else Tau.BookII.Closure.proto_rational_stage.find_min_stage max_k x 1 (max_k + 1) Instances For
Tau.BookII.Closure.proto_rational_stage.find_min_stage
source@[irreducible]
**def Tau.BookII.Closure.proto_rational_stage.find_min_stage (max_k : Denotation.TauIdx)
(x k fuel : ℕ) :ℕ**
Equations
- One or more equations did not get rendered due to their size. Instances For
Tau.BookII.Closure.proto_rational_abcd
source def Tau.BookII.Closure.proto_rational_abcd (x : Denotation.TauIdx) :Interior.TauAdmissiblePoint
[II.D65] ABCD structure of a proto-rational point. For proto-rational x, from_tau_idx(x) gives the ABCD coordinates, and the A-coordinate indicates the prime direction. Equations
- Tau.BookII.Closure.proto_rational_abcd x = Tau.BookII.Interior.from_tau_idx x Instances For
Tau.BookII.Closure.proto_rational_check
source def Tau.BookII.Closure.proto_rational_check (bound max_k : Denotation.TauIdx) :Bool
[II.D65] Proto-rationality verification for a range [2, bound]. Check that every x in the range is proto-rational (which is true for all finite x, since reduce(x, k) = x whenever P_k > x). Equations
- Tau.BookII.Closure.proto_rational_check bound max_k = Tau.BookII.Closure.proto_rational_check.go bound max_k 2 (bound + 1) Instances For
Tau.BookII.Closure.proto_rational_check.go
source@[irreducible]
**def Tau.BookII.Closure.proto_rational_check.go (bound max_k : Denotation.TauIdx)
(x fuel : ℕ) :Bool**
Equations
- One or more equations did not get rendered due to their size. Instances For
Tau.BookII.Closure.proto_rational_examples_check
source def Tau.BookII.Closure.proto_rational_examples_check :Bool
[II.D65] Proto-rational examples check: verify specific examples.
-
x = 2 is proto-rational at stage 2 (P_2 = 6 > 2)
-
x = 5 is proto-rational at stage 2 (P_2 = 6 > 5)
-
x = 7 is proto-rational at stage 3 (P_3 = 30 > 7)
-
x = 12 is proto-rational at stage 3 (P_3 = 30 > 12)
Equations
- One or more equations did not get rendered due to their size. Instances For
Tau.BookII.Closure.proto_rational_count_at_stage
source def Tau.BookII.Closure.proto_rational_count_at_stage (k : Denotation.TauIdx) :Denotation.TauIdx
[II.D65] Proto-rational count at stage k: the number of proto-rational points determined at exactly stage k (i.e., reduce(x, k) = x but reduce(x, k-1) != x, for x > 1). Equations
- One or more equations did not get rendered due to their size. Instances For
Tau.BookII.Closure.proto_rational_count_at_stage.go
source@[irreducible]
**def Tau.BookII.Closure.proto_rational_count_at_stage.go (k : Denotation.TauIdx)
(pk pk_prev x count fuel : ℕ) :ℕ**
Equations
- One or more equations did not get rendered due to their size. Instances For
Tau.BookII.Closure.proto_rational_count_check
source def Tau.BookII.Closure.proto_rational_count_check :Bool
Proto-rational count check: at stage 1 (P_1 = 2), no points are newly determined (x=0 and x=1 are excluded by x > 1 condition, but reduce(0, 0) = 0 and reduce(1, 0) = 0, so stage 0 already captures them). Actually at stage 1, x = 0 has reduce(0, 0) = 0 = x but x <= 1, so not counted. x = 1 is also <= 1. At stage 2 (P_2 = 6): points 2, 3, 4, 5 are new (reduce(x, 1) != x for x >= 2 since P_1 = 2). Equations
- Tau.BookII.Closure.proto_rational_count_check = (Tau.BookII.Closure.proto_rational_count_at_stage 2 == 4 && decide (Tau.BookII.Closure.proto_rational_count_at_stage 3 ≥ 10)) Instances For
Tau.BookII.Closure.proto_2
source theorem Tau.BookII.Closure.proto_2 :is_proto_rational 2 5 = true
Tau.BookII.Closure.proto_5
source theorem Tau.BookII.Closure.proto_5 :is_proto_rational 5 5 = true
Tau.BookII.Closure.proto_7
source theorem Tau.BookII.Closure.proto_7 :is_proto_rational 7 5 = true
Tau.BookII.Closure.proto_12
source theorem Tau.BookII.Closure.proto_12 :is_proto_rational 12 5 = true
Tau.BookII.Closure.not_proto_0
source theorem Tau.BookII.Closure.not_proto_0 :is_proto_rational 0 5 = false
Tau.BookII.Closure.not_proto_1
source theorem Tau.BookII.Closure.not_proto_1 :is_proto_rational 1 5 = false
Tau.BookII.Closure.stage_2
source theorem Tau.BookII.Closure.stage_2 :proto_rational_stage 2 5 = 2
Tau.BookII.Closure.stage_5
source theorem Tau.BookII.Closure.stage_5 :proto_rational_stage 5 5 = 2
Tau.BookII.Closure.stage_7
source theorem Tau.BookII.Closure.stage_7 :proto_rational_stage 7 5 = 3
Tau.BookII.Closure.proto_examples
source theorem Tau.BookII.Closure.proto_examples :proto_rational_examples_check = true
Tau.BookII.Closure.proto_range_30
source theorem Tau.BookII.Closure.proto_range_30 :proto_rational_check 30 5 = true
Tau.BookII.Closure.proto_count_check
source theorem Tau.BookII.Closure.proto_count_check :proto_rational_count_check = true
Tau.BookII.Closure.finite_is_proto_rational_2
source theorem Tau.BookII.Closure.finite_is_proto_rational_2 :is_proto_rational 2 5 = true
[II.D65] Every finite x > 1 is proto-rational at a sufficiently large stage. If P_k > x, then reduce(x, k) = x % P_k = x. Verified for x = 2.
Tau.BookII.Closure.proto_at_stage
source **theorem Tau.BookII.Closure.proto_at_stage (x k : Denotation.TauIdx)
(h : x < Polarity.primorial k) :Polarity.reduce x k = x**
[II.D65] Proto-rationality is stable: if x < P_k, then reduce(x, k) = x. This follows from x % P_k = x when x < P_k.
Tau.BookII.Closure.proto_abcd_roundtrip_2
source theorem Tau.BookII.Closure.proto_abcd_roundtrip_2 :Interior.to_tau_idx (proto_rational_abcd 2) = 2
[II.D65] The ABCD chart of a proto-rational point round-trips. to_tau_idx(proto_rational_abcd(x)) = x.
Tau.BookII.Closure.proto_abcd_roundtrip_12
source theorem Tau.BookII.Closure.proto_abcd_roundtrip_12 :Interior.to_tau_idx (proto_rational_abcd 12) = 12