Columns of the natural-number pairing function #
For Nat.pair : ℕ → ℕ → ℕ, the e-th column e.pairColumn = {n | n.unpair.2 = e} is Soare's
ω^{[e]}. Distinct columns are disjoint with union Set.univ, and Nat.leastInPairColumn e b
computes the least element of e.pairColumn ∩ Set.Ici b by bounded search up to Nat.pair b e.
References #
- R. I. Soare, Recursively Enumerable Sets and Degrees, Springer, 1987, Chapters I.4 and VII.2.
Membership in e.pairColumn means having second Nat.unpair coordinate e.
Membership in e.pairColumn is decidable.
Nat.pair x e belongs to the e-th column.
The e-th column is the range of x ↦ Nat.pair x e.
Every member of e.pairColumn is at least Nat.pair 0 e.
Every member of e.pairColumn is at least e.
Distinct columns are disjoint.
The family of pairing columns is pairwise disjoint.
Every natural number belongs to its own second-coordinate column.
Every pairing column is infinite.
The least member of e.pairColumn at or above b, found by searching up to Nat.pair b e.
Instances For
Unfolding Nat.leastInPairColumn as a bounded search over List.range (pair b e + 1).
e.leastInPairColumn b is at least b.
e.leastInPairColumn b belongs to e.pairColumn.
The second Nat.unpair coordinate of e.leastInPairColumn b is e.
e.leastInPairColumn b is at most Nat.pair b e.
e.leastInPairColumn b is minimal among members of e.pairColumn at or above b.
Characterization of e.leastInPairColumn b as the least member of e.pairColumn above b.
The least member of e.pairColumn overall is Nat.pair 0 e.
Raising the lower bound raises e.leastInPairColumn.
Searching from b + 1 yields a column member strictly above b.