You will recognize the image below as a variation on Euclid's famous Pons Asinorum (Donkey's bridge) problem. I ran across it on a friends facebook page except that specific values had been given for x and y. I could not solve it on my own, and I ended up looking up a solution online (there are several). I realized that the solutions I was finding were constructing equilateral triangles by knowing x and y and I would never get there because I was seeking a more general solution to the problem as shown below.

This lead me to two Questions:

1) How to express the angle α in terms of x and y when x and y are not known in advance?

2) I made a number of attempts at forming a system of equations from the rules for similar triangles, and I always ended up with inadequate systems (that is ones that could not be reduced to a single solution) What is it about the nature of this problem that so resists an algebraic solution using similar triangles?

Variation on the Pons Asinorium

  • $\begingroup$ It might make sense to label your points and describe exactly which angle measurements describe which triple of points. Because at first glance, your $80$ (which I assume should be $80°$) seem to refer to the small angle between the horizontal line and the first sloped line. But that would form an isosceles triangle, which the bottom one is not. So it must be the base angle of the outer large triangle. Avoiding this kind of confusion is important here. $\endgroup$
    – MvG
    Jan 24, 2017 at 12:27
  • 5
    $\begingroup$ I object to calling this Pons Asinorum. As far as I know, Pons Asinorum is not a problem but a theorem, specifically a theorem about isosceles triangles that amounts to saying "they're bilaterally symmetric". $\endgroup$
    – Will R
    Jan 24, 2017 at 13:02

2 Answers 2


How to express the angle $α$ in terms of $x$ and $y$ when $x$ and $y$ are not known in advance?

One way to approach this is as follows: pick coordinates for the two endpoints of the horizontal line, e.g. $(-1,0)$ and $(1,0)$. Then you can formulate equations for the various lines originating at these points. The lower line on the left for example would be

$$\sin(80°-x)X - \cos(80°-x)Y = -\sin(80°-x)$$

The left hand side is essentially the normal vector of the line. If the line has angle zero against the horizontal, you can imagine the normal pointing down, i.e. $(0,-1)$. For an angle of $90°$ that angle would move from down to right, i.e. $(1,0)$. So we can use $(\sin\varphi,-\cos\varphi)$ here. At the right point, where the angle is measured against the left direction not the right, you'd rather use

$$\sin(80°-y)X + \cos(80°-y)Y = \sin(80°-y)$$

The outer two lines are even simpler:

\begin{align*} \sin(80°)X - \cos(80°)Y &= -\sin(80°) \\ \sin(80°)X + \cos(80°)Y &= \sin(80°) \end{align*}

Now you have coordinates for the lines, and can set up systems of equations to obtain the coordinates of the points of intersection. Then you can go about computing the angle $\alpha$ at that one point of intersection. One typical approach would be taking either two difference vectors between points, or two normal vectors of two lines, and then computing the dot product between these. Since the dot product is proportional to the cosine of the angle, you can divide the dot product by the lengths of the vectors, take the arc cosine of that and thus find the angle.

What is it about the nature of this problem that so resists an algebraic solution using similar triangles?

The above works nicely for numeric computations. It also works reasonably well if you know some trigonometric functions of the input angles and want to obtain some trigonometric function of the output ratio. As described above, once you know $\sin$ and $\cos$ of all the input angles, you can compute $\cos^2\alpha$. I'm using $\cos^2$ instead of $\cos$ as you have to divide by the lengths of the two vectors, which involves taking a square root. $\cos^2\alpha$ on the other hand will be a rational function in the trigonometric functions of all the input angles. $\cos\alpha$ will still be some algebraic number.

Now the problem is that while trigonometric functions of a rational number of degrees will be algebraic numbers, the converse is generally not the case. So you have a transcendental relationship between the angle and its cosine, and that's what makes this so difficult to tackle algebraically.

For some specific choices of input angles, these problems lead to a nice integer result, e.g. this one. For others, that is not the case, e.g. this one. Cut the Knot has an overview with some more.


Recall first of all that in a triangle with base $a$ and base angles $\beta$, $\gamma$, the altitude can be expressed as $a/(\cot\beta+\cot\gamma)$. This can be easily proved by the sine rule, for instance.

Consider now our triangle below and set $AB=l$. By the above rule we get then $$ DH={l\over\cot(80°)+\cot(80°-x)}={l\over\tan(10°)+\tan(10°+x)}, \quad EG={l\over\tan(10°)+\tan(10°+y)}. $$ In addition we have $$ EF=GH=l-EG\tan10°-DH\tan10°, $$ and from triangle $DEF$ one gets, after some algebra: $$ \tan(\alpha+10°+x)={EF\over DH-EG}={\tan^2 10°-\tan(10°+x)\tan(10°+y)\over\tan(10°+x)-\tan(10°+y)}. $$

enter image description here

  • $\begingroup$ I think this would be of interest. It may not be to the OP, but probably to future visitors, so it might be a good idea to write that up while you have it in mind. $\endgroup$
    – MvG
    Jan 25, 2017 at 9:03
  • $\begingroup$ @MvG I briefly explained where that formula comes from. $\endgroup$ Jan 25, 2017 at 17:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .