Start with an arc of a circle, like the red-to-red semicircle below. Then recursively subdivide it, at each step replacing a single arc of angle \(\theta\) by a piecewise-circular curve of five congruent arcs of angle \(\theta/3\). Keep in place the endpoints of the replaced arc and the tangent directions there. Make four of the five replacement arcs bend the same way as the arc they replaced, but bend the middle arc the opposite way.

Three levels of recursive construction of the five-arc fractal

The arcs get very flat as this construction progresses. I tried adding a fourth level to the drawing above and the inaccuracies of my drawing became bigger and more visible than the actual differences between the curves at the third and fourth level. (Maybe I should have written a script to draw it for me rather than trying to do it by hand.)

Any individual arc is replaced by sequences of arcs that remain within its convex hull, with four collinear new endpoints. Because both the diameters and aspect ratio of these convex hulls rapidly decrease for arcs at later levels of the construction, we get a well-defined curve as its limiting shape. I call it a fractal because it has a self-similar recursive construction like a fractal, but really it’s just a curve: its fractal dimension is one, not anything exotic.

Once we place an endpoint of an arc, at some level of the construction, all subsequent levels pass through the same point with the same tangent line. More, there is a unique tangent line at any point along the curve, and this tangent line varies continuously as you move along the curve. This is because, for any point on the curve and for any \(\varepsilon\), we can find a small enough neighborhood (the limit curve for an arc of turning angle less than \(\varepsilon\)) within which all tangents have angles bounded within \(\varepsilon\) of each other. The existence of a continuously varying tangent means that this is a \(C^1\) curve: it is continuously differentiable when expressed as a parameterized curve with its natural parameterization by arc length.

However, this curve does not contain any convex arcs. In the terminology of Cibulka, Kynčl, and Valtr, it is convex-arc-free. This is also easy to see: any arc of the curve contains some two consecutive endpoints at the same level of subdivision; call these \(p\) and \(q\) (for instance, these might be the two red points of the figure). Between \(p\) and \(q\) there are four endpoints from the next level; let \(p'\) and \(q'\) be the two middle of these four endpoints (the middlemost two yellow points). And in the same way let \(p''\) and \(q''\) be the two middle endpoints at the next level of subdivision between \(p'\) and \(q'\) (the middlemost two green points). But then \(p''\) and \(q''\) are interior to the convex hull of the four points \(p\), \(p'\), \(q'\), \(q\), an impossibility if these six points are to all lie on a convex arc.

Because it has no convex arcs, it also does not have a continuous second derivative: it is not \(C^2\)-smooth. If it were \(C^2\)-smooth, but not collinear, it would have a point of nonzero curvature, and within a small enough neighborhood of this point the curvature would keep the same sign. This neighborhood (or a small enough arc of it to have total turning angle at most \(\pi\)) would be a convex arc. Because no convex arc exists, the curvature and second derivative, if they exist anywhere, are not continuous. But having no convex arcs is stronger than not having a continuous second derivative: A stadium, formed by capping a rectangle by two semicircles, does not have a second derivative at the points where the semicircles meet the rectangle, but it is still convex.

The existence of a \(C^1\)-smooth curve with no convex arcs is related to my new preprint, “Stabbing faces by a convex curve”, arXiv:2508.17549 (to appear at Graph Drawing 2025). The main result of the paper is that for every \(C^1\)-smooth convex arc, and every planar graph, there is a straight-line drawing of the graph all of whose faces are crossed by the arc. It’s not necessarily a very nice drawing: this construction is intended more as a counterexample (in a line of research involving universal point sets) than as a useful way of drawing graphs. Here’s an example: the graph of an octahedron, drawn with all faces crossed by a semicircle.

The graph of an octahedron, drawn with all faces crossed by a semicircle

The proof in the preprint really only uses the continuity of tangent lines, rather than anything sophisticated from differential geometry, but I don’t think the graph drawing community and the differential geometry community have a lot in common. One reviewer appeared to think that the superscript digit in \(C^1\) was the marker to a missing footnote. But more relevant to this post is a comment of a second reviewer, suggesting that this drawing method extends to any smooth curve (without assuming convexity), by finding a convex arc within it. Well, no. The five-arc fractal meets the \(C^1\) smoothness assumption of my preprint but the preprint’s construction does not apply, because it has no convex arc. You could apply this construction with the stronger assumption of \(C^2\) smoothness, though. It seems plausible that the construction in my preprint can be extended to \(C^1\)-smooth curves that are not convex, but it would take more care and could not be done simply by finding convex arcs.

Presumably the existence of \(C^1\) curves without convex arcs has been long known. Many similar constructions of pathological curves were found already in the late 19th and early 20th centuries by Cantor, Minkowski, and the like. However, my attempts to guess search keywords that would find these past constructions were unsuccessful.

(Discuss on Mastodon)