Το πρόβλημα Γεωμετρίας στην ΙΜΟ 2007
(ΙΜΟ 2007) Δίνεται1 τρίγωνο \(\mathrm{ABC}\) με την διχοτόμο της γωνίας \(\mathrm{\widehat{BCA}}\) να τέμνει τον περιγεγραμμένο κύκλο στο τρίγωνο, στο σημείο \(R\), την μεσοκάθετο της \(\mathrm{BC}\) στο \(P\) και την μεσοκάθετο της \(\mathrm{A\Gamma}\) στο \(Q\). Αν \(K\) το μέσο της \(\mathrm{BC}\) και \(L\) το μέσο της \(\mathrm{A\Gamma}\), αποδείξτε ότι τα τρίγωνα \(\mathrm{RPK}\) και \(\mathrm{RQL}\) έχουν το ίδιο εμβαδόν.

Αυτό που θα μας απασχολήσει εδώ, είναι η γενίκευση του παραπάνω προβλήματος στις κωνικές. Η ιδέα της γενίκευσης μου αναφέρθηκε σε μια προφορική συζήτηση που είχα το 2012 στη Σόφια με τον Vesselin Nenkov, υποψήφιος τότε διδάκτορας υπο την επίβλεψη του prof. Sava Grozdev. Ο Nenkov θα εργαζόταν με βαρυκεντρικές συντεταγμένες εξ αιτίας του μεγάλου αριθμού πράξεων που απαιτούσε η γενίκευση καθώς είναι και προσαρμοσμένες καλύτερα σε θέματα γενίκευσης ιδιοτήτων περιγεγραμμένου κύκλου από την αναλυτική γεωμετρία (η μεθοδολογία της κλασικής γεωμετρίας καταρρέει). Δεν γνωρίζω πως εργάστηκε τελικά στο διδακτορικό του. Οι υπολογιστές όμως άλλαξαν τα δεδομένα, η υπολογιστική αξία έχει πέσει. Το ενδιαφέρον μου την εποχή εκείνη είχε επικεντρωθεί στην αλγεβρική διάσταση του γεωμετρικού προβλήματος και εργάστηκα τότε με τη μέθοδο Wu και Grοebner. Δεν ήταν δύσκολο να γενικεύσω το αποτέλεσμα του Προβλήματος, αλλά ξανακοιτώντας την άσκηση μετά από 15 χρόνια είδα ποιο κομψές και προσιτές λύσεις πάντα με τη βοήθεια των Computer Algebra Systems και της Αφινικής Γεωμετρίας όπου κατα τη γνώμη μου ανήκουν αυτές οι γενικεύσεις.
Ένα άλλο θέμα που έχει νομίζω ενδιαφέρον διδακτικό πρωτίστως, είναι πως θα γενικευθεί το πρόβλημα στις κωνικές. Για παράδειγμα, όπως μπορείτε να δείτε όλες οι αποδείξεις που έχουν δοθεί μέχρι σήμερα, βασίζονται στο ότι τα δύο σημεία \(P\) και \(Q\) είναι σημεία των μεσοκαθέτων των πλευρών με τη διχοτόμο. Στην παραβολή όμως κέντρο είναι ένα σημείο στο άπειρο. Άρα, το σημείο \(R\) θα είναι η τομή της παραλλήλου από το μέσο \(M\) της \(BC\) προς τον άξονα της παραβολής, με την παραβολή2.
Γενίκευση σε παραβολή
Σε αυτήν την ενότητα, γενικεύουμε το Πρόβλημα στην περίπτωση μιας παραβολής. Αυτή η γενίκευση υποκινείται από την παρατήρηση ότι το αρχικό πρόβλημα βασίζεται σε ιδιότητες του περιγεγραμμένου κύκλου, οι οποίες δεν ισχύουν άμεσα για κωνικές τομές όπως οι παραβολές. Ωστόσο, χρησιμοποιώντας αφινική γεωμετρία, μπορούμε να επεκτείνουμε το αποτέλεσμα σε αυτήν την περίπτωση.
Έστω \(\mathrm{\triangle ABC}\) τυχόν τρίγωνο, για το οποίο τα σημεία \(K, L\) και \(M\) είναι τα μέσα αντίστοιχα των τμημάτων \(\mathrm{BC, CA,AB}\), και \(\mathscr{P}\) είναι τυχούσα παραβολή περιγεγραμμένη γύρω από το \(\mathrm{\triangle ABC}\). Οι ευθείες \(k\), \(l\) και \(m\) διέρχονται αντίστοιχα από τα \(K, L\) και \(M\) και είναι παράλληλες προς τον άξονα της \(\mathscr{P}\). Αν \(P = k \cap RC\), \(Q = l \cap CR\) και \(R = m \cap \mathscr{P}\), τότε τα εμβαδά των τριγώνων \(\mathrm{\triangle RPK}\) και \(\mathrm{\triangle RQL}\) είναι ίσα με \(\frac{1}{8}\) του εμβαδού του \(\mathrm{\triangle ABC}\).

Είναι γνωστό ότι το κέντρο της παραβολής είναι στο άπειρο. Τα δύο τρίγωνα \(\mathrm{\triangle RPK}\) και \(\mathrm{\triangle RQL}\) έχουν το ίδιο εμβαδόν αλλά δεν εξαρτάται από τη διεύθυνση του άξονα της παραβολής παρά από το ίδιο το τρίγωνο.
Για να καταλάβουμε την απόδειξη, θα σημειώσουμε ότι δουλεύουμε στον αφινικό χώρο και έτσι κανένα από τα δεδομένα του προβλήματος δεν αλλάζει. Δεν μιλάει για γωνίες, αποστάσεις ή κύκλους.
Θεωρώ το τρίγωνο με κορυφές \(A(0,0)\), \(B(1,0)\) και \(C=(0,1)\). Ένα οποιοδήποτε τρίγωνo \(\triangle DEZ\) μέσω της αφινικής απεικόνισης
$$T: (a,b) \rightarrow D+a (E-D)+b (Z-D)$$ πάει το τρίγωνο \(\triangle ABC\) στο \(\triangle DEZ\) με $$T(0,0)=D,\ T(1,0)=E,\ T(0,1)=Z$$ Στην περίπτωσή μας το εμβαδόν \((\triangle ABC)=\frac{1}{2}\).
Υποθέτουμε ότι ο άξονας της παραβολής, \(\mathscr{P}\), στην οποία το τρίγωνο \(\triangle ABC\) είναι εγγεγραμμένο έχει άξονα τη διεύθυνση του διανύσματος \(\overrightarrow{w}=(p,q)\neq (0,0)\), έτσι ώστε να μην είναι παράλληλος σε καμία πλευρά του τριγώνου.
Τα μέσα των πλευρών \(K,L,M\) έχουν αντίστοιχα συντεταγμένες:
$$Κ=\left(\frac{1}{2},\frac{1}{2}\right),\ L=\left(0,\frac{1}{2}\right),\ M=\left(\frac{1}{2},0\right)$$

Πρώτα θα βρούμε τώρα τον τύπο της παραβολής, έχουμε τρία σημεία της, και τη διεύθυνση του άξονα.
Η παραβολή διέρχεται από το \((0,0)\) άρα η γενική της μορφή είναι:
$$\mathscr{P}:\ a x^2+b xy+c y^2+d x+e y=0$$
Συνθήκες
- Το \(B(1,0)\) ανήκει στην \(\mathscr{P}\): \(p1:=a+d=0\).
- Το \(C(0,1)\) ανήκει στην \(\mathscr{P}\): \(p2:=c+e=0\).
- H \(\mathscr{P}\) είναι παραβολή3: \(p3:=b^2-4ac=0\).
- Από το ότι το άπειρο σημείο \((p:q:0)\) ανήκει στην ομογενή εξίσωση της παραβολής:$$a x^2+b xy+c y^2+d x z+e y z +l z^2$$ έχουμε: \(p4:=a p^2+b pq+c q^2=0\).
Χρησιμοποιώντας αλγορίθμους της βάσης Groebner μπορούμε να απαλείψουμε από τη λίστα $$\{p1,p2,p3,p4,p5\}, \hbox{ όπου } p5:=a x^2+b xy+c y^2+d x+e y$$ τις μεταβλητές \({a,b,c,d}\), θα πάρουμε το πολυώνυμο της παραβολής (με παράμετρο \(e\neq 0\) ) :
$$\mathscr{P}: q^2x^2-q^2x+y^2p^2-yp^2-2qpyx=0\quad (1)$$
Οι υπολογισμοί γίνανε στο Maple. Η απαλοιφή με το χέρι είναι μάταιη αν δεν χρησιμοποιηθούν βαρυκεντρικές συντεταγμένες.
- Βρίσκω το σημείο \(R = m \cap \mathscr{P}\). To σημείο \(M=\left(\frac{1}{2},0\right)\) ανήκει στην \(m\) και είναι παράλληλη στο \(\overrightarrow{w}=(p,q)\), άρα: $$x=\frac{1}{2}+up\ \&\ y=uq$$ Αντικαθιστούμε τα \(x,y\) στην εξίσωση (1) και λύνουμε ως προς \(u\) (πάντα στο Maple): $$u=-\frac{q}{4p(p+q)}$$ Άρα το σημείο \(R=\left(\frac{2p+q}{4p(p+q)},-\frac{q^2}{4p(p+q)}\right)\).
- Βρίσκω το σημείο \(P = k \cap RC\). Η \(RC\) περνά από \(C(0,1)\) και \(R\). H κλίση της είναι: $$m_{RC}= \frac{y_R-1}{x_R}= -\frac{2p+q}{p}$$ $$CR:\; y = 1 -\frac{2p+q}{p}x\ (2)$$ \(k\) από \(K(\tfrac12,\tfrac12):\ x=\tfrac12+sp,\;y=\tfrac12+sq\). Τομή με \(CR\), (2), δίνει \(s=-\frac{1}{4p}\): $$P=\left(\frac{1}{4},\frac{2p-q}{4p}\right)$$
- Βρίσκω το σημείο \(Q = l \cap CR\). H ευθεία \(l\) διέρχεται από \(L(0,\tfrac12): x=tp,\;y=\tfrac12+tq\). Τομή με \(CR\), (2), (2) δίνει: \(t=\frac{1}{4(p+q)}\): $$Q=\left(\frac{p}{4(p+q)},\frac{2p+3q}{4(p+q)}\right)$$
Βρίσκω τα εμβαδά
- Το εμβαδόν του \((\triangle ABC)=\tfrac12\).
- To εμβαδόν του \( (\triangle RPK )\): $$\begin{array}{lcl} (\triangle RPK)&=&\tfrac12\Bigg|det\left(\begin{array}{c} R-P\\ K-P\end{array}\right)\Bigg|\\ &=& \tfrac12\Bigg|det\left( \begin{array}{cc} \frac{p}{4(p+q)}&-\frac{2p+q}{4(p+q)}\\ \frac{1}{4}&\frac{q}{4p}\end{array}\right)\Bigg|\\ &=& \tfrac12\cdot \tfrac18\\ &=&\frac{1}{16} \end{array}$$
- To εμβαδόν του \( (\triangle RQL )\): $$\begin{array}{lcl} (\triangle RQL)&=&\tfrac12\Bigg|det\left(\begin{array}{c} R-Q\\ L-Q\end{array}\right)\Bigg|\\ &=& \tfrac12\Bigg|det\left( \begin{array}{cc} \frac{1}{4}&-\frac{2p+q}{4p}\\ -\frac{p}{4(p+q)}&-\frac{q}{4(p+q)} \end{array}\right)\Bigg|\\ &=& \tfrac12\cdot \big|-\tfrac18\big|\\ &=&\frac{1}{16} \end{array}$$
Συνεπώς, \((\triangle RPK)=(\triangle RQL)=\tfrac18\cdot (\triangle ABC)\). \(\blacksquare \)
Παρακάτω δίνουμε ένα κώδικα στη Python ο οποίος μπορεί να δεχθεί στην είσοδο παραμέτρους \(a,b,c,p,q\), οι οποίες αντιπροσωπεύουν τις κορυφές του τριγώνου \(A(0,0)\), \(B(a,0)\), \(C(b,c)\) και το διάνυσμα κατεύθυνσης του άξονα της παραβολής \(\overrightarrow{w}=(p,q)\).
import numpy as npimport matplotlib.pyplot as pltdef coeffs_and_params(a, b, c, p, q): """coefficients of Ax^2 + Bxy + Cy^2 + Dx + Ey = 0""" qp = q / c pp = (p*c - b*q) / (a*c) A = qp**2 / a**2 B = -2*qp/(a*c)*(qp*b/a + pp) C = (qp*b/a + pp)**2 / c**2 D = -qp**2 / a E = (qp**2*b/a - pp**2) / c return A, B, C, D, E, pp, qpdef map_uv(a, b, c, uv): u, v = uv return np.array([a*u + b*v, c*v])def triangle_area(p1, p2, p3): return 0.5 * abs(np.linalg.det(np.vstack([p2-p1, p3-p1])))def main(): print("Parabola through A(0,0), B(a,0), C(b,c) with axis direction (p,q)") a = float(input("a for B(a,0): ")) b = float(input("b for C(b,c): ")) c = float(input("c for C(b,c): ")) p = float(input("p (axis direction): ")) q = float(input("q (axis direction): ")) A, B, C, D, E, pp, qp = coeffs_and_params(a, b, c, p, q) # --- equation --- print("\nParabola equation:") eq = (f"{A:.6g}x^2 {'+' if B>=0 else '-'} {abs(B):.6g}xy " f"{'+' if C>=0 else '-'} {abs(C):.6g}y^2 " f"{'+' if D>=0 else '-'} {abs(D):.6g}x " f"{'+' if E>=0 else '-'} {abs(E):.6g}y = 0") print(eq) # points in (u,v) Kp, Lp, Mp = (0.5,0.5), (0.0,0.5), (0.5,0.0) u = - qp / (4*pp*(pp+qp)) Rp = (0.5 + u*pp, u*qp) s = -1/(4*pp) Pp = (Kp[0] + s*pp, Kp[1] + s*qp) t = 1/(4*(pp+qp)) Qp = (Lp[0] + t*pp, Lp[1] + t*qp) pts = {} for name, uv in {"K":Kp,"L":Lp,"M":Mp,"R":Rp,"P":Pp,"Q":Qp}.items(): pts[name] = map_uv(a,b,c, uv) pts["A"] = np.array([0.0, 0.0]) pts["B"] = np.array([a, 0.0]) pts["C"] = np.array([b, c]) # --- areas --- area_abc = triangle_area(pts["A"], pts["B"], pts["C"]) area_rpk = triangle_area(pts["R"], pts["P"], pts["K"]) area_rql = triangle_area(pts["R"], pts["Q"], pts["L"]) print("\nTriangle areas:") print(f"ABC = {area_abc:.6g}") print(f"RPK = {area_rpk:.6g} (ratio RPK/ABC = {area_rpk/area_abc:.6g})") print(f"RQL = {area_rql:.6g} (ratio RQL/ABC = {area_rql/area_abc:.6g})") # parabola for plotting ts = np.linspace(-4, 4, 800) vs = (ts**2 - qp*ts) / (pp*(pp+qp)) us = (ts + pp*vs) / qp parab = np.array([map_uv(a,b,c,(u,v)) for u,v in zip(us, vs)]) fig, ax = plt.subplots(figsize=(8,7)) # triangle ABC tri = np.vstack([pts["A"], pts["B"], pts["C"], pts["A"]]) ax.plot(tri[:,0], tri[:,1], 'k-', lw=1.5, label='ABC') # parabola ax.plot(parab[:,0], parab[:,1], 'b-', lw=1.8, label='parabola') # k, l, m dir_vec = np.array([p, q]) for start, name, col in [(pts["K"],"k",'r'), (pts["L"],"l",'g'), (pts["M"],"m",'m')]: line = np.vstack([start-3*dir_vec, start+3*dir_vec]) ax.plot(line[:,0], line[:,1], '--', color=col, lw=0.9, label=name) # CR Cpt, Rpt = pts["C"], pts["R"] cr_dir = Rpt - Cpt cr_line = np.vstack([Cpt - 2*cr_dir, Rpt + 2*cr_dir]) ax.plot(cr_line[:,0], cr_line[:,1], 'k--', lw=1.0, label='CR') # points for name, pt in pts.items(): ax.plot(pt[0], pt[1], 'o', ms=5) ax.text(pt[0], pt[1], f' {name}', fontsize=9) # shaded triangles for tri_pts, col in [([pts["R"],pts["P"],pts["K"]],'r'), ([pts["R"],pts["Q"],pts["L"]],'g')]: tpoly = np.vstack(tri_pts + [tri_pts[0]]) ax.fill(tpoly[:,0], tpoly[:,1], color=col, alpha=0.18) ax.set_aspect('equal') ax.grid(True, alpha=0.3) ax.legend(loc='best') ax.set_title(f"a={a}, b={b}, c={c}, p={p}, q={q}") plt.show()if __name__ == "__main__": main()
Αν \(a=4,\ b=3,\ c=6,\ p=1,\ q=1\) τότε ο αλγόριθμος δίνει την εξίσωση της παραβολής: $$0.00173611x^2 – 0.00347222xy + 0.00173611y^2 – 0.00694444x + 0.000868056y = 0$$ τα εμβαδά των τριγώνων \( (\triangle RPK)=(\triangle RQL)=1.5\) και \( (\triangle ABC)=12\) καθώς και το γράφημα που απεικονίζει την κατάσταση στο πρόβλημα:

Αν θέλετε να δείτε στον compiler της Python, τα αποτελέσματα (χωρίς όμως το σχήμα γιατί δεν έχει το matplotlib) πάτε ΕΔΩ
\( \square \)
Γενίκευση σε έλλειψη & υπερβολή
Έχοντας γενικεύσει το πρόβλημα στην περίπτωση μιας παραβολής, επεκτείνουμε τώρα την ανάλυσή μας σε ελλείψεις και υπερβολές. Σε αντίθεση με τις παραβολές, αυτές οι κωνικές τομές έχουν ένα κέντρο, το οποίο μας επιτρέπει να χρησιμοποιήσουμε αφινικούς μετασχηματισμούς για να τις αντιστοιχίσουμε σε κύκλους, απλοποιώντας το πρόβλημα.
Δίνεται τρίγωνο \(\triangle ABC\) και \(K,L\) και \(M\) τα μέσα των πλευρών \(BC\), \(AC\) και \(AB\) αντίστοιχα. Έστω \(\mathscr{C}\) η έλλειψη (υπερβολή) η περιγεγραμμένη στο τρίγωνο με κέντρο το σημείο \(O\). Αν \(R=\mathscr{C}\cap OM\) και \(R_1=\mathscr{C}\cap OR\), \(P=RC\cap OK\), \(Q=RC\cap OL\), \(P_1=OK\cap CR_1\) και \(Q_1=OL\cap CR_1\) . Δείξτε ότι τα ζεύγη τριγώνων \( (\triangle RPK\), \(\triangle RQL)\), \( (\triangle RPK\), \(\triangle R_1PK)\), \((\triangle RQL\), \(\triangle R_1QL)\), \( (\triangle RP_1K\), \(\triangle R_1P_1K)\), και \((\triangle RQQ_1\), \(\triangle R_1QQ_1)\), είναι ισεμβαδικά.

Η ιδέα στην κωνική με κέντρο είναι απλή. Η γενική ιδέα είναι να χρησιμοποιήσουμε αφινικό μετασχηματισμό. Η έλλειψη \(\mathscr{C}:\ \frac{x^2}{a^2}+\frac{y^2}{b^2}=1\) είναι περιγεγραμμένη στο τρίγωνο \(\triangle ABC\) με κέντρο \(O=(0,0)\). O αφινικός μετασχηματισμός4 μπορεί να στείλει την έλλειψη σε κύκλο, γιατί οι κωνικές είναι αφινικά ισοδύναμες. Επιλέγω έναν αφινικό μετασχηματισμό $$F(x,y)=\left(\frac{x}{a},\frac{y}{b}\right)$$ που στέλνει:
- \(\mathscr{C}\stackrel{F}{\mapsto} \mathscr{C’}:\ x’^2+y’^2=1\) κύκλο με κέντρο το \(O’=(0,0)\).
- \(A,B,C \stackrel{F}{\mapsto} A’,B’,C’\) αντίστοιχα.
- \(K,L,M\stackrel{F}{\mapsto} K’,L’,M’\) (μέσα πλευρών, άρα διατηρούνται υπό τον αφινικό).
- \(O\stackrel{F}{\mapsto} O’\) (το κέντρο κύκλου, δηλαδή συμπίπτει με το κέντρο του περιγεγραμμένου κύκλου του \(\triangle A’B’C’\) ).
Ορισμός σημείων στον μετασχηματισμό
Αν \(R=\mathscr{C}\cap OM\), τότε στον αφινικό \(R’=\mathscr{C}’\cap O’M\)$.
Ομοίως, \(R_1=\mathscr{C}\cap OR\) δίνει \(R’_1=\mathscr{C}’\cap O’R’\), δηλαδή \(R’\) και \(R’_1\) είναι αντιδιαμετρικά στον κύκλο \(\mathscr{C}’\) ως προς \(O’\) (γιατί στην έλλειψη \(R_1\) είναι συμμετρικό του \(R\) ως προς κέντρο, εφόσον η \(OR\) είναι διάμετρος της έλλειψης).
- \(P=CR\cap OK\) δίνει \(P’=C’R’\cap O’K’\).
- \(Q=CR\cap OL\) δίνει \(Q’=C’R’\cap O’L’\).
- \(P_1=OK\cap CR_1\) δίνει \(P’_1=O’K’\cap C’R’_1\) και
- \(Q_1=OL\cap CR_1\) δίνει \(Q’_1=O’L’\cap C’R’_1\).

Σε συνδιασμό με το αρχικό Πρόβλημα, και τις συμμετρίες στη περίπτωση του κύκλου, όλα φαίνονται ελυκολα. Οι αναλογίες διατηρούνται με τον αφινικό μετασχηματισμό, δείτε το παραπάνω Σχήμα. Η ισοεμβαδικότητα των ζητούμενων τριγώνων στο αρχικό σχήμα είναι ισοδύναμη με την ισοεμβαδικότητα των εικόνων τους στο μετασχηματισμένο, αφού ο λόγος εμβαδού κάθε τριγώνου πολλαπλασιάζεται με τον ίδιο σταθερό παράγοντα \(\big|\det(F)\big|=\frac{1}{ab}\).\( \blacksquare \)
- Αποδείξεις μπορείτε να δείτε στα https://aops.com/community/p894655 ή https://www.cut-the-knot.org/triangle/EqualAreasIMO2007_Sol6.shtml ↩︎
- Λυγάτσικας Ζ., (2013): Κωνικές, Liberal, Αθήνα. Πρόβλημα 22 σελίδα 146. ↩︎
- Λυγάτσικας Ζ., (2013): Κωνικές, Liberal, Αθήνα. Αλγόριθμος 2.6.1 σελίδα 46. ↩︎
- Αν η έλλειψη είναι σε τυχαία θέση και προσανατολισμό, με εξίσωση (\(O\) το κέντρο της) και εξίσωση: \((x-O)^TM(x-O)=1\) όπου \(Μ\) συμμετρικός θετικά ορισμένος πίνακας \(2\times 2\). Ο μετασχηματισμός είναι \(F(x)=M^{\tfrac12}(x-O)\), και δίνει τον μοναδιαίος κύκλο. ↩︎
