Alphabeta Math
ExampleConstruction: Literature-sourcedVerification: AI-generatedPipeline-generatedjudge pass (gpt-6.1-sol)
How statement and proof provenance work

The first chip identifies the source of the statement or construction; the second identifies the source of its local proof or verification.

  • Literature-sourced: the exact statement appears in a cited source; only wording and notation differ.
  • AI-adapted: a semantically identical restatement of literature-sourced material, modulo indexing, notation, and boundary cases adopted by the library.
  • AI-generated: a genuinely novel statement formulated by AI, with no source for the claim itself.

These labels describe origin, not correctness: citations and verification chips remain separate evidence.

Real algebraic numbers are countably infinite, without choice

Example

Call x∈R real algebraic when

P(x)=∑k=0dakxk=0

for some d∈N and some finite list of integers a0,…,ad with ad≠0, the integers being embedded in R along Z→Q→R (The integers as equivalence classes of pairs of naturals, The rationals as equivalence classes of pairs of integers, The integers embed in the rationals, The unique embedding of ℚ into an ordered field, Finite sums and finite products, by recursion, Integer powers am). Let A be the set of real algebraic numbers. Then:

  • (i) A is countably infinite; an injection A→N is specified below by the least integer-code of a coefficient list having x as a root, paired with the position of x in the increasing listing of that list's finite real root set;
  • (ii) every rational number, embedded in R, lies in A;
  • (iii) R∖A is uncountable.

All of this is a theorem of ZF: the coding of valid coefficient lists is an explicit surjection, the least code and the increasing root listing are canonical, and the only enumerations used in (iii) are two existentially given surjections. No claim about algebraic closures or complex algebraic numbers is made; the ambient field here is R.

Facts & Assumptions

Given: R a complete ordered field (Complete ordered field (least-upper-bound property), Ordered field, Field); the integers Z=(N×N)/∼ and the rationals Q (The integers as equivalence classes of pairs of naturals, The rationals as equivalence classes of pairs of integers); the embedding k‾:=[(k,0)] of N in Z (The naturals embed in the integers), the embedding j:Z→Q (The integers embed in the rationals) and the unique injective order-preserving field homomorphism ε:Q→R (The unique embedding of ℚ into an ordered field). Write a∗:=ε(j(a))∈R for the image of a∈Z.

[F1]

The coding: J(m,n)=2m(2n+1)−1 is a bijection N×N→N, and z:N→Z, z(u)=[(a,b)] where (a,b)=J−1(u), is a surjection onto Z; both are given by explicit formulas (An explicit enumeration of the rationals, with repetitions and then without them, N×N≈N, The integers as equivalence classes of pairs of naturals, Injection, surjection, bijection).

[F2]

Decoding: for n∈N write J−1(n)=(d,s); the recursion theorem gives the unique T:N→N with T(0)=s and T(σ(k))=π2(J−1(T(k))), and with U(k):=π1(J−1(T(k))) the decoded coefficients are ak:=z(U(k)) for k≤d (The recursion theorem, A function is a relation f with (a,b)∈f and (a,c)∈f implying b=c; f:A→B, the value f(a), domain and codomain). The fallback is used when ad=0: the code then denotes the constant list (1), whose polynomial has no zeros. This decoding is total: every n produces a list a0,…,ad (The Axiom Schema of Separation: for each formula φ, ∀pˉ ∀x ∃y ∀z (z∈y↔(z∈x∧φ(z,pˉ))), The Axiom Schema of Replacement: for each formula φ, if φ defines a class function on A then its image on A is a set for the sets of decoded values).

[F3]

The local root bound: for d∈N and reals b0,…,bd with bd≠0, the zero set { x∈R:∑k=0dbkxk=0 } is finite of cardinality at most d (A real coefficient list of degree d has at most d real roots).

[F4]

Finite subsets and listings: every nonempty finite subset of R has a maximum and a minimum (The nonempty finite subsets of R are exactly the listable ones); a subset of an at most countable set is at most countable (Every subset of an at most countable set is at most countable); the order of R is a linear order, so it is total, antisymmetric and transitive (Ordered field, Complete ordered field (least-upper-bound property)).

[F5]

Cardinality language: S≈t means a bijection S→t exists, and ≈ is symmetric and transitive; a set is finite when it is equinumerous with some natural number, countably infinite when it is equinumerous with N, and at most countable when it is one of the two (Equinumerous sets, A≈B and A⪯B, Finite, countably infinite, countable, uncountable); a finite set is equinumerous with exactly one natural number (The pigeonhole principle on N, claim 3); σ is injective (The von Neumann naturals form a Peano system); and n∉n for every n∈N (Every natural number is a transitive set and is not a member of itself).

[F6]

For a nonempty set S: S is at most countable if and only if there is a surjection N→S (A nonempty set is at most countable iff it is a surjective image of N); and if S1⪯S2 and S2⪯S1 then S1≈S2 (The Schröder-Bernstein theorem, Equinumerous sets, A≈B and A⪯B). R admits no surjection from N (R is uncountable (Cantor's nested intervals, 1874)).

[F7]

Field arithmetic of the embeddings: ε is a field homomorphism, so ε(u+v)=ε(u)+ε(v), ε(uv)=ε(u)ε(v), ε(0)=0, ε(1)=1, and it is injective; the operations on Q are well defined on classes, and for a representative (p,v) of a rational q one has v⋅q=p in Q (The unique embedding of ℚ into an ordered field, Arithmetic on the rationals, Rational arithmetic is well defined, The rationals as equivalence classes of pairs of integers, Field).

[F8]

Well-ordering: every nonempty subset of N has a least element (The well-ordering principle); and every n≠0 is σ(m) for some m (Every nonzero natural number is a successor). Induction is The principle of mathematical induction; the successor map is an order-preserving bijection from m onto σ(m)∖{0} by On N the order is membership: m<n  ⟺  m∈n and the Peano properties in [F5].

Verification

technique · direct
1.1F1F2

The decoding is total and assigns to every n a finite list of integers. For n, [F2] gives d,s∈N with J−1(n)=(d,s) and the sequences T,U; then ak=z(U(k)) is an integer for each k≤d, so (a0,…,ad) is a finite integer list. Define Pn(x):=∑k=0dak∗xk when ad≠0, and Pn(x):=1 when ad=0; in both cases Pn:R→R is given by a finite sum of real powers, and Rn:={ x∈R:Pn(x)=0 } is a set by Separation. Finally A:={ x∈R:Pn(x)=0 for some n∈N } is a set by Separation; every element of this set is real algebraic, since a fallback code has no roots. The converse follows from the coefficient coding below.

1.2F4F5F8

Unique increasing listings. For every finite S⊆R and its unique m∈N with S≈m, there is exactly one increasing bijection ℓ:m→S. Prove this by induction on m. At m=0, S=∅ and the empty function is the unique listing. At m=σ(m′), let s=min⁡S, which exists by [F4]. Transport T=S∖{s} into a subset of m using a bijection S→m; [F4] makes T finite, say T≈m′′. Extending a bijection T→m′′ by s↦m′′ gives S≈σ(m′′), because m′′∉m′′. Uniqueness of finite cardinality and successor injectivity give m′′=m′ by [F5]. The induction hypothesis, including the empty case, gives an increasing bijection ℓ′:m′→T. Define ℓ(0)=s and ℓ(σ(i))=ℓ′(i) for i∈m′. By [F8] these clauses cover σ(m′); they give a bijection and preserve order because s is strictly below every member of T and successor preserves the index order. For uniqueness, any increasing bijection sends 0 to min⁡S; deleting this value gives an increasing bijection m′→T, unique by the induction hypothesis.

2.1step 1.1F1F2F8

Every valid list is coded. Given integers a0,…,ad with ad≠0, define uk:=min⁡{u∈N:z(u)=ak} for each k≤d. These sets are nonempty by [F1], and [F8] supplies unique least values, so the finite function k↦uk is defined without choice. Form td+1=0 and tk=J(uk,tk+1) backwards for k=d,…,0. To justify this finite recursion with a total self-map, carry a counter j and an accumulator v, start at (0,0), and send (j,v) to (σ(j),J(ud−j,v)) when j≤d, leaving the state fixed when j>d. Recursion on N×N yields (d+1,t0) after d+1 steps. Put n=J(d,t0). Induction on k≤d gives T(k)=tk and U(k)=uk, so code n has exactly the coefficients ak=z(uk) and does not use the fallback. Thus every valid integer list occurs. Together with step 1.1 this identifies A with the set of real algebraic numbers. The encoding is generally many-to-one, since different tails or integer representatives can decode to the same list.

2.2step 1.1F3F7

For every n∈N the root set Rn is finite, and if the decoded list has ad≠0 then Rn is equinumerous with some m≤d. In the fallback case ad=0 we have Pn=1 and Rn=∅. Otherwise ad∗≠0, since the composite embedding Z→Q→R is injective and ad≠0; the polynomial Pn is exactly the evaluation of the real coefficient list a0∗,…,ad∗ with nonzero top coefficient, so [F3] applies and Rn is finite of cardinality at most d.

3.1step 1.2step 2.2F1F4F5F8

A is at most countable. Every x∈A lies in Rn for some n, so the least such n exists by [F8]; write n(x):=min⁡{ n:Pn(x)=0 }. Then Rn(x) is finite by step 2.2 and nonempty, say Rn(x)≈m with m∈N, and by step 1.2 it has a unique increasing listing ℓn(x):m→Rn(x); define j(x):=ℓn(x)−1(x)∈m⊆N, the position of x in that listing. Define φ(x):=J(n(x),j(x))∈N. Then φ is injective: if φ(x)=φ(x′), injectivity of J gives n(x)=n(x′)=:n and j(x)=j(x′)=:i, and both x and x′ are the value ℓn(i) of the same unique listing. Hence φ is a bijection of A onto the subset φ[A]⊆N, and every subset of N is at most countable by [F4], so A is at most countable.

3.2step 2.1F7

Every embedded rational lies in A. Let q∈Q and fix a representative (p,v) with v≠0. Applying the construction of step 2.1 to the integer list (a0,a1):=(−p,v), of degree d=1 with a1=v≠0, produces a code n whose decoded polynomial is P(x)=(−p)∗+v∗x. By [F7], P(ε(q))=ε(j(−p))+ε(j(v))ε(q)=ε(j(−p)+j(v)q)=ε(0)=0, because j(−p)+j(v)q=0 in Q, that is v⋅q=p. Hence ε(q)∈A.

4.1step 3.2F5F7

N⪯A. The composite embedding g:N→R, g(m):=ε(j(m‾)), is injective, as a composite of injective maps; and g(m)∈A for every m, since g(m)=ε(q) for the rational q=j(m‾) by step 3.2. So g is an injection N→A.

5.1step 3.1step 4.1F5F6

By step 3.1 there is an injection A→N, and by step 4.1 there is an injection N→A; Schröder-Bernstein gives A≈N, so A is countably infinite.

6.1step 5.1F1F6

R∖A is uncountable. Suppose it were at most countable. If R∖A=∅ then R=A≈N by step 5.1, contradicting [F6]. Otherwise R∖A is nonempty, so by [F6] fix a surjection s:N→R∖A; by step 5.1 fix a bijection f:N→A. Define t:N×N→R by t(0,k):=f(k) and t(σ(i),k):=s(k); every real is in A or in R∖A, elements of A are values f(k), and elements of R∖A are values s(k)=t(σ(0),k), so t is onto. Composing t with the bijection β:N→N×N inverse to J gives a surjection N→R, contradicting [F6]. Hence R∖A is uncountable.

7.1step 3.2step 5.1step 6.1∎

Collecting the results: A is countably infinite by step 5.1, every embedded rational lies in A by step 3.2, and R∖A is uncountable by step 6.1. The injection of step 3.1 is the least-code-and-root-rank map x↦J(n(x),j(x)), and the only selections made anywhere are least elements of nonempty sets of naturals and the unique increasing listings of finite root sets, so the argument is a theorem of ZF.

Remarks

  • The role of the local root bound A real coefficient list of degree d has at most d real roots is exactly to make each coded list have a finite root set, so that the increasing listing and the position j(x) exist. Without it the least-code map would still be defined but its injectivity argument would have no canonical second coordinate.

  • The fallback clause at a top coefficient ad=0 keeps the decoding total: every natural number is a code, possibly of the constant polynomial 1, which has no roots. Invalid codes therefore contribute nothing to A, while every genuine list appears by step 2.1.

  • No completion or algebraic-closure operation is used, and no claim is made about complex roots: the field in play is R and the roots counted are real roots only. This is the convention of the source exercise, which concerns real coefficient lists.

Depends on

Used by

Nothing in the library uses this result yet.

Dependency tree · two levels

92 results within two dependency steps of this one, each drawn at its shortest distance from it. An arrow runs from a result to what uses it, so the chart reads left to right and ends at this result, which carries a heavier outline. Every node is a link to that result. Click elsewhere on the chart to enlarge it.

Sources