# A plane algebraic curve with all four kinds of double points

During my study of plane algebraic curves, I got curious if there is a nontrivial example of a plane algebraic curve that has a node, a cusp (for my purposes I do not care which of the two kinds of cusps would the example exhibit), a tacnode, and an isolated point. By "nontrivial" I mean a curve that was not constructed as a chimera of two or more simpler curves, e.g. $(x-y)(x^2+y^2-1)=0$. Of course, it would be a quintic at the very least (i.e. the algebraic degree should be 5 at the minimum).

Apart from an explicit example, I would also be interested in a general procedure for constructing algebraic curves with a prescribed number and type of singular points.

After trying out Qiaochu's and T..'s suggestions, I have a follow-up question: does the problem become more difficult if the requirement that the curve be bounded (i.e. one can draw a circle such that the whole curve, including the isolated point, is within the circle) is imposed?

• +1 This is a nice question. And also, I'm still laughing at the chimera thing. – Adrián Barquero Oct 23 '10 at 14:36
• If you carried out Qiaochu's and T..'s constructions and found explicit expressions for the curves, could you post them here to satisfy the curiosity of the rest of us? :) – Rahul Oct 24 '10 at 1:00
• @Rahul: Well, I've been getting curves with unbounded branches with their prescriptions... I'm still tweaking things and looking for an aesthetically pleasing arrangement of the double points, but rest assured I'll post equations and plots when I see something I like. :) – J. M. is a poor mathematician Oct 24 '10 at 4:16
• : boundedness recipe now added. I think it could sharply escalate the degree of the polynomial if you want an implicit representation P(x,y)=0. – T.. Oct 25 '10 at 5:52
• Thanks T, I will try fixing my implementation with your suggestion. – J. M. is a poor mathematician Oct 25 '10 at 5:59

Here is the idea. Everything depends on what the defining polynomial $f(x, y) = 0$ looks like in local coordinates. To simplify things we'll take $f(x, y) = y^2 - p(x)$ where $p$ is some polynomial in $x$. Now, I claim that

• If $y^2 = x^2 + \text{higher terms}$ then there is a crunode at the origin,
• If $y^2 = x^3 + \text{higher terms}$ then there is a cusp at the origin,
• If $y^2 = x^4 + \text{higher terms}$ then there is a tacnode at the origin, and
• If $y^2 = -x^2 + \text{higher terms}$ then there is an acnode at the origin.

The key point is that in each of these cases we get something locally diffeomorphic to the same guy but without the higher-order terms. In other words, to get a bunch of double points with arbitrary behavior it suffices to pick a bunch of points $(x_i, 0)$ and place various conditions on the values of $p$ and its derivatives at $x_i$. In particular:

• If $p(0) = p'(0) = 0, p''(0) = 1$ then there is a crunode at $(0, 0)$.
• If $p(1) = p'(1) = p''(1) = 0, p^{(3)}(1) = 1$ then there is a cusp at $(1, 0)$.
• If $p(2) = p'(2) = p''(2) = p^{(3)}(2) = 0, p^{(4)}(2) = 1$ then there is a tacnode at $(2, 0)$.
• If $p(3) = p'(3) = 0, p''(3) = -1$ then there is an acnode at $(3, 0)$.

I claim that this kind of polynomial interpolation is always possible. In fact, it follows by the Chinese Remainder Theorem! The conditions are equivalent to

• $p(x) \equiv x^2 \bmod x^3$
• $p(x) \equiv (x-1)^3 \bmod (x-1)^4$
• $p(x) \equiv (x-2)^4 \bmod (x-2)^5$
• $p(x) \equiv -(x-3)^2 \bmod (x-3)^3.$

Of course this discussion generalizes. And it shouldn't be hard for you to convince yourself that you can choose $p$ to be a non-square.

Edit: And if you also want to be able to choose the $y$-coordinates arbitrarily, it suffices to replace $y^2$ by a polynomial $q(y)$ which is equal to $y^2 + \text{higher terms}$ in local coordinates at each of the points you're interested in, which can be done by the same method.

• Interesting... would you happen to have an explicitly constructed example using your method? – J. M. is a poor mathematician Oct 23 '10 at 16:01
• @J. M.: write p(x) = x^2 (x-1)^3 (x-2)^4 (x-2)^2 r(x). Then the conditions above become conditions on r(0), r(1), r(2), r(3) and you can interpolate a cubic r(x) that works. You should feel free to multiply things by positive constants to make the algebra easier; it's only the sign that matters in each of these conditions. – Qiaochu Yuan Oct 23 '10 at 16:11
• I shall be trying out your scheme tomorrow. Thank you for the cogent answer. – J. M. is a poor mathematician Oct 23 '10 at 16:19
• @T..: are you saying my construction doesn't work? If y^2 = -x^2 + O(x^3) then (0, 0) is a point on the curve and for any point in a sufficiently small neighborhood, y^2 \ge 0 and -x^2 + O(x^3) \le 0 with equality if and only if y = 0, x = 0. – Qiaochu Yuan Oct 23 '10 at 17:38
• You are right! Isolated points can be done by the same construction. I somehow though it was not the case because I was viewing isolated points as degenerations of compact components (ovals in the real locus, which are not quite local objects) as in y^2=(x-a)(x-b)(x-c) where b and c come together. Taking a=1,b=c=0 we get a rational curve with an isolated real point at 0, parametrized by (x,y)=((1+p^2),p(1+p^2)). This produces the factors I used in my answer as well as the local picture you just wrote down. So apparently the components are local after having turned into points. Thanks. – T.. Oct 23 '10 at 18:01

Everything but the isolated point is a local algebraic requirement that can be satisfied by one component of a rational curve parametrized by polynomials, $(x,y)=(f(z),g(z))$. For each singularity that requires $k$ segments of the curve to meet in specified ways, write down values of $f$ and $g$ and their first few derivatives at $k$ (or fewer) different values of $z$ that would provide the desired picture. So this part of the problem reduces to finding polynomial $f$ and $g$ whose coefficients satisfy some linear equations.

For example, to get two branches to meet we could require $f(1)=f(2)$ and $g(1)=g(2)$; to have the intersection be transversal (resp., a tangency) we need $(f'(1),g'(1))$ different from (resp., equal to) $(f'(2),g'(2))$ and higher tangency conditions can be expressed in the same form. You can actually draw the curve freely (but unicursally, not lifting the pencil) on paper to define what the pattern of intersections and cusps should be and then choose the values and derivatives at the intersection points to create that behavior in the parametrization. It can be arbitrarily complicated, such as a point where two branches meet to order $5$ while two other segments meet to order $6$ and are tangent to the first two branches to order $2$.

To add an isolated point at $(0,0)$, perform the above construction so that all singularities occur for $z \neq 0$ and the curve does not pass through 0, then replace the parametrization by $x = (1+z^2)f(z), \quad y= (1+z^2)g(z)$. The algebraic curve you want is the Zariski closure of the parametrized thing. This is the equation between $x$ and $y$ obtained by elimination of $z$.

To get a bounded locus, replace any rational parametrization $(A(t),B(t))$ by $(A,B)/(1+(PAB)^2)$ where $P$ is a polynomial vanishing to high order at all the singular points arranged for $A$ and $B$.

• Nice solution. I considered doing this but couldn't figure out how to get the isolated point. It might be good to say something about how to actually write down the Zariski closure in practice. – Qiaochu Yuan Oct 23 '10 at 19:27
• @Qiaochu: yes, getting the isolated point took me a while and several edits to do correctly (and it is still not clear to me exactly how introducing the 1+z^2 factor would show up the Zariski closure). I don't know how to do Zariski closure by hand other than elimination, which leads to big, though often sparse, determinants. "In practice" these days means computer algebra systems. There could be a good old-fashioned way for curves that I don't know -- maybe inferring the Newton polygon (since in this case we know the local behavior) and solving for coefficients. – T.. Oct 23 '10 at 20:07
• I believe this is the first time I've ever heard of Zariski closure. I'd look it up, but maybe a few quick words from you might be more illuminating? Still, I find it interesting that such a strategy might work for constructing an equation from something drawn by hand. Thanks for this. – J. M. is a poor mathematician Oct 23 '10 at 23:01
• Zariski closure (in this context) is what is called "implicitization" in computer algebra systems: find polynomial P(x,y) of lowest degree such that P(A(t),B(t))=0 for given polynomials A and B. That is, an implicit representation of the curve from the "explicit" parameterization. This is a built-in operation in most CAS. – T.. Oct 23 '10 at 23:40
• Oh. I guess I should say this is my first time learning that that operation has a more formal name. Thanks! – J. M. is a poor mathematician Oct 23 '10 at 23:45

I'm setting this answer community wiki so other people can attach their own examples of curves constructed with the methods in this thread.

Now, Qiaochu's suggestion for building a curve $q(y)=p(x)$ with collinear singular points on the horizontal axis amounts to the construction of an appropriate Hermite interpolation problem. More explicitly, one wants to find a polynomial (or rational function) whose first few derivatives at preset points vanish.

In Mathematica for instance, the function InterpolatingPolynomial can be used to generate a Hermite interpolant. (For systems that do not have such a function handy, the Hermite interpolation problem is solved through either an appropriate modification of the Newton divided differences scheme or by solving an associated confluent Vandermonde system.) The rational interpolant case is a bit tougher, and I am still experimenting with algorithms for the rational Hermite problem so I won't be considering them for now (but might include them in a later edit).

Thus, taking the conditions in Qiaochu's answer, here is how one builds a curve with a node at $(-1,0)$, a tacnode at $(0,0)$, and a cusp at $(1,0)$:

Expand[InterpolatingPolynomial[{{-1, {0, 0, 1}}, {0, {0, 0, 0, 0, 1}}, {1, {0, 0, 0, 1}}}, x]]


The result has fractional coefficients, but you can multiply with an appropriate factor so that all the coefficients are integers, resulting in the polynomial

$$3x^{11}+2x^{10}-15x^9+21x^7-6x^6-9x^5+4x^4$$

Here for instance is a plot of $$y^2=3x^{11}+2x^{10}-15x^9+21x^7-6x^6-9x^5+4x^4$$:

and a more complicated curve, $$y^2-y^3=(x^2+xy+y^2)(3x^{11}+2x^{10}-15x^9+21x^7-6x^6-9x^5+4x^4)$$:

I have yet to make the prescription for getting an isolated point to work, since the curves generated only manage to have separate branches passing through the desired point, but no isolated points at all.

As for T..'s suggestion, the Mathematica code I have requires some serious cleanup, so I shall be editing this answer later to include his parametric construction.

Currently I am trying to find a curve with four-fold symmetry that has four of each of the types of double points. If I manage to find it, I shall be naming it after Qiaochu and T.

• The isolated point recipe may need some correction, at least in my version. I won't have time to think about it until later. For bounded locus you could also start from a rational parametrization of the circle and use that to map to your curve. This has the advantage that N-fold symmetry becomes a Moebius transformation x --> (ax+b)/(cx+d) acting on the circle parameters (f(x),g(x)). So you could, "in principle", just produce one of each type of singularity and get the rest easily using symmetry. Or write the curve as P(x+iy,x-iy)=0 and let x+iy = (p+iq)^n to get an N-symmetric P(p,q)=0. – T.. Oct 25 '10 at 6:24