GC-02.03 · Symbolic Model & Source

Companion symbolic Python construction for GC-02.03 · Bùi Quang Tuân’s Side-and-Altitude Equilateral Triangles (GC-02.03).

Programmatic Usage

from geometor.divine.catalog import build_construction

        model, cert = build_construction("GC-02.03")
        assert cert.ratio_expr == sp.GoldenRatio
        

Exact Builder Implementation

def build_bui_two_equilaterals() -> ConstructionResult:
            """Bùi Quang Tuân's coupled equilateral triangles on side and altitude."""
            m = new_catalog_model("bui-two-equilaterals")
            s3 = sp.sqrt(3)
            B = m.set_point(-1, 0, classes=["given"], ID="B")
            C = m.set_point(1, 0, classes=["given"], ID="C")
            M = m.set_point(0, 0, ID="M")
            A = m.set_point(0, s3, ID="A")
            N = m.set_point(sp.Rational(3, 2), s3 / 2, ID="N")

            m.construct_polygon([A, B, C], ID="ABC")
            m.construct_polygon([A, M, N], ID="AMN")
            ln_mn = m.construct_line(M, N, classes=["golden"], ID="MN")

            c_ba = m.construct_circle(B, A, classes=["golden"], ID="cBA")
            m.intersect(c_ba, ln_mn, between=(M, N), classes=["golden"], ID="P")

            return make_result(m, ("M", "P"), ("P", "N"), ("M", "P", "N"))
        

Exact Symbolic Point Coordinates

All points in bui-two-equilaterals are certified free of floating-point approximations over \(\mathbb{Q}(\sqrt{3}, \phi)\):

Point

Exact \(x\)

Exact \(y\)

B

\(-1\)

\(0\)

C

\(1\)

\(0\)

M

\(0\)

\(0\)

A

\(0\)

\(\sqrt{3}\)

N

\(\frac{3}{2}\)

\(\frac{\sqrt{3}}{2}\)

P

\(- \frac{3}{4} + \frac{3 \sqrt{5}}{4}\)

\(\frac{- \sqrt{3} + \sqrt{15}}{4}\)

Certified Golden Ratio: MP / PN = GoldenRatio.