archematics/public/rostamian/trisect-alberts.html

404 lines
16 KiB
HTML
Raw Permalink Normal View History

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<!-- fix buggy IE8, especially for mathjax -->
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>An angle trisection</title>
<link rel="stylesheet" type="text/css" media="screen" href="style.css">
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML,http://userpages.umbc.edu/~rostamia/mathjax-config.js">
MathJax.Hub.Queue( function() {document.body.style.visibility="visible"} );
</script>
</head>
<body style="visibility:hidden">
<h1>An angle trisection</h1>
<h4>Construction by Chris Alberts</h4>
<p>
The construction described in this page is due to Chris Alberts, who
sent it to me in an email on March 15, 2011.
I have paraphrased and rearranged his construction, but the
differences from the original are cosmetic. The error analysis is mine.
<p>
<table class="centered">
<tr><td align="center">
<applet code="Geometry" archive="Geometry.zip" width="810" height="600">
<param name="background" value="ffffff">
<param name="title" value="An angle trisection">
<!-- <param name="align" value="left"> -->
<param name="pivot" value="O">
<!-- The angle AOB -->
<param name="e[1]" value="O;point;fixed;400,400">
<param name="e[2]" value="A;point;fixed;790,400">
<param name="e[3]" value="c;circle;radius;O,A;none;none;lightGray;none">
<param name="e[4]" value="B;point;circleSlider;c,720,0;red;red">
<param name="e[5]" value="OA;line;connect;O,A;none;none;blue">
<param name="e[6]" value="OB;line;connect;O,B;none;none;blue">
<!-- The inner circle -->
<param name="e[7]" value="A';point;fixed;530,400">
<param name="e[8]" value="c';circle;radius;O,A';none;none;lightGray;none">
<param name="e[9]" value="l1;line;chord;OB,c';none;none;none">
<param name="e[10]" value="B';point;first;l1">
<!-- the points P, R, M -->
<param name="e[11]" value="E;point;midpoint;B',O">
<param name="e[12]" value="c'';circle;radius;B',O;none;none;00aa00;none">
<param name="e[13]" value="l2;line;parallel;E,A,O;none;none;none">
<param name="e[14]" value="l3;line;chord;l2,c'';none;none;none">
<param name="e[15]" value="P;point;first;l3">
<param name="e[16]" value="l4;line;chord;l2,c';none;none;none">
<param name="e[17]" value="R;point;last;l4">
<param name="e[18]" value="l8;line;connect;E,R">
<param name="e[19]" value="M;point;midpoint;P,R">
<!-- the points N and F -->
<param name="e[20]" value="l5;line;chord;B',M,c';none;none;none">
<param name="e[21]" value="N;point;last;l5">
<param name="e[22]" value="l9;line;connect;B',N;none;none;none;none"> <!-- -->
<param name="e[23]" value="l6;line;parallel;B',A,O;none;none;none">
<param name="e[24]" value="c1;circle;radius;N,B';none;none;none;none">
<param name="e[25]" value="l7;line;chord;l6,c1;none;none;none">
<param name="e[26]" value="F;point;last;l7">
<!-- the point G -->
<param name="e[27]" value="T1;polygon;triangle;B',N,F;none;none;lightGray;ddffcc">
<param name="e[28]" value="l10;line;chord;N,F,c;none;none;none">
<param name="e[29]" value="G;point;first;l10">
<param name="e[30]" value="l11;line;connect;F,G;none;none;cyan">
<param name="e[31]" value="l12;line;chord;G,O,c';none;none;none">
<param name="e[32]" value="H;point;last;l12">
<param name="e[33]" value="l13;line;connect;G,H;none;none;lightGray">
<!-- the points H, D, and J -->
<param name="e[34]" value="D;point;last;l1">
<param name="e[35]" value="l14;line;connect;O,D">
<param name="e[36]" value="l15;line;parallel;D,O,A;none;none;none">
<param name="e[37]" value="c2;circle;radius;H,D;none;none;none;none">
<param name="e[38]" value="l16;line;chord;l15,c2;none;none;none">
<param name="e[39]" value="J;point;last;l16">
<param name="e[40]" value="T2;polygon;triangle;D,H,J;none;none;lightGray;ddffcc">
<!-- the point U -->
<param name="e[41]" value="l17;line;chord;H,J,c;none;none;none">
<param name="e[42]" value="K;point;first;l17">
<param name="e[43]" value="l18;line;connect;J,K;none;none;cyan">
<param name="e[44]" value="c3;circle;radius;A,K;none;none;none;none">
<param name="e[45]" value="l19;line;bichord;c,c3;none;none;none">
<param name="e[46]" value="T;point;last;l19">
<param name="e[47]" value="l20;line;connect;O,T;none;none;red">
<param name="e[48]" value="l21;line;connect;K,T;none;none;lightGray">
<!-- labels for the circles -->
<param name="e[49]" value="C'';point;circleSlider;c'',150,0;00aa00;none">
<param name="e[50]" value="C';point;fixed;255,420;lightGray;none">
<param name="e[51]" value="C;point;fixed;120,120;lightGray;none">
<!-- angle markers -->
<param name="e[52]" value="po1;point;fixed;445,400;none;none">
<param name="e[53]" value="ci1;circle;radius;O,po1;none;none;none;none">
<param name="e[54]" value="li1;line;chord;O,T,ci1;none;none;none">
<param name="e[55]" value="po2;point;first;li1;none;none">
<param name="e[56]" value="li2;line;chord;O,B,ci1;none;none;none">
<param name="e[57]" value="po3;point;first;li2;none;none">
<param name="e[58]" value="se1;sector;sector;O,po1,po2;none;none;black;yellow">
<param name="e[59]" value="se2;sector;sector;O,po2,po3;none;none;black;orange">
</applet>
</td></tr>
<tr><td>
<b>
Drag the point $B$ to change the angle $AOB$
(but keep $AOB$ to less than 90 degrees).<br>
Press &ldquo;r&rdquo; to reset the diagram to its initial state.<br>
The red line ($OT$) is an approximate trisector of the angle $AOB$.
</b>
</td></tr></table>
<p>
Consider the circular arc $AB$ on the circle $C$ centered at $O$,
shown in the diagram above.
Assume that the angle $AOB$ is between 0 and 90 degrees.
To trisect $AOB$, do:
<ol>
<li>
Draw the circle $C'$ centered at $O$ with a radius 1/3&nbsp;$OA$.
Mark $A'$ and $B'$ its intersections with the line segments $OA$ and $OB$,
respectively.
<li>
Draw the circle $C''$ (shown in green) centered at $B'$ through the point $O$.
<li>
Let $E$ be the midpoint of the line segment $OB'$.
Draw a line through $E$ parallel to $OA$ and mark its intersections
$P$ and $R$ with the circles $C''$ and $C'$, as shown.
<li>
Let $M$ be the midpoint of the line segment $PR$. Draw the line $B'M$
and extend to the intersection point $N$ with the circle $C'$.
<li>
Draw a line through $B'$ parallel to $OA$, and select the point $F$ on
it so that $NB' = NF$.
<li>
Extend the line segment $NF$ to intersect the circle $C$ at $G$.
<li>
Draw the line $GO$ and extend it to the point of intersection $H$
with the circle $C'$.
<em>Note:</em> If you look at the diagram closely, you will be able to
see that the line segments $GO$ and $GN$
are <em>not</em> collinear.
<li>
Let $D$ be diagonally opposite the point $B'$ in the
circle $C'$. Draw a line through $D$ parallel to $OA$, and
select the point $J$ on it so that $HD=HJ$.
<em>Note:</em> Although it is impossible to discern visually,
the line segments $OH$ and $HJ$
are <em>not</em> collinear.
<li>
Extend the line segment $HJ$ to intersect the circle $C$ at $K$.
<li>
Reflect $K$ about the line $OA$ to get the point $T$.
</ol>
The line $OT$ is an approximate trisector of the angle $AOB$.
<h2>Error analysis</h2>
<p>
The calculation of the coordinates of all the points that appear
in the construction is elementary but
the resulting expressions are massively large, therefore I will refrain
from putting them on this web page. (I did the calculations in <em>Maple</em>).
<p>
Let $\alpha$ and $\beta(\alpha)$ be the sizes of the angles $AOB$ and $AOT$,
respectively.
Express the trisection error as $e(\alpha) = \frac{\alpha}{3} - \beta(\alpha)$.
It turns out that $e(0) = e(\pi/2) = 0$.
In the range $0$ to $\pi/2$ the error is the largest near
1.22175&nbsp;radians = 70.0013&nbsp;degrees. The maximum error is
$2.32\times10^{-18}$&nbsp;radians = $1.33\times10^{-16}$&nbsp;degrees.
<p>
Expanding $\beta(\alpha)$ in power series we get:
\[
\beta(\alpha)
= \frac{1}{3} \alpha +
\frac{5^9}{2^{13} \cdot 3^{40}} \alpha^{27} + O(\alpha^{29})
= \frac{1}{3} \alpha +
\frac{1953125}{99595595440594360737792} \alpha^{27} + O(\alpha^{29}).
\]
<h2>Alberts' refinement</h2>
<p>
The extraordinary precision of Chris Alberts' trisection
is a result of the application of a refinement technique which
I will call <em>Alberts' refinement</em>.
The 10 steps of his trisection procedure, described above,
consist of three distinct stages:
<ol>
<li><em>Stage 1,</em> corresponding to the steps 1&ndash;5 of the construction,
produces the angle $FB'N$ which is roughly one third of the angle $AOB$.
The trisection error at this stage may be as large as 0.7 degrees.
<li><em>Stage 2,</em> corresponding to the steps 6&ndash;7 of the construction,
produces the angle $A'OH$ which is quite close to $\frac13 \alpha$. The worst
error is 0.00013791&nbsp;degrees and
occurs when $AOB$ is near 70 degrees.
<li><em>Stage 3,</em> corresponding to the steps 8&ndash;10 of the construction,
produces the angle $AOT$ which, as noted above, is within
$1.33\times10^{-16}$&nbsp;degrees of the exact trisection.
</ol>
Each of the stages 2 and 3 consists of one application
of <em>Alberts' refinement</em> which may be formulated as
a stand-alone geometric proposition illustrated
in the diagram below.
<p>
<table class="centered">
<tr><td align="center">
<applet code="Geometry" archive="Geometry.zip" width="450" height="320">
<param name="background" value="ffffff">
<param name="title" value="Alberts' refinement">
<!-- the lines L2, L1, L3 -->
<param name="e[1]" value="O;point;fixed;40,250">
<param name="e[2]" value="B';point;fixed;380,250;none;none">
<param name="e[3]" value="L2;line;connect;O,B';black">
<param name="e[4]" value="c1;circle;radius;O,B';none;none;none;none">
<param name="e[5]" value="A';point;circleSlider;c1,100,10;none;none">
<param name="e[6]" value="L1;line;connect;O,A';black">
<param name="e[7]" value="s1;sector;sector;O,B',A';none;none;blue;none">
<param name="e[8]" value="X;point;circleSlider;c1,450,110;red;red">
<param name="e[9]" value="L3;line;connect;O,X;none;none;blue">
<!-- the points A, P, B -->
<param name="e[10]" value="p1;point;fixed;160,250;none;none">
<param name="e[11]" value="A;point;cutoff;L1,O,p1">
<param name="e[12]" value="c2;circle;radius;A,O;none;none;none;none">
<param name="e[13]" value="l1;line;chord;O,X,c2">
<param name="e[14]" value="P;point;last;l1">
<param name="e[15]" value="T1;polygon;triangle;O,A,P;none;none;black;ffddee">
<param name="e[16]" value="c3;circle;radius;P,O;none;none;none;none">
<param name="e[17]" value="l2;line;chord;O,B',c3">
<param name="e[18]" value="B;point;last;l2">
<param name="e[19]" value="T2;polygon;triangle;O,P,B;none;none;black;ddffcc">
<!-- the circle of radius 3 -->
<param name="e[20]" value="l3;line;extend;O,A,O,A;none;none;none;none">
<param name="e[21]" value="l4;line;extend;l3,O,A;none;none;none;none">
<param name="e[22]" value="p2;point;last;l4;none;none">
<param name="e[23]" value="c4;circle;radius;A,O,p2;none;none;magenta;none">
<!-- the point G -->
<param name="e[24]" value="l5;line;chord;P,B,c4;none;none;none">
<param name="e[25]" value="G;point;first;l5">
<param name="e[26]" value="l6;line;connect;B,G;none;none;cyan">
<param name="e[27]" value="l7;line;connect;A,G">
<!-- the horizontal line -->
<param name="e[28]" value="l8;line;parallel;A,O,p1">
<param name="e[29]" value="L;point;last;l8">
<!-- angle markers -->
<param name="e[30]" value="p3;point;fixed;80,250;none;none">
<param name="e[31]" value="c5;circle;radius;O,p3;none;none;none;none">
<param name="e[32]" value="l9;line;chord;O,P,c5;none;none;none">
<param name="e[33]" value="p4;point;first;l9;none;none">
<param name="e[34]" value="s2;sector;sector;O,p3,p4;none;none;none;blue">
<param name="e[35]" value="p5;point;cutoff;l8,O,p3;none;none">
<param name="e[36]" value="c6;circle;radius;A,p5;none;none;none;none">
<param name="e[37]" value="l10;line;chord;A,G,c6;none;none;none">
<param name="e[38]" value="p6;point;first;l10;none;none">
<param name="e[39]" value="s3;sector;sector;A,p6,p5;none;none;none;red">
</applet>
</td></tr>
<tr><td>
<b>
Drag the point $X$.
Press &ldquo;r&rdquo; to reset the diagram to its initial state.<br>
If the blue angle is an approximate trisection of the angle $AOB$,
then the red angle is a much better trisection.<br>
Note that the red angle hardly changes as the point $X$ varies.
</b>
</td></tr></table>
<p>
The lines $L_1$ and $L_2$ intersect at the point $O$. Suppose that the
line $OX$ is a crude trisector of the angle between $L_1$ and $L_2$.
The rest of the diagram shows a
straightedge and compass construction
that produces a much finer trisection.
Here are the details of the construction:
<ol>
<li> Pick an arbitrary point $A$ (other than $O$) on the line $L_1$.
<li> Locate the point $P$ on the line $OX$ so that $AO = AP$.
<li> Locate the point $B$ on the line $L_2$ so that $PO = PB$.
<li> Draw a circle centered at $A$ and radius equal to three
times the length of $OA$. (This circle is shown in magenta.)
<li> Extend the line segment $PB$ to a intersect that circle at a point $G$.
(This extension is shown in cyan.)
<li> Draw a line $AL$ through $A$ and parallel to the line $L_2$.
</ol>
The angle $LAG$ is quite close to being one third of the angle $AOB$.
To see this, let us write $\alpha$, $\beta$, and $\beta'$ for
the measures (in the radian units)
of the angles $AOB$, $XOB$, and $LAG$, respectively.
Let $\beta = \frac13 \alpha + \delta$ and $\beta' = \frac13 \alpha + \delta'$.
Thus, $\delta$ and $\delta'$ measure the trisection errors corresponding to the
angles $\beta$ and $\beta'$.
<p>
A quite straightforward calculation, involving an application of the
<em>law of sines</em> in the triangle $APG$ leads to the equation:
\[
\delta' = \delta - \arcsin\Big(\frac13 \sin3\delta\Big).
\]
Expanding this into power series in $\delta$, we obtain:
\[
\delta' = \frac43 \delta^3 - \frac45 \delta^7 + O(\delta^9).
\]
This explains the notable efficiency of the refinement. For instance,
if the value of $\beta$ has two significant digits after the decimal point,
the value of $\beta'$ will have six significant digits after the decimal
point.
<p>
<i>Remark 1:</i> Move the point $X$ in the diagram and note
how insensitive the angle
$LAG$ is to the choice of $X$. This indicates that even a crude
initial approximation produces an excellent trisection.
<p>
<i>Remark 2:</i> If you examine closely Chris Alberts' trisection
described earlier in
this page, you will find buried in it two instances of <em>Alberts'
refinement</em>.
<h2>A final comment</h2>
<p>
Comparing the precision of the trisection described in this
page to those of others presented on my website may not
seem to be quite fair. After all, <em>any</em> approximate trisection may
be applied iteratively to refine its own result.
Nevertheless, I am making an exception in this case because in
Chris Alberts' trisection, the iterative refinement is an
inherent feature of the method.
<hr width="60%">
<p>
<em>This applet was created by
<a href="http://userpages.umbc.edu/~rostamia">Rouben Rostamian</a>
using
<a href="http://aleph0.clarku.edu/~djoyce/home.html">David Joyce</a>'s
<a href="http://aleph0.clarkU.edu/~djoyce/java/Geometry/Geometry.html">Geometry
Applet</a> on
March 23, 2011.
</em>
<p>
<table width="100%">
<tr>
<td valign="top">Go to <a href="index.html#trisections">list of trisections</a></td>
<td align="right" style="width:200px;">
<a href="http://validator.w3.org/check?uri=referer">
<img src="/~rostamia/images/valid-html401.png" class="noborder" width="88" height="31" alt="Valid HTML"></a>
<a href="http://jigsaw.w3.org/css-validator/check/referer">
<img src="/~rostamia/images/valid-css.png" class="noborder" width="88" height="31" alt="Valid CSS"></a>
</td></tr>
</table>
</body>
</html>