Why have I done this? My original answer is further down the page.

Why have I really done this?

I love mathematics. It’s visually beautiful, conceptually beautiful and contains genuine truth. I started by wanting to see how simple the equations for classic curves could be. Then I wanted to draw them for myself, at which point I had a problem – just how do you draw something given by its implicit equation such as \(x^2+y^2=1\)? Also, what if your curve is given by the intersection of 3D solids (classic ancient Greek example being a plane cutting a cone to yield a circle, an ellipse, a parabola and a hyperbola) – how would we solve the multivariate non-linear equations to get the space curve of the intersection?

These questions have led me to the rational parametrizations of the curves and onto Grobner bases.


The easy way to draw something is to parametrize the equation with a value \(\theta\) and then for example say \(x=cos\left (\theta\right ),\ y=sin\left (\theta\right )\). Run through \(\theta\) over the range \(-\pi\) to \(\pi\) and you get an \(\left (x,y\right )\) coordinate for every point on what you might have remembered by now is a circle.

Well that’s one approach. But I don’t like it. I don’t like \(\pi\) or sine or cosine (trancsendentals). Or at least I don’t like the fact that almost any representation is just the nearest floating point approximation to the actual point on the curve.

So what if there was another parametrization? What if instead of going from nearly \(-\pi\) to nearly \(\pi\) in non-integer steps, we went from nearly \(-\infty\) to nearly \(\infty\) in integer steps?

With a rational parametrization we can. The cosine and sine of the circle’s transcendental parametrization are replaced by: \(x=\frac{2t}{1+t^2},y=\frac{1-t^2}{1+t^2}\). No approximations, just one integer over another. Proof.

Grobner Bases

Not a subject for an introduction, but trust me they’re fantastic.

Why have I done this? Original answer…

I watched Prof. Norman Wildberger’s Differential Geometry videos and was struck by the beauty of the Lemniscate of Bernoulli and the behaviour of its tangent conic. The Lagrangian approach to extracting the tangents is very elegant. While researching these curves I stumbled upon Prof. David Boyles’s article on the rational parametrization of curves. I had already done the lemniscates by hand, but foundered when I tackled the Besace. Boyles’s article enabled me to parametrize the Besace and almost through some sense of duty to them, I tried other classic curves.

I have created GeoGebra files for all these. The rational parametrization (via Boyles) and Lagrangian tangent lines and conics (via Wildberger) are within the algebraic view of the GeoGebra app.

I learned just enough of the Maxima computer algebra system to get the job done without losing my sanity through dropping a sign somewhere.

My “do everything” Maxima parametrization code.

My “do everything” Maxima tangent code.

The whole lot is over on GitHub.