GeoGebra Constructions in the Poincaré Disc
The Poincaré disc is the interior of a circle. When doing hyperbolic geometry using the Poincaré disc model, all points are in the Poincaré disc, i.e. they are inside a circle. Since infinity is at the circle, let's call it the circle at infinity, \(C_\infty \). A geodesic through two points is an arc through the points that is perpendicular to \(C_\infty \). If two points are on a diameter of \(C_\infty \), that diameter is the geodesic through the points. A geodesic is the hyperbolic version of a line in Euclidean geometry. Two hyperbolic lines (geodesics) that do not intersect, are parallel. Given a hyperbolic line and a point not on it, there are infinitely many hyperbolic lines through the point that are parallel to the given hyperbolic line.
When doing hyperbolic geometry using the Poincaré disc model, angles are measured the same way as in Euclidean geometry, but distances are not. An angle between two geodesics that intersect, is measured as the angle between the tangent lines at the intersection point. The Euclidean length of an arc however, does not correspond to the hyperbolic length. A geodesic has a finite Euclidean arc length, but it is an infinitely long hyperbolic line.
We will make basic hyperbolic tools as GeoGebra constructions and then use them to make basic hyperbolic ruler and compass constructions. To make it easy, the unit circle centered at the origin will be used as \(C_\infty \) in all constructions.
In the static case, where the points do not move, it is fairly easy to make hyperbolic constructions. In the dynamic case however, the constructions should pass the dragging test. For that reason it is often necessary to use the GeoGebra If-command and the GeoGebra IsDefined-command.
The basic construction used when constructing geodesics is inversion in circle. Some of the properties discussed on the previous page is summarized here.
Let \(C_\infty\) be the circle defining the Poincaré disc and let \(O\) be its center.
Let \(A\) and \(B\) be points in the Poincaré disc and let the points \(A'\) and \(B'\) be their inverse points in \(C_\infty\). We need a circle through \(A\) and \(B\) that is perpendicular to \(C_\infty \).
When constructing a geodesic through A and B, any of the reflected points A' or B' can be used to define a circle. If one of the points has coordinates (0,0), use the other point. (The origin is reflected to infinity which, in this context, is an undefined point.)
To construct a geodesic through points \(A\) and \(B\):
Reflect(A,Circle((0,0), 1))
Reflect(B,Circle((0,0), 1))
c_1 = If(A==(0,0), Circle(A, B, B'), Circle(A, A', B))
Intersect(c_1,Circle((0,0), 1))
Circumcircular Arc through Three Points
on P, A, and Q; to construct the hyperbolic line hline.
If a unit circle is created and then used when constructing the geodesic, it is not possible to make a GeoGebra tool without using the unit circle as input object. For that reason all constructions using the unit circle should be entered in the input bar.
A hyperbolic segment between \(A\) and \(B\) is the arc along the geodesic through \(A\) and \(B\). If either \(A\) or \(B\) is
the origin, the hyperbolic segment is the Euclidean segment between \(A\) and \(B\). The tool
Circumcircular Arc through Three Points
must be used since there might not be a centre point of the circle. A third point
is needed in order to define the arc. Let hline be the geodesic between \(A\) and \(B\), and make the construction:
r_1 = Ray((0,0), Midpoint(A,B))
I_2 = If(IsDefined(I_1), I_1, Midpoint(A, B))
When constructing a ray through \(A\) and \(B\), with \(A\) as a starting point, we cannot use the previously constructed endpoints
of the geodesic, the points \(P\) and \(Q\). Intersection points between circles don't have any particular orientation.
Depending on the position of \(A\) and \(B\), we either need CircumCircularArc[A, B, P]
or
CircumCircularArc[A, B, Q]
. Instead of using \(P\) or \(Q\), start by making an arc that is guaranteed
to have \(A\) as one endpoint and the other endpoint outside of \(C_\infty\). If \(B\) is not equal to \(O\), the
inverted point \(B'\) will do. Otherwise \(A\) and \(B\) lies on a diameter, by reflecting the inverted point \(A'\) in
\(O\) we get a point that will do.
When GeoGebra makes an intersection with an arc, two points are created but only one is seen. In order for the construction to be dynamic, and always work, both intersection points must be considered.
A''=Reflect(A', (0,0))
a_1 = CircumcircularArc(A, B, If(IsDefined(B'), B', A''))
I_3 = Intersect(a_1, Circle((0, 0), 1), 1)
I_4 = Intersect(a_1, Circle((0, 0), 1), 2)
hray = CircumcircularArc(A, B, If(IsDefined(I_3), I_3, I_4))
Make four distances and then use the hyperbolic distance formula on them
ap = Distance(A, P)
aq = Distance(A, Q)
bp = Distance(B, P)
bq = Distance(B, Q)
dist = abs(ln(ap bq / (bp aq)))
It can be shown that hyperbolic circles in the Poincaré disc have the same form as Euclidean circles, but not the same centre. To construct a circle through \(B\) that has a point \(A\) as its hyperbolic centre, we need to find the centre of the corresponding Euclidean circle. All hyperbolic lines through the hyperbolic centre, must be perpendicular to the circle. One such line is the geodesic through \(A\) and \(O\). If \(B\) is not collinear with \(A\) and \(O\), construct the line through \(B\) that is tangent to the geodesic through \(A\) and \(B\). The intersection of the tangent line and the line through \(A\) and \(O\), is the Euclidean centre.
l_1 = Line(A, (0, 0))
Tangents
on B and the geodesic hline, to construct a line l_2.When \(B\) is collinear to \(A\) and \(O\), the point \(I_5\) is undefined. In this case we need another way to find the Euclidean centre. This is where the hyperbolic distance is needed.
Assume that \(A\), \(B\) and \(O\) are collinear, and let the endpoints of the geodesic through \(A\) and \(B\) be \(P\) and \(Q\).
Let \(c\) be the circle through \(A\) that has the midpoint \(M\) between \(A\) and \(A'\) as its centre. \(c\) is perpendicular to \(C_\infty \) and to the line \(b\) through \(A\) and \(O\). Reflect \(B\) in circle \(c\) to a point \(B'\). The endpoints \(P\) and \(Q\) to the geodesic through \(A\) and \(B\), are also the endpoints to the geodesic through \(A\) and \(B'\). Since the cross ratio is preserved when reflecting in a circle, we have that \(d(A,B) = d(A, B')\). Hence, the midpoint between \(B\) and \(B'\) is the Euclidean centre. In GeoGebra, do this:
c_2 = Circle(Midpoint(A, A'), A)
Mid = If(IsDefined(I_5), I_5, Midpoint(B,B''))
hcircle = If(A == (0,0), Circle((0, 0), B), Circle(Mid, B))
No construction is needed. The tool Reflect Object in Circle
can be used.
If you use the tool HypSegment
to construct two hyperbolic segments c and d using four points A, B, C, D; you can then make the intersection point E between the segments. If you aftwerwards move the points A, B, C, D; you may notice that a second intersection point F is created. If you look in the algebra view, you can see that either E or F is undefined.
The reason for this is that the intersection point is created as an intersection point between the two corresponding circles and those have two intersection points.
This means that you cannot use the point E that you created aftwerwards if you move any of the points A, B, C, or D. It may well be that E is undefined.
To solve the problem you must construct both intersection points E and F and use the point that is defined at any given moment.
Make the intersection point E as the first intersection point by writing: E = Intersect(c, d, 1)
Make the intersection point F as the second intersection point: F = Intersect(c, d, 2)
Hide both E and F and make the intersection point you're going to use as: G = If(IsDefined(E), E, F)
Since many hyperbolic constructions are made in a similar way as the Euclidean counterpart, we will go through the most basic Euclidean constructions using a ruler and a compass.
The first book of Euclid's Elements starts with a number of definitions and a number of postulates. The first postulate is:
This should be read as:
The second and third postulates state that it is possible to draw a finite line and it is possible to draw a circle with a given centre and a given radius.
The tools provided by these three postulates can be interpreted as using a ruler and a compass without any gradings, i.e. the tools cannot be used to measure in specified units, only to draw. Having drawn a circle using the compass, it is possible to move the compass and draw another circle with same radius as the first circle.
In theory there are no restrictions on how long the ruler is and no restrictions on how large circles you can draw using the compass.
The first proposition in Euclid's Elements is:
Given a blue segment between two blue points, an equilateral triangle is constructed like this:
From the construction we get the three segments have equal length, hence the triangle is equilateral. Other constructions are not so obvious and require proofs of various length.
We will show two basic constructions and prove them.
Construction 1 ‐ Bisect angle
The angle between two rays with a common endpoint is bisected by following construction
where \( c \cong d \cong e \).
Proof
From the construction we know that \( AB = BD = AC = CD \).
Consider triangles \( \bigtriangleup ABD \) and \( \bigtriangleup ACD \). The side \( AD \) is a side in both triangles and therefore the SSS-criterion for congruent triangles holds. Hence \( \angle BAD = \angle CAD \).
The proof of next construction is somewhat longer.
Construction 2 ‐ Bisect segment
A segment is bisected by following construction
where \(E\) is the point bisecting \(AB\).
Proof
From the construction we know that \( AC = AD = BC = BD \). Furthermore \(CD\) is a side in both \( \bigtriangleup CAD \) and \( \bigtriangleup CBD \), and \(AB\) is a side in both \( \bigtriangleup ADB \) and \( \bigtriangleup ACB \). The SSS-criterion gives us that \( \bigtriangleup CAD \cong \bigtriangleup CBD \) and \( \bigtriangleup ADB \cong \bigtriangleup ACB \).
Consider triangle \( \bigtriangleup CAD \). We can use the isosceles triangle theorem and deduce that \( \angle ADC = \angle ACD\). We can also use the isosceles triangle theorem for \( \bigtriangleup CBD \) and deduce that \( \angle BCD = \angle BDC \). Since \( \bigtriangleup CAD \cong \bigtriangleup CBD \) we have shown that \( \angle ADC = \angle ACD = \angle BCD = \angle BDC \).
Consider triangle \( \bigtriangleup ADB \). We can use the isosceles triangle theorem and deduce that \( \angle ABD = \angle BAD\). We can also use the isosceles triangle theorem for \( \bigtriangleup ACB \) and deduce that \( \angle ABC = \angle BAC \). Since \( \bigtriangleup ADB \cong \bigtriangleup ACB \) we have shown that \( \angle ABD = \angle BAD = \angle ABC = \angle BAC \).
Next consider the four smaller triangles \( \bigtriangleup AED \), \( \bigtriangleup BED \), \( \bigtriangleup AEC \) and \( \bigtriangleup BEC \). We can use the ASA-criterion to deduce that \( \bigtriangleup AED \cong \bigtriangleup BED \cong \bigtriangleup AEC \cong \bigtriangleup BEC \). Hence \( AE = BE \).
Note that Construction 2 can also be used to construct a perpendicular bisector.
Since the proofs of the congruent triangle criterions and the isosceles triangle theorem do not use the parallel postulate, the two constructions must also hold in non-Euclidean geometry, as long as the non-Euclidean ruler and compass have the same functionality as Euclidean ruler and compass.
When making a ruler and compass construction using GeoGebra, you are only allowed to use the tools that corresponds to the tools used in classical geometry, and GeoGebra-specific tools for movement. The allowed tools are:
Move, Point, Intersect, Line, Segment, Ray, Circle with Centre through Point, Compasses, Move Graphics View.
When making the hyperbolic constructions you will need hyperbolic tools for making a: line, segment, ray, distance, and circle. You can either make them yourself by following the instructions in the text or copy the activity Basic hyperbolic tools. You must also use the regular GeoGebra tools: Point, Intersect, and Reflect about Circle.
Exercises 1 and 2 are about Euclidean geometry. Exercises 3-7 are about hyperbolic geometry using the Poincaré disc model. Exercises 8 and 9 are about hyperbolic geometry using the Poincaré halfplane model.
No proofs are needed for the hyperbolic constructions since the proofs of their Euclidean counterparts hold.
Euclidean construction of a perpendicular line through point on a line.
The construction:
Euclidean construction of a perpendicular line through point not on a line.
The construction:
GeoGebra-construction of a hyperbolic perpendicular bisector
This construction is exactly like the Euclidean ruler-and-compass-construction, but a hyperbolic line is used as ruler, and a hyperbolic circle as compass.
Make two points A and B whose distances to the origin is less than one. Use the hyperbolic tools to construct a perpendicular bisector.
Create a tool HypPerpendicularBisector
that has your result as an output object and A, B as input objects.
GeoGebra-construction of a hyperbolic midpoint
For this construction you will need HypPerpendicularBisector
constructed in Exercise 3.
The hyperbolic midpoint \(M\) between two points \(A\) and \(B\), is the intersection between the hyperbolic line through \(A\) and \(B\) and the hyperbolic perpendicular bisector. In order for the midpoint to be dynamic, it must be constructed using the Method for constructing an intersection point between two geodesics.
Make two points A and B whose distances to the origin is less than one. Construct the hyperbolic midpoint between the points.
Create a tool HypMidpoint
that has your result as an output object and A, B as input objects.
GeoGebra-construction of a hyperbolic perpendicular line
For this construction you will need HypPerpendicularBisector
constructed in Exercise 3.
Make three points A, B and C whose distances to the origin is less than one. Your task is to construct the hyperbolic line that goes through C and is perpendicular to a hyperbolic line through A and B.
The GeoGebra tool Perpendicular Line
uses a line as one of its input objects. When making a hyperbolic perpendicular line, the two points defining the hyperbolic line must be used as input objects.
In the Euclidean case, you must place a point on the line and make a circle with C as centre through the newly placed point. In the hyperbolic case you can start by making a hyperbolic circle with C as centre through A. Then construct both intersection points between the circle and a hyperbolic line through A and B. Now only one final step is needed to make to make the perpendicular hyperbolic line.
Create a tool HypPerpendicularLine
that has your result as an output object and C, A, B as input objects. When making the tool you can move C to the top of the list of input objects by using the arrows.
GeoGebra-construction of a hyperbolic angle bisector
HypRay
on A and B to make a ray hray.HypRay
on A and C to make a ray hray2.Continue by making constructions similar to the Euclidean case but remember the Method for constructing an intersection point between two geodesics.
Create a tool HypAngleBisector
that has your result as an output object and B, A, C as input objects (in that order).
GeoGebra-construction of a hyperbolic compass
For this construction you will need HypPerpendicularBisector
constructed in Exercise 3.
In the Euclidean case we could make a copy of a given circle as follows: Given a circle \(c\) with \(A\) as its centre and \(B\) as a point on the circle, a circle \(d\) can be constructed with a given centre \(C\) such that \(d\) the same radius as \(c\) by constructing the perpendicular bisector \(l\) between \(A\) and \(C\), and then reflecting \(B\) in \(l\).
Follow this line of reasoning to make a hyperbolic compass.
The GeoGebra tool Compasses
makes a copy of a circle that can then be moved anywhere. To make a hyperbolic version,
Let the points \(A\) and \(B\) define the hyperbolic circle to be copied, where \(A\) is the centre of the circle. Let \(C\)
be the position of the new centre point.
Create a tool HypCompass
that has your result as an output object and A, B, C as input objects.
GeoGebra-construction of a hyperbolic line using the halfplane model.
For simplicity assume that the halfplane is defined by \(y> 0\) in the GeoGebra coordinate system.
GeoGebra-construction of a hyperbolic circle using the halfplane model.
For this construction you will need the hyperbolic line tool constructed in Exercise 8.
Use a method similar to the instruction Construct a hyperbolic circle to construct a hyperbolic circle in the halfplane model.
Chaim Goodman Strauss - Compass and Straightedge in the Poincaré disk (pdf)
G. Eric Moorhouse - Foundations of Geometry, Inversive Plane Geometry (pdf)
Kenji Kozai & Shlomo Libeskind - Circle Inversions and Applications to Euclidean Geometry (pdf)
Marvin Jay Greenberg - Euclidean and Non-Euclidean Geometries, Development and History