Book VII · Proposition 36

VII.36

Given three numbers, to find the least number which they measure.Heath, 1908

Every step, checked

What it needs, and what needs it

Needs: VII.34 VII.35

Used by: VII.39 IX.14

Rests on: Def.VII.3

Depth: 1 steps of argument above the first principles. Parallel postulate: not needed.

What it takes on trust

Nothing. It draws no intersections and reads nothing off the picture.

The proposition as code

@proposition(
    "VII.36",
    CONSTRUCTION,
    sample=lambda rng: (rng.randint(2, 20), rng.randint(2, 20), rng.randint(2, 20)),
)
def prop_VII_36(a: int, b: int, c: int) -> Out:
    hypothesis("all three are numbers", a > 1 and b > 1 and c > 1, guard=True)
    least = lcm(lcm(a, b), c)
    because(prop_VII_34, a, b)
    because(prop_VII_35, a, b, 1)

    claim("the number found is measured by all three", "VII.34",
          all(measures(n, least) for n in (a, b, c)))
    claim("and nothing less is", "VII.35",
          not any(all(measures(n, m) for n in (a, b, c)) for m in range(1, least)))
    return Out(least=least)