First of all, it should be pointed
out that every

field with

characteristic `0` has a

countable subset which, when restricted to the

field's operations,
behaves exactly like (i. e. is

isomorphic to) the

rational numbers.

However, set theorists like to construct everything in
terms of sets, and the rational numbers are no exception. This
construction follows the method of Paul Bernays, an intermediate step
in his construction of the real numbers.

If you don't know what a natural number or an ordered
`n`-tuple
is, go read up on those things first.

This construction requires that we have addition and multiplication
operators for the set of natural numbers. Your intuitive notions of addition
and multiplication will do quite well for our purpose. However, if
you would like to see a definition of arithmetic for natural numbers using
iterators, ~~go visit that node~~ you will have to wait.

Notice that we use the operators `=`, `<`,
`+`,
and `*` to mean different operations on different sets; you
will have to sort out which is which based upon context. (subtraction
and division are not closed operations for natural numbers, so those
operations only appear when we define them for fraction triplets).

We can define a "fraction triplet" as an ordered
triple
`(x, y, w)` for natural numbers `x`,
`y`,
and `w`, where `w != 0`. The triplet
`(x,
y, w)` can represent the rational number
`(x-y)/w`.

WE've now defined our elements, but our construction may unsettle some readers: Each rational number
is represented by an infinite number of fraction triplets! This is perfectly
acceptable for a construction of the real numbers. However, we can settle
everyone's stomachs by simply adding a layer of abstraction, as described
below.

Now it's time to make an ordered field out of our fraction triplet elements.

We do this by defining some boolean relations and arithmetic operators
on fraction triplets. We use our intuitive correspondence between
fraction triplets and rational numbers as a guide for defining all of these.

Given two fraction triplets `(x, y, w)` and `(i,
j, k)` `,`

We can define equality on fraction triplets:

`(x, y, w) =` `(i, j, k) <-> k * x + w * j =
k * y + w * i`

"`(x, y, w) =` `(i, j, k)` if and only
if `kx + wj = ky + wi`"

This is an equivalence relation. So, we can relabel
each equivalence class as a "rational number". However, we can
also choose one fraction triplet from each class to represent each rational
number:

For natural numbers `x` and `y`,

`x <= y` if and only if there exists a natural number`
z `such that `x + z = y`,

and so `(x, y, w) = (0, z, w).`

Also, `x >= y` if and only if there exists a natural number
`z`
such that `y + z = x`,

and so `(x, y, w) = (z, 0, w).`

Also, for some fraction triplet `(0, z, w)` or `(z,
0, w)`, let us assume that there are numbers `m, n, d `such
that `d*m = w` and `d*n = z`. You can
see that we will eventually find an `m` and `n` with
no common divisor, where `(x, y, w) = (m, 0, n) `or `(0,
m, n).`

So, each equivalence class mentioned above contains exactly one fraction
triplet of the form `(0, m, n)` or `(m, 0, n)`
for some` `relatively prime` m, n`.
We can use each fraction triplet like that as the canonical form of its
equivalence class, i. e. it can represent an individual rational number
all by itself. This also yields our intuitive notion
of a rational number as the quotient of two integers, `m/n`.

For any symbol *n* representing a natural number,
let us define *n*_{q} as `(`*n*,
0, 1).

For addition, we define `(x, y, w) +` `(i, j, k)
= (k * x + w * i, k * y + w * j, w * k)`

For all `(x, y, w)`,

`(x, y, w) + (0, 0, 1) = (x, y, w)`, and so `+`
has `0`_{q} = (0, 0, 1) as its identity element.

`(x, y, w) + (y, x, w) = (0, 0, 1)`,

and so `+`^{-1}(x, y, w) = -(x, y, w) = (y, x, w)

Thus `(x, y, w) -` `(i, j, k) = (k * x + w * j,
k * y + w * i, w * k)`

For multiplication, we define

`(x, y, w) *` `(i, j, k) = (x * i + y * j, x * j
+ y * i, w * k)`

For all `(x, y, w)`,

`(x, y, w) * (1, 0, 1) = (x, y, w)`, and so `*`
has `1`_{q} = (1, 0, 1) as its identity element.

`(0, m, n)*(0, n, m) = (mn, 0, mn) = (1, 0, 1)`

`(m, 0, n)*(n, 0, m) = (mn, 0, mn) = (1, 0, 1)`

and so `*`^{-1}(0, m, n) = (0, n, m), and
`*`^{-1}(m,
0, n) = (n, 0, m).

`(x, y, w) /` `(i, j, k) = (x, y, w) * (*`^{-1}(i,
j, k))

You see that we have defined a

field on the set of fraction triplets.
Now, let us show it is an ordered field.

Recall that the natural numbers are totally ordered by the subset
relation on ordinals. So we can define an order

`(x, y, w) <` `(i, j, k) <-> k * x + w * j
< k * y + w * i`

`"` `(x, y, w) <` `(i, j, k)`
if and only if `kx + wj < ky + wi`"

that is a total order.

We can see that

`(x, y, w) >` `(0, 0, 1)` if and only if
`k*x
+ w*0 > k*y + w*m`, that is,` x > y`.

So,

`(x, y, w) - (i, j, k) >` `(0, 0, 1)`

if and only if (`k * x + w * j, k * y + w * i, w * k) > (0, 0,
1),`

that is, if and only if

`k * x + w * j > k * y + w * i,`

or `(x, y, w) > (i, j, k).`

`(Lemma: (a, b, c) < (a, b, d) <-> d*a+c*a < d*b+c*b
<-> (a < b <-> d < c) )`

Finally, `(x, y, w) * (i, j, k) >` `(0, 0, 1)`

`<-> (xi+yj,xj+yi, wk) > (0, 0, 1)`

`<-> xi + yj > xj + yi`

`<-> (i, j, y) > (i, j, x)`

`<-> i < j <-> x < y`

`<-> ((x, y, w) > 0 <-> (i, j, k) > 0)`