Skip to content
The Lumenary

Practice · Early undergraduate

Constructing ℤ, ℚ and ℝ

Constructing ℤ, ℚ and ℝ

Warm-upHuman

With (a,b)∼(c,d)(a, b) \sim (c, d) iff a+d=c+ba + d = c + b, which pairs of natural numbers lie in the class that represents the integer −2-2? (Choose all that apply.)

Choose all that apply

Constructing ℤ, ℚ and ℝ

Warm-upHuman

Using [(a,b)]⋅[(c,d)]=[(ac+bd, ad+bc)][(a, b)] \cdot [(c, d)] = [(ac + bd,\, ad + bc)], compute [(3,5)]⋅[(4,1)][(3, 5)] \cdot [(4, 1)]. Which integer does the resulting class represent?

Constructing ℤ, ℚ and ℝ

CoreHuman

In the proof that equality of fractions (ad=cbad = cb) is transitive, from ad=cbad = cb and cf=edcf = ed we derive (af)d=(eb)d(af)d = (eb)d. Which step needs the hypothesis that the ring has no zero divisors?

Choose one

Constructing ℤ, ℚ and ℝ

CoreHuman

Each rule below is defined on a representative a/ba/b (or two, a/ba/b and c/dc/d) of a rational number, with b,d≠0b, d \neq 0. Which rules are not well defined as functions of the rational numbers? (Choose all that apply.)

Choose all that apply

Constructing ℤ, ℚ and ℝ

CoreHuman

Which of these subsets of Q\Q are Dedekind cuts (non-empty, not all of Q\Q, closed downwards, no greatest element)? (Choose all that apply.)

Choose all that apply

Constructing ℤ, ℚ and ℝ

CoreHuman

Which example shows that Q\Q is not complete (that not every non-empty, bounded-above subset has a least upper bound in Q\Q)?

Choose one

Constructing ℤ, ℚ and ℝ

CoreFormal

In the lesson's Lean file, PairInt.add is defined with Quotient.map₂ (fun p q => (p.1 + q.1, p.2 + q.2)) (proof). What is the second argument, and what happens if you leave it out?

Choose one

Constructing ℤ, ℚ and ℝ

StretchComputational

Implement the integers as pairs of natural numbers. Write canonical(p), returning the representative of the class of p that has a 00 in at least one coordinate, and mul(p, q) using (a,b)(c,d)=(ac+bd,ad+bc)(a, b)(c, d) = (ac + bd, ad + bc). Then check, for all pairs with entries up to 55, that mul is well defined: equivalent inputs give outputs with the same canonical form.

Runs entirely in your browser, in an isolated worker. Nothing is sent to a server.