Book III · Proposition 15
Of straight lines in a circle the diameter is greatest, and of the rest the nearer to the centre is always greater than the more remote.Heath, 1908
Rests on: C.N.1, C.N.2, C.N.3, C.N.4, C.N.5, Def.10, Def.15, Def.22, Def.4, Post.5
Depth: 15 steps of argument above the first principles. Parallel postulate: needed.
@proposition(
"III.15",
THEOREM,
sample=_three_on_a_circle,
)
def prop_III_15(o: Point, a: Point, b: Point, c: Point) -> Out:
"""AB is a chord; the diameter through A is compared with it."""
hypothesis("the points lie on the circle", eq_len(o, a, o, b) and eq_len(o, a, o, c))
hypothesis("the chords are genuine", a != b and a != c, guard=True)
circle(o, a, "the given circle")
far = posit(Point(o.x - (a.x - o.x), o.y - (a.y - o.y)), "D")
line(a, far, "the diameter AD")
line(a, b, "the chord AB")
line(a, c, "the chord AC")
near = posit(prop_I_10(a, b).midpoint, "E")
remote = posit(prop_I_10(a, c).midpoint, "F")
# AD is a diameter and AB a chord: the triangle on the centre bounds one
# against the other by I.20, and I.47 turns the distance from the centre
# into the length of the chord.
because(prop_I_20, a, o, b)
because(prop_I_47, a, near, o)
because(prop_I_47, a, remote, o)
claim("the diameter is the greatest of them", "I.20",
sign(length(a, far) - length(a, b)) >= 0
and sign(length(a, far) - length(a, c)) >= 0)
claim("and of the rest, the nearer to the centre is the greater", "I.47",
(sign(length(o, near) - length(o, remote)) < 0)
== (sign(length(a, b) - length(a, c)) > 0))
return Out(diameter=(a, far))