Next Article in Journal
Killing Vector Fields of Invariant Metrics
Previous Article in Journal
The Sum of the Solid Angles of an n-Simplex
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Discrete Schwarzian Derivative via Circle Packing

by
Kenneth Stephenson
Department of Mathematics, University of Tennessee, Knoxville, TN 37996, USA
Geometry 2025, 2(4), 16; https://doi.org/10.3390/geometry2040016
Submission received: 15 May 2025 / Revised: 20 June 2025 / Accepted: 15 August 2025 / Published: 9 October 2025

Abstract

There exists an extensive and fairly comprehensive discrete analytic function theory which is based on circle packing. This paper introduces a faithful discrete analogue of the classical Schwarzian derivative to this theory and develops its basic properties. The motivation comes from the current lack of circle packing algorithms in spherical geometry, and the discrete Schwarzian derivative may provide for new approaches. A companion localized notion called an intrinsic schwarzian is also investigated. The main concrete results of the paper are limited to circle packing flowers. A parameterization by intrinsic schwarzians is established, providing an essential packing criterion for flowers. The paper closes with the study of special classes of flowers that occur in the circle packing literature. As usual in circle packing, there are pleasant surprises at nearly every turn, so those not interested in circle packing theory may still enjoy the new and elementary geometry seen in these flowers.

1. Introduction

Classical complex analysis, and conformal geometry in general, have long benefited from a fundamental Möbius invariant known as the Schwarzian derivative. Recent decades have seen the emergence of a comprehensive discrete analytic function theory and associated discrete conformal geometry based on circle packing. This discrete theory displays deep and intimate connections to conformal geometry, so it is natural to ask whether it, too, could benefit from such an invariant. This paper establishes definitions for a discrete Schwarzian derivative and verifies fundamental properties that are largely faithful to the classical version. It also introduces a local Möbius invariant, an intrinsic schwarzian, and begins to lay out how these invariants might provide important tools in advancing the theory of circle packing.
Möbius or projective invariance is exemplified by quantities which remain unchanged after application of Möbius transformations. While the Riemann sphere P is the native habitat for Möbius actions, it is also far and away the most challenging for circle packing. Indeed, with a few exceptions, circle packings on P have been merely stereographic projections of the packings developed in the Euclidean or hyperbolic setting. These spherical difficulties account for perhaps the most glaring gap in discrete analytic function theory, namely our inability to create and manipulate discrete rational functions.
The circle packing community has exhausted most approaches to working in spherical geometry, with precious little to show for it. Perhaps discrete Schwarzian derivatives can provide the fresh perspective needed to move forward. The reader should not expect miracles, however. Although we do establish robust definitions and basic properties for a discrete Schwarzian derivative, taking our lead from pioneering work by Gerald Orick, and although we take the opening steps, there are no breakthrough theoretical tools here. On the other hand, in the experimental world available via circle packing, the discrete Schwarzian derivative and the associated intrinsic schwarzian open wholly new vistas for investigation. Concrete results here mostly deal with the fundamental unit within every circle packing, namely the circle packing ”flower”. As invariably happens in circle packing, both beautiful visualizations and beautiful formulas pop up around every corner. Whether or not the reader is involved in circle packing theory, there is much to appreciate in the surprising and pleasing elementary geometry we encounter. And we can always be alert for that breakout tool.
Here is a brief overview of the paper: We first provide necessary (but brief) background on circle packing, on the associated discrete analytic functions, on geometry and Möbius transformations, and on the central role that experiments play in this topic. In Section 2, we review the classical Schwarzian derivative and define a discrete version for mappings between circle packings. Moving beyond that direct analog, we extract a local version, an intrinsic schwarzian, attached to individual packings. A principal goal—a distant goal—is methods for recognizing, creating, and ultimately manipulating (intrinsic) schwarzians for packings. These schwarzians form edge labels analogous to the vertex (i.e., radius) labels which dominate the theory, but which largely fail on the sphere. Section 3 illustrates the as-of-yet-unfulfilled potential for schwarzians as a mechanism for laying out circle packings. The struggle to work with discrete meromorphic functions is our main motivation, but results could also apply to circle packings on projective surfaces.
We switch in Section 5 to the paper’s modest results from our opening skirmishes with schwarzians; namely, describing the schwarzians for flowers, the elemental circle packings. An n-flower consists of a central circle surrounded by a chain of n tangent “petal” circles. A flower is un-branched if the petals wrap once around the center and branched if they wrap two or more times. It is univalent if un-branched and the petals have mutually disjoint interiors. Using a mechanical layout process and the computations detailed in Appendix A.1 we work our way through the early cases n = 3 , 4 , 5 , and 6 to general flowers. We reach characterizations of un-branched (Theorem 2) and univalent (Theorem 3) flowers and criteria for branching.
We conclude the paper in Section 6 by applying what we have learned to several special classes of flowers. These cases will contribute only marginally to the larger campaign, but they raise our spirits with beautiful geometric, visual, and arithmetic features. And although much remains to be done, in the author’s view, the results for flowers alone are worth the effort.

2. Background

2.1. On Circle Packing

A circle packing is a configuration of circles satisfying a prescribed pattern of tangencies. Circle packings and their connections to conformal geometry were introduced by William Thurston in 1985 [1]. Circle packings exist in great profusion in Euclidean, hyperbolic, and spherical geometry, and more recently on surfaces with affine and projective structures [2,3]. The principal reference for this paper is [4].
The fundamental machinery is quite straightforward: The pattern of tangencies for a circle packing P is encoded in an abstract (simplicial) complex K, a triangulation of a topological surface. There is a circle C v P associated with each vertex v of K and each edge v , w of K indicates a required tangency between circles C v and C w . Note that every “circle” is associated with an interior, forming a topological disc. Two circles are (externally) tangent if they intersect in a single point and their interiors are mutually disjoint. Often, the key data associated with a packing is a radius label R, which contains a radius R ( v ) for the circle associate with vertex v K .
Some basic terminology will be useful in the sequel: The circles of a packing P occur in mutually tangent triples { C v , C w , C u } . The geodesics connecting the three centers pass through the three tangency points and form a geometric face. This is a geometric triangle associated with the abstract face  { v , w , u } of K. The surface formed by the geometric faces is called the carrier of P. The packing P is univalent if its circles have mutually disjoint interiors.
The packing P can also be viewed as a collection of interconnected flowers: a flower consists of a central circle C v and the chain of successively tangent petal circles, { C v 0 , , C v n 1 } , all tangent to C v . A flower is closed if C v n 1 is tangent to C v 0 , in which case v is an interior vertex of K, whereas a flower is open if and only if v is a boundary vertex. (To avoid pathologies, we require of K that every boundary vertex has at least one interior neighbor.) There are three classes of closed flowers: A univalent flower is one whose petals have mutually disjoint interiors. An un-branched flower is one whose petals wrap once around the center, possibly with overlaps between non-contiguous petals. Finally, a branched flower is one whose petals wrap more than once about the center and its degree d is the number of times it wraps.
A circle packing P is univalent if its circles have mutually disjoint interiors. It is necessary (but not sufficient) that the flowers for interior vertices are univalent. If an interior circle C v has a branched flower, then we say that P has a branch point at v.
The surprising richness of the topic is seen in the foundational existence and uniqueness result; namely the Koebe–Andreev–Thurston (KAT) Theorem, which states that, for any triangulation K of a topological sphere, there exists an associated univalent circle packing P K of the Riemann sphere P , and that P K is unique up to Möbius transformations (and inversions) of P . Thurston also proposed in [1] a clever algorithm for actually computing such packings, allowing us today to treat circle packing as a verb: to “circle pack” a complex K is to create and manipulate the associated circle packings.

2.2. On Discrete Analytic Functions

Intriguing as circle packings were in their own right, it was a conjecture in Thurston’s talk that really fired up the topic. An example in Figure 1 will set the stage. Let P be a univalent circle packing filling a simply connected region Ω of the plane, as on the right in the figure, and let K be the underlying complex. Thurston proved using KAT that there exists a univalent circle packing for K in the unit disc D whose boundary circles are all horocycles, as on the left in the figure. With two circle packings for the same complex, one may define F : P K P by identifying the corresponding circles. Essentially a mapping from the unit disc to Ω , F is roughly analogous to the classical Riemann Mapping.
It is the conjecture Thurston made about such discrete conformal mappings that kicked off the nearly 40 years of development efforts in circle packing. He suggested that, if one were to refine this construction—used circle packings P with ever more and smaller circles—that the resulting circle packing maps f would converge uniformly on a compact subset of D to the classical Riemann mapping from D onto Ω . Shortly thereafter, this was proven by B. Rodin and D. Sullivan [5] in the case of hexagonal circle packings. This result has subsequently been expanded to nearly full generality by many authors; see [4] for the story.
The packing P K has come to be called the maximal packing for K. The range of settings has vastly expanded, so the existence and uniqueness of appropriate maximal packings has been proven for essentially any complex K, whether finite, infinite, multiply connected, with or without boundary. A complex K may, of course, support other circle packings. When two packings, say Q and P, share K, then the mapping F : Q P is known as a discrete analytic function. As mentioned earlier, the mapping in Figure 1 is a discrete Riemann mapping. However, there are discrete analogues available for nearly all types of analytic functions, from entire functions to universal covering maps, and even branched functions. Moreover, the convergence of the discrete maps under refinement to their classical counterparts is established in nearly every circumstance. One can rightly think of this as “quantum” complex analysis—a discrete theory which not only mimics the classical, but also converges to it under refinement.
Missing, however, in the pantheon of discrete analytic functions is the potentially rich family of discrete meromorphic functions. There is no mystery in the appropriate definition on the sphere: If K triangulates a sphere and P is a circle packing for K on P , then the map F : P K P would be a discrete meromorphic function. Figure 2a is a non-trivial example that we will return to in the sequel. Discrete meromorphic functions can appear more generally as well: Figure 2b represents a discrete meromorphic function mapping a torus to the sphere.
Both these examples owe their existence to combinatorial symmetries. The first, a discrete analog of the classical meromorphic function z 3 ( 3 z 5 1 ) / ( z 5 + 3 ) , exploits dodecahedral symmetry and the special geometry of Schwarz triangles in P . There are 12 branched circles, and each has 5 petal circles wrapping twice around it; an isolated flower will be shown later when we revisit this example.
The sphere packing of Figure 2b, developed jointly with Edward Crane, is a discrete version of a Weierstrass function, mapping a torus to a 2-sheeted covering of P with four simple branch points (the colored circles). There is a special symmetry built into its complex K and the choice of branch vertices, though we have yet to understand fully why this symmetry ensures coherent circle packing in P .
Absent special symmetries, creating such non-univalent packings is out of reach, with inherent difficulties in spherical geometry compounded by the need for branch points. Methods for constructing packings of P , and more generally, packings on Riemann surfaces with projective structures, are the principal motivation for this work.

2.3. On Möbius Transformations

Spherical geometry refers here to the geometry of the Riemann sphere  P , also known as the complex projective line. We model P on the unit sphere centered at the origin in R 3 and endowed with a Riemannian metric of constant curvature 1. The Möbius transformations are the members of Aut ( P ) , the group of conformal automorphisms of P under composition. These are intimately connected with both spherical geometry and the geometry of circles. Here are essential facts to note: • An orientation preserving homeomorphism M of the sphere maps circles to circles if and only if M is a Möbius transformation. • In particular, if P is a circle packing in P , then M ( P ) is a circle packing in P . • If { C 1 , C 2 , C 3 } and { c 1 , c 2 , c 3 } are any two triples of mutually tangent circles, then there exists a unique Möbius transformation M so that M ( C j ) = c j , j = 1 , 2 , 3 . • The conformal automorphisms of the unit disc D and of the complex plane C , Aut ( D ) and Aut ( C ) , are subgroups of Aut ( P ) . • Aside from the identity I , Möbius transformations all have 1 or 2 fixed points and fall into one of three categories, parabolic, elliptic, or hyperbolic; the parabolic transformations are those with a single fixed point.
It is routine to represent a Möbius transformation M in complex arithmetric as a linear fractional transformation  M ( z ) = ( a z + b ) / ( c z + d ) , where a , b , c , d are complex coefficients with a d b c 0 . Computationally, we will work with these in the form of 2 × 2 complex matrices:
M ( z ) = ( a z + b ) / ( c z + d ) is represented by M = a b c d , with det ( M ) = a d b c 0 .
The composition of Möbius transformations is represented by normal matrix multiplication of their matrices, and the inverse of a transformation is represented by the inverse of its matrix. The matrix representation M may be multiplied by any non-zero complex scalar, so we will often normalize to ensure that a d b c = 1 . Furthermore, if M is parabolic, we can ensure that trace ( M ) = 2 .
Computations, visualizations, and experiments have been drivers of circle packing since the topic’s inception, principally due to the algorithm that Thurston introduced in their 1985 talk. The many refinements of their algorithm now allow the computation of impressively large and complicated complexes, some with millions of circles. These capabilities and connections to conformal geometry have in turn allowed significant applications of circle packing in mathematics [6], in brain imaging [7], physics [8], and engineering [9], not to mention art and architecture.
It is especially important to note the key role that open-ended experiments, visualizations, and serendipity play, even in the purely theoretical aspects of circle packing. The topics in this paper are just the latest examples. Experiments require a laboratory, and for the work here, that laboratory is the open source Java software package CirclePack, available on Github [10]. All images in this paper and the computations behind them are due to CirclePack. Moreover, scripts are available from the author to repeat and extend the experiments.

3. Classical, Discrete, and Intrinsic

The Schwarzian derivative was discovered by Lagrange and named after H. Schwarz by Cayley. It is a fundamental Möbius invariant in classical complex analysis, with important applications in topics from function theory, differential equations, and Teichmüler theory, among others. Suppose that ϕ : Ω Ω is an analytic function between domains Ω , Ω of the complex plane whose derivative ϕ does not vanish. The Schwarzian derivative  S ϕ is defined by
S ϕ ( z ) = ϕ ( z ) ϕ ( z ) 3 2 ( ϕ ( z ) ϕ ( z ) ) 2 .
There is also a useful pre-Schwarzian derivative  s ϕ :
s ϕ ( z ) = ( ln ( ϕ ( z ) ) ) = ϕ ( z ) ϕ ( z ) S ϕ ( z ) = s ϕ ( z ) 1 2 ( s ϕ ( z ) ) 2 .
The Schwarzian derivative is valuable because of its intimate association with Möbius transformations. By direct computation, if m ( z ) is a Möbius transformation, then S m 0 . The converse also holds: if S ϕ 0 in Ω , then ϕ is a Möbius transformation. In general terms; then, the Schwarzian derivative of a function indicates how far that function differs from being Möbius. Reinforcing this intuition is the fact that the Schwarzian derivative is invariant under post-composition with Möbius transformations: S m ϕ S ϕ . Moreover, for pre-composition, the chain rule gives
S ϕ m ( z ) = S ϕ ( m ( z ) ) · ( m ( z ) ) 2 .
These features motivate the development of our discrete Schwarzian derivative. This began with the work of Gerald Orick in his Ph.D. thesis [11]. He was searching for a discrete analogue of a classical univalence criterion due to Nehari. Suppose that ϕ is an analytic function on the unit disc D . If it were Möbius, then, of course, it would be univalent (i.e., injective). Nehari proved that if ϕ is close enough to being Möbius, in the sense | S ϕ ( z ) | 2 / ( 1 | z | 2 ) 2 , z D , then ϕ is univalent. Although the search for a discrete version of Nehari’s result continues, Orick laid the groundwork for our notion of Schwarzian derivative, thereby opening a rich vein of questions. (Discretized Schwarzian derivatives have appeared via cross-ratios for circle packings with regular square grid or hexagonal combinatorics (see [12] and [13], respectively) and in circle pattern literature (see [14], for example.)

3.1. Patches

In concert with the notion of a patch in defining classical conformal structures, a “patch” in a circle packing P will refer to the four circles forming a pair of contiguous faces. Our terminology will be used in both combinatorial and geometric senses. Thus, we will write p = { v , w | a , b } for the combinatorial patch formed by faces f = { v , w , a } and g = { w , v , b } in the complex K. We might also use the notation p = { f | g } . The common edge of the faces is e = { v , w } , and by convention is positively oriented with respect to the interior of f.
The circles of P impose a geometry on K, and the corresponding geometric patch in P is p = { C v , C w | C a , C b } forming faces f and g based on the triples { C v , C w , C a } and { C w , C v , C b } , respectively, and with common edge e = { C v , C w } .
Parallel to the classical setting we will also be working with a discrete analytic function F : P P mapping P to a second circle packing P sharing the complex K. For the patch p = { C v , C w | C a , C b } of P, we have the corresponding patch p = F ( p ) = { C v , C w | C a , C b } of P , and corresponding geodesic triangles f , g with the shared edge e of P .
The discrete Schwarzian derivative of F, denoted Σ F , will be a complex function defined on the collection of interior edges e = { v , w } of the domain packing P. More concretely, the value Σ F ( e ) will be associated with the tangency point t e of C v and C w .
Fix attention on a combinatorial patch p = { v , w | a , b } in K with faces f , g in P and f , g in P , and directed edge e. An example is depicted in Figure 3. There exist Möbius transformations m f and m g identifying the corresponding faces. We write
m f ( f ) = f and m g ( g ) = g .
(A brief note about these equalities: There is a unique Möbius transformation taking the tangent triple { C v , C w , C a } to the corresponding triple { C v , C w , C a } ; in practice, it is found by mapping the three tangency points of one to the corresponding tangency points of the other. In hyperbolic and Euclidean settings, these Möbius maps are homeomorphisms of the geodesic triangles formed by the centers of the triples. In spherical geometry, however, Möbius transformations do not necessarily preserve geodesics and circle centers, so the equalities of (4) are symbolic rather that literal.)
With m f and m g , we may now define M F ( e ) as the Möbius transformation
M F ( e ) = m g 1 m f .
Though we have adjusted the notation slightly, M F ( e ) is the (directed Möbius) edge derivative of Orick. The maps M F ( e ) have very particular forms observed by Orick. In particular, the definition of M F ( e ) shows that it fixes t e , the tangency point of C v and C w , and that it fixes C v and C w themselves as points sets. As a result, if M F ( e ) is not the identity, then it is necessarily a parabolic Möbius transformation. We are free to normalize so that trace ( M F ( e ) ) = 2 and det ( M F ( e ) ) = 1 . In this case,
M F ( e ) = I + σ · t e t e 2 1 t e .
Moreover, if η = e i θ is the common tangent to C v and C w at t e and is pointing outward from face f, then σ is a real multiple of its complex conjugate, η ¯ .
Definition 1. 
Let F : P P be a discrete analytic function. For each interior edge e of P, the value σ arising in the computation of M F ( e ) as described above is defined as the  (discrete) Schwarzian derivative  of F on the edge e and we write σ = Σ F ( e ) .
There are several properties to observe here:
  • Suppose that e denotes the edge e but with the opposite orientation. Then, M F ( e ) = ( M F ( e ) ) 1 , implying Σ F ( e ) = Σ F ( e ) .
  • Σ F ( e ) = 0 if and only if M F ( e ) is the identity.
  • If F itself were Möbius, then m f m g F and M F ( e ) = I for every interior edge e. Conversely, if M F ( e ) = I for every interior edge e, then a simple face-to-face continuation argument would show that F itself is Möbius, with m f F for every face f.
  • Suppose we follow F by a Möbius transformation m, say G m F : P P = m ( P ) . The new face Möbius maps for p are m ^ f : f m ( f ) = f and m ^ g : g m ( g ) = g . Since m ^ f = m m f and m ^ g = m m g , note that
    M G ( e ) = m ^ g 1 m ^ f = m g 1 m 1 m m f = M F ( e ) .
    The operator M is therefore Möbius invariant. In particular, this implies that the discrete Schwarzian derivative Σ F of a discrete analytic function F displays Möbius invariance like that of the Schwarzian derivative s ϕ of a classical analytic function ϕ .
  • Pre-composition with a Möbius transformation is a different matter. Computations in Appendix A.3 show that the discrete chain rule under pre-composition diverges slightly from the classical rule of (3); see (A10).
  • It is very likely that, if a sequence { F n } of discrete analytic functions converges on compacta to a classical analytic function ϕ , then the sequence { Σ F n } also converges on compacta to S ϕ . Results of Z–X. He and Oded Schramm in [13] can be used to confirm this for packings with hexagonal combinatorics, but it remains open for more general circle packings.

3.2. Intrinsic Schwarzians

The Schwarzian derivative is associated with mappings between circle packings. However, we can exploit the same notion in a local sense to provide an “intrinsic schwarzian” for each interior edge of an individual packing. For this we need only consider a target patch p (as occurs within a packing P, for instance) and a standard base patch  p Δ which we describe next.
The base patch p Δ consists of two contiguous equilateral triangles, f Δ and g Δ . Here, f Δ is formed by the tangent triple of circles of radius 3 , symmetric about the origin, and having distinguished edge e Δ running vertically through z = 1 . Note that the unit circle is the incircle of f Δ , that it intersects the edges of f Δ at their points of tangency, and that these are the third roots of unity. The tangency point for e Δ is t e = 1 and the outward unit vector is η = 1 . The face g Δ is an equilateral triangle contiguous along e Δ , so it shares the two circles of e Δ and its third circle is centered at x = 4 .
A target patch p is formed by two triples of circles sharing a pair of circles and has triangular faces we will denote by f and g. We do our computation for edge e Δ as usual, as though for the mapping F : p Δ p . That is, we compute the face Möbius transformations m f , m g , so m f ( f Δ ) = f and m g ( g Δ ) = g , and then Möbius M ( e Δ ) = m g 1 m f . Referring to (6), note that η = 1 , so σ has some real value s, and t e = 1 , implying
M ( e Δ ) = I + s · 1 1 1 1 = 1 + s s s 1 s = M s .
This matrix is important in the following, so we use the notation M s .
Definition 2. 
Given a geometric patch p , the ( 2 , 1 ) -entry (second row, first column) of the Möbius transformation M s described in (7) is a real value s and is defined as the  (intrinsic) schwarzian  for the shared edge e of p = { f | g } .
The intrinsic schwarzian s completely characterizes the target patch p up to Möbius transformations. In particular, it is unchanged if we interchange the labels f and g; it is unchanged if p is replaced by m ( p ) for a Möbius transformation m; and if p 1 and p 2 are two geometric patches with identical intrinsic schwarzians, then there exists a Möbius transformation m so that p 1 = m ( p 2 ) .
Computations in Appendix A.3 establish the connection between Schwarzian derivatives and intrinsic schwarzians. Given F : P P , consider a patch p P , its image patch p P , their edges e , e , respectively, and the Schwarzian derivative σ = Σ F ( e ) . Let s and s denote the intrinsic schwarzians for e and e , respectively. Let m be the Möbius transformation of the base face f Δ onto the face f of p . Computations in the Appendix A.3 show
s = s + Σ F ( e ) · m ( 1 ) = s + Σ F ( e ) ( c + d ) 2 , where m ( z ) = a z + b c z + d , a d b c = 1 .
As a side note, observe that Σ F ( e ) · m ( 1 ) is real.
We finish this subsection by illustrating schwarzians in relation to the base patch p Δ . This not only lets the reader gain some intuition, but also leads us to the computational machinery central to the remainder of this paper.
Our base patch p Δ appears in Figure 4 as the four light blue discs, with C b being the one on the right. Replacing C b with some new circle C ^ which is tangent to C v and C w forms a new patch. Each new patch leads to some schwarzian s for the edge e, so we will denote that new circle by C ^ s . Indeed, by our work above, we have C ^ s = M s 1 ( C b ) .     
To explore the various situations, consider these five specific values of s:
s 0 = 0 < s 1 = 1 1 / 3 2 < s 2 = 1 1 / 3 < s 4 = 1 + 1 / 3 2 < s 5 = 1
When s = s 0 = 0 , C ^ s is identical to C b . As s decreases through negative values, the corresponding circles C ^ s become smaller as they drop into the right crevasse between C v and C w , as shown with some blue examples in Figure 4. As s increases from s 0 to s 2 , the spherical radius of C ^ s increases, as shown by the red circles. Along the way, when s = s 1 then C ^ s is the line through , the vertical line tangent to C v on C w on their right. Reaching s = s 2 , the circle C ^ s is suddenly tangent to all three of the circles forming f Δ , but with in its interior. For s larger than s 2 , the spherical radius of C ^ s is decreasing, as shown with green examples. The C ^ s now overlap C a , and on reaching s 4 , C ^ s is the vertical line tangent to C v and C w on their left. As s grows beyond s 4 , the circles are moving more deeply into the left crevasse between C v and C w . Upon reaching s = s 5 , C ^ s is identical to C a . This is a critical juncture: the interstices for faces f and g are now reflections of one another through the unit circle. If we let s exceed s 5 = 1 , then these interstices overlap, a condition we will exclude in later work on branched flowers.
Now, move to the consideration of a generic patch p = { v , w | a , b } . Suppose the centers and radii for circles { c v , c w , c a } forming f and the intrinsic schwarzian for the edge e = { c v , c w } are known. Then, one can compute the unknown circle c b , and consequently fix the face g = { c w , c v , c b } . Here are the details:
There exists a Möbius transformation m f mapping f Δ to f. Therefore, m f 1 ( f ) = f Δ , and so the patch p ^ = m f 1 ( p ) will be analogous to those depicted in Figure 4. Because schwarzians are invariant under Möbius transformations, the schwarzian for p ^ will again be s, meaning that its circle m f 1 ( c b ) must be C ^ s . Noting that C ^ s = M s ( C b ) , the unknown circle c b of p is given by
c b = ( m f M s 1 ) ( C b ) where M s 1 = 1 s s s 1 + s ,
a fact we will use extensively in the sequel.

4. Packing Layouts

Construction of a circle packing for a given complex K typically starts (as Thurston did) with the computation of a packing label  R = { R ( v ) : v K } containing the circle radii. Then comes the layout process, the computation of the circle centers. This process utilizes a spanning tree T chosen from the dual graph of K. Any face f 0 of T may be designated as the root. Using the radii of its three vertices, one can lay out a tangent triple of circles forming the geometric face f 0 . For each dual edge { f , g } T , if face f is in place, then two of its circles are shared with g, and the radius of the remaining circle of g is enough to compute its unique position. Thus, starting with the geometric root face f 0 , one can proceed through T to lay out all remaining circles, resulting in the final packing P.
This process could instead be carried out using schwarzians, if they were available. Write S = { s ( e ) : e interior edge } for the (intrinsic) schwarzians of interior edges for some packing P. Starting with any (!) tangent triple of circles and identifying it as the base face f 0 , one can again progress through the edges { f , g } of the dual spanning tree T. If the face f is in place, then using a patch p = { f | g } and the schwarzian S ( e ) for its shared edge e, one can apply (9) to determine the radius and center of the third circle of g. Progressing thus through T yields a final packing P for K. Since the whole of P is determined by the initial geometric face f 0 , we can obtain any Möbius image m ( P ) by starting the layout with the appropriate base face.
There are some issues to address: Using the traditional layout approach via radii, the geometry of P must be that of the given label R. The layout approach via intrinsic schwarzians, on the other hand, is by its very nature carried out on the sphere. Indeed, whether the final packing P lives in the plane or the hyperbolic plane might well be dictated by the choice of the initial face f 0 . Perhaps this is the advantage of using schwarzians: one can lay out packings on the sphere or, more generally, on surfaces with projective structures.
I would also point out that when K is not simply connected, the layout process, whether with radii or schwarzians, is more subtle; laying out a closed chain of faces which is not null homotopic can lead to non-trivial holonomies, meaning the data is not associated with a circle packing. Let us therefore stick to simply connected complexes K for now.

The Difficulty

The difficulty in the schwarzian approach lies not with layout, but rather with the computation of the data itself. In introducing circle packing to the world, Thurston also graced us with an iterative algorithm for computing radius data. With radii in hand, one can easily lay out the circles to form P. However, their algorithm is restricted to the Euclidean and hyperbolic settings, and despite considerable effort, there is no known algorithm in spherical geometry. There are two key ingredients in Thurston’s clever algorithm:
  • Criteria: Given a label R of putative radii, one can directly compute the set { θ R ( v ) : v K } of associated angle sums at the vertices of K. R is a packing label if and only if θ R ( v ) is an integer multiple of 2 π for every interior v.
  • Monotonicities: There are simple monotonicities in the effects that adjustments in radius labels have on associated angle sums. In particular, a packing label is the zero set of a convex functional, guaranteeing the existence and uniqueness (and computability) of solutions.
It is the monotonicity that fails us in the spherical setting. Building new computational capabilities is the main motivation for looking at schwarzians. That is, we want to replace the data provided by a vertex label R = { R ( v ) : v K } with that of an intrinsic schwarzian edge label S = { S ( e ) : e K } .
Definition 3. 
Let K be a simply connected complex and let S be an edge label, that is, a set of real numbers, one for each interior edge of K. We call S a  packing (edge) label  if there exists a circle packing P on the Riemann sphere whose intrinsic schwarzians are given by S.
The main question: What are the packing labels? Based on experience with radius labels, and in particular, on results in [15], we anticipate that the packing labels will form a ( p 3 ) -dimensional differentiable subvariety S R k , where p and k are the numbers of interior vertices and interior edges of K, respectively. Describing S and more importantly, computing specific packing labels, appears to be very challenging. Our modest approach has been to set up mechanisms for experimentation and discovery. Observations from the experiments in CirclePack have led to the clunky but serviceable Theorems 2 and 3 below on packing labels for flowers. As for constructing packing labels for whole complexes, I am less sanguine. Even working with radii data, monotonicity may fail in our spherical setting, and without monotonicity, methods for generating and manipulating packing edge labels will require major new insights and numerical machinery. Edward Crane built an explicit example of a complex K triangulating the sphere with a designated set of its vertices as branch points which has two Möbius inequivalent realizations as circle packings of P . Non-uniqueness is a sobering feature when looking for an algorithm. Nonetheless, let us do what we can and begin by looking at individual flowers.

5. Flowers

The search for general packing criteria naturally begins with the study of packing labels for individual flowers. One can easily generate randomized n-flowers for any n, and thereby obtain a wealth of associated schwarzian labels. Our work, however, lies in the reverse direction: given a label { s 0 , s 2 , , s n 1 } , how can one tell if it is a packing label?
Here, we develop and exploit a general process for laying out flowers in a normalized setting. This has been implemented in CirclePack, and our investigations have relied on the flexible nature of its computations and visualizations. Our interest lies with closed flowers, and after preliminaries, we work in successive subsections on un-branched flowers, univalent flowers, and finally on branched flowers.

5.1. Notation and Preliminaries

In a tangency circle packing, the flower of the circle C = C v for an interior vertex is denoted { C ; c 0 , c 1 , , c n 1 } , where c 0 , , c n 1 is the chain of petals which wrap around C with the last tangent to the first. The ordered chain of interior edges emanating from v may be written as { e 0 , e 1 , , e n 1 } , where e j is the edge { C , c j } and hence is the shared edge in the patch p = { c j , C | c j 1 , c j + 1 } . We write { s 0 , s 1 , , s n 1 } for the corresponding intrinsic schwarzians, a packing label for this flower. (Note that the indexing for n-flowers is always modulo n.)
Putting the first triple of circles, { C , c n 1 , c 0 } , in place, one can then use schwarzians s 0 , s 1 , , s n 3 in succession to place c 1 , c 2 , , c n 2 and possibly complete the geometric flower. But is this a flower? Some conditions must be needed since this procedure did not even utilize the given schwarzians s n 2 or s n 1 . To be a packing label, the layout must avoid three potential incompatibilities:
(a)
The flower may fail to close; that is, c n 1 may fail to be tangent to c 0 .
(b)
The patch p n 1 = { c n 1 , C | c n 2 , c 0 } may fail to have schwarzian s n 1 .
(c)
The patch p 0 = { c 0 , C | c n 1 , c 1 } may fail to have schwarzian s 0 .
Since flowers and their schwarzians are unchanged under Möbius transformations, one can choose any convenient normalization. We have chosen that illustrated in Figure 5 (in this instance, a 7-flower). This approach sidesteps the numerical difficulties working with infinity. The notations of the figure are those we will use throughout the paper: the upper half plane represents the central circle C, the half plane { z = x + i y : y 2 } represents c 0 (so the tangency between C and c 0 lies at infinity), and the petal c 1 of radius 1 is tangent to C at t 1 = 0 . The successive petals { c 2 , , c n 1 } have tangency points { t 2 , , t n 1 } . The successive Euclidean radii will be denoted by { r 2 , r n 1 } , and successive displacements by δ j = t j + 1 t j .   
Figure 6 provides a sampler of normalized flowers. In Figure 6a, the non-contiguous petals c 3 and c 0 overlap. Figure 6b illustrates an “extraneous tangency”, as petals c j 1 and c j + 1 are tangent, even though they are not neighbors in the flower structure. Figure 6c illustrates a flower whose seven petals reach twice about C; necessarily, some of them overlapping one another. Note that Figure 5 and Figure 6d are univalent flowers, Figure 6a is non-univalent, but is un-branched, while Figure 6c is branched. Figure 6d illustrates an extremal situation among univalent flowers: petals c 2 , , c 5 all have extraneous tangencies with c 0 , yet the petals’ interiors are mutually disjoint. This illustrates the configuration among normalized univalent n-flowers with the greatest distance between the end petals c 1 and  c n 1 .

5.2. Flower Layouts

Given putative schwarzians { s 0 , s 1 , , s n 1 } for an n-flower, the associated flower can be laid out in normalized form using the following mechanical process, which relies on computations carried out in Appendix A.1.
(1)
We start with the half planes C and c 0 and the circle c 1 in their normalized positions.
(2)
With c 1 in place and given the schwarzian s 1 for its edge, the formulas of (A2) in Appendix A.1 yield the tangency point t 2 and radius r 2 of c 2 .
(3)
With c 1 and c 2 in place and given s 2 , we are in the “generic” Situation 3 of Appendix A.1, but in the special case where r = 1 . In particular, we can place c 3 by using (A3) to compute radius r 3 and displacement δ 2 , leading to tangency point t 3 .
(4)
Hereafter, we remain in the generic Situation 3, so we can place the remaining petals by inductively applying (A3) to compute radii r j and the displacements to determine the tangency points t j , j = 4 , , n 1 .
At this point, we would have the petals of the presumptive flower all in place. However, we can see concretely how the compatibility conditions mentioned earlier might fail:
(a)
If r n 1 1 , c n 1 fails to be tangent to c 0 —and the flower does not close up.
(b)
If t n 1 t n 2 2 / ( 3 ( 1 s n 1 ) ) after the final application of (A3) would mean that s n 1 is not the schwarzian for patch { c n 1 , C | c n 2 , c 0 } .
(c)
If t n 1 2 3 ( 1 s 0 ) then (A1) tells us that s 0 is not the schwarzian for patch { c 0 , C | c n 1 , c 1 } .
Therefore, our work, both theoretical and numerical, depends on a modification of this process:
Example 1. 
Treating the n 3 schwarzians s 1 , , s n 3 as parameters, we build the normalized flower as described above up to and including the layout of c n 2 . We then  force  closure by setting r n 1 = 1 and placing the last petal c n 1 tangent to c n 2 .
This Layout Process underlies all the work in this section. Once the construction has put all petals in place, one can directly compute the three remaining schwarzians s n 2 , s n 1 , and s 0 to fill out the full packing label { s 0 , , s n 1 } .
Theorem 1. 
Given schwarzians { s 1 , , s n 3 } , the  Layout Process  results in a legitimate n-flower except in the two following situations: (a) when c n 2 is tangent to C at infinity or (b) when the computed s 0 exceeds 1.
Proof. 
The first statement requires no proof, as the mechanics are straightforward. As for situation (a), in this case c n 2 is a half plane, meaning that placement of c n 1 simultaneously tangent to C , c n 2 , and c 0 is either impossible or ambiguous. Situation (b) violates a condition we placed on schwarzians; in this case, petal c n 1 ends up to the left of c 1 . For details on the exceptions, go to the closing paragraph of Appendix A.1.    □

5.3. Important Observations

In the pencil-and-paper computations leading to the formulas of the Appendix A (and the associated code in CirclePack), it became clear that a new parameter u = 1 s is preferrable to the schwarzian s itself. Instead of label { s 0 , , s n 1 } , we will interchangeably use { u 0 , , u n 1 } , though we continue to treat the s-variables as the proper labels. The author can offer no geometric significance for this new u-variable, but converting the s’s in our discussion of Figure 4 to u’s may help the reader develop some intuition. For the reasons discussed there, we limit our work to s ( , 1 ) , and thus u ( 0 , ) .
Also note that, although our normalization picks c 0 to be a half plane, any petal of a flower may be designated as c 0 as a simple matter of indexing. Furthermore, if the order of the petals in a flower is reversed, the result is still a flower and the order of schwarzians will have been reversed. These observations explain, respectively, the cyclic and the symmetric features in this lemma.
Lemma 1. 
Suppose that { s 0 , , s n 1 } is a packing (edge) label for an n-flower. If one shifts the order of the schwarzians cyclically or reverses the order, the result is again a packing label. This holds equally for the u-variables { u 0 , , u n 1 } .

5.4. Un-Branched Flowers

Our results are most complete in the case of un-branched n-flowers, where we work step by step starting with n = 3 . Examples for degrees n = 3 , 4 , 5 , and 6 are shown in Figure 7. These provide some visual clues to the patterns we will discuss below. Figure 7d is also cautionary, as it illustrates three Möbius equivalent normalized representations of the same 6-flower, differing only by which petal had been designated as c 0 .

5.4.1. 3-Flowers

There is only one 3-flower up to Möbius transformations. In particular, the three edge schwarzians share identical values. Note in Figure 4 that the value s = 1 1 / 3 leads to a 3-flower, namely that formed by C v , C a , and the associated C ^ s (enclosing ).
Lemma 2. 
The intrinsic schwarzian for any edge of a 3-flower is s = 1 1 / 3 , and hence, u = 1 / 3 .
This value of s may also occur in higher degree flowers in the case of extraneous tangency, as seen, for example, in Figure 6b, where the schwarzian s j takes this value. (It is worth noting that in circle packings, interior vertices of degree 3 are somewhat extraneous themselves: the associated circle is determined uniquely by its three neighboring circles and could be omitted without affecting the packing’s overall geometric structure. On the other hand, omitting such a circle does affect schwarzians, namely those of the outer three edges of its flower.)

5.4.2. 4-Flowers

Figure 8 shows a sequence of un-branched 4-flowers. Petals c 1 and c 3 have a radius of 1, so it is clear that the size of the shaded petal, c 2 , determines the entire normalized 4-flower. There is thus one degree of freedom. In (A2) of Appendix A.1, we see the radius of c 2 as a monotone function of s 1 , so we can use s 1 to parameterize all 4-flowers. (The curious case of a branched 4-flower will be displayed in Section 5.6.)
  • Apply (A2) to compute the tangency point and radius of c 2 :
    δ 1 = t 2 = 2 / ( 3 u 1 ) and r 2 = 1 / ( 3 u 1 ) 2 .
  • Apply (A4) with R = r 2 and r = 1 to compute u 2 = 2 / ( 3 u 1 ) .
Here, we initiate a pattern that we will carry forward for larger n: namely we define functions
U 4 ( x ) = 2 / ( 3 x ) , C 2 ( x ) = x ,
and note that u 2 = U 4 ( u 1 ) under the constraint that C 2 ( u 1 ) > 0 . Furthermore, as we will do for larger degrees, we can engage Lemma 1. With successive left shifts of the parameters we conclude that u 3 = U 4 ( u 2 ) and u 0 = U 4 ( u 3 ) , thereby completing the full packing label. In particular, note that u 1 = u 3 , u 0 = u 2 , and u 1 u 2 = 2 / 3 . We arrive at a very clean characterization of packing labels for 4-flowers:
Lemma 3. 
Every un-branched 4-flower has edge schwarzians of the form { s , s , s , s } where s and s satisfy ( 1 s ) ( 1 s ) = 2 / 3 (i.e., u u = 2 / 3 ). Moreover, the 4-flower is univalent if and only if s and s lie in the closed interval I = [ 1 2 3 , 1 1 3 ] (i.e., u , u [ 1 3 , 2 3 ] ).
Figure 8b–d are univalent 4-flowers, with (b) and (d) representing the extremes of the parameter values allowed for univalence. One should not be misled by this complete understanding of 4-flowers—things become increasingly more complicated as the degree goes up.

5.4.3. Five-Flowers

Our Layout Process tells us that we have 2 degrees of freedom, namely s 1 and s 2 . Figure 9 indicates the quantities we can compute as functions of these for a generic 5-flower.
Quantities resolve cumulatively as we add petals: with C , c 0 , and c 1 in place, we can apply the computation in the earlier 4-degree case to compute r 2 = 1 / ( 3 u 1 ) 2 . From there, successive computations from Appendix A.1 yield various radii and displacements:
  • Applying (A3) with u = u 2 , r = 1 , and R = r 2 :
    δ 2 = 2 3 u 1 ( 3 u 1 u 2 1 ) and r 3 = 1 ( 3 u 1 u 2 1 ) 2 .
Here, we encounter a constraint: if ( 3 u 1 u 2 1 ) < = 0 , then δ 2 will be negative or undefined. As we will see later, this can happen for branched flowers. For the un-branched case, we must impose the condition ( 3 u 1 u 2 1 ) > 0 .
  • Using radii r 3 from above and the mandated r 4 = 1 :
    δ 3 = 2 r 3 = 2 3 u 1 u 2 1 ,
  • Setting r = r 2 and R = r 3 in (A4) implies
    u 3 = u 1 + 1 / 3 3 u 1 u 2 1 .
Define the rational function U 5 and the polynomial C 3 as follows:
U 5 ( x 1 , x 2 ) = x 1 + 1 / 3 3 x 1 x 2 1 , C 3 ( x 1 , x 2 ) = 3 x 1 x 2 1 .
The computation of u 3 becomes simply u 3 = U 5 ( u 1 , u 2 ) under the constraint C 3 ( u 1 , u 2 ) > 0 . Applying the cyclic property of Lemma 1, we get in succession u 4 = U 5 ( u 2 , u 3 ) and u 0 = U 5 ( u 3 , u 4 ) .

5.4.4. 6-Flowers

We work through this one additional case because the full strength of Situation 3 and (A3) is first felt with the addition of the sixth petal. (Also because 6-flowers have always occupied a prominent place in circle packing: in the “curvature” language common in this topic, 6-flowers are “flat”.)
Six-flowers involve three degrees of freedom with parameters { s 1 , s 2 , s 3 } . We may extend the notations in the previous section and Figure 9 by adding one additional petal. The computations of t 2 and δ 2 and the constraint ( 3 u 1 u 2 1 ) > 0 are exactly as earlier. The computation for δ 3 , however, needs to be revisited.
  • Applying (A3) with r 2 and r 3 as computed earlier gives
    δ 3 = δ ( u 3 , r 2 , r 3 ) = 2 3 ( 3 u 1 u 2 1 ) ( 3 u 1 u 2 u 3 u 1 u 3 ) , r 4 = δ 3 2 4 r 3 = 1 3 ( 3 u 1 u 2 u 3 u 1 u 3 ) 2 .
Note that 1 / r 4 = 3 ( 3 u 1 u 2 u 3 u 1 u 3 ) if this is positive. Then, by completing the flower with petal c 5 of mandated radius 1, we can compute the next label:
  • Applying (A4) with r = r 3 and R = r 4 gives
    u 4 = u 1 u 2 ( 3 u 1 u 2 u 3 u 1 u 3 ) .
Define the rational function U 6 and polynomial C 4 :
U 6 ( x 1 , x 2 , x 3 ) = x 1 x 2 / ( 3 x 1 x 2 x 3 x 1 x 3 ) , C 4 ( x 1 , x 2 , x 3 ) = 3 ( 3 x 1 x 2 x 3 x 1 x 3 ) .
Thus, u 4 = U 6 ( u 1 , u 2 , u 3 ) under the assumptions C 3 ( u 1 , u 2 ) > 0 and C 4 ( u 1 , u 2 , u 3 ) > 0 . Cyclic shifts provide the remaining two labels:
u 5 = U 6 ( u 2 , u 3 , u 4 ) and u 0 = U 6 ( u 3 , u 4 , u 5 ) .

5.4.5. The General Case

In the n-flower case, we are starting with n 3 parameters { u 1 , , u n 3 } . A look at the various formulas from Appendix A.1 suggests focusing the on reciprocal roots of the radii. Here are the first few expressions. (We introduce a convenient notational devise that abbreviates a product of u’s via multiple subscripts, allowing us, for example, to write u 1 , 4 , 5 in place of the product u 1 u 4 u 5 .)
1 / r 2 = C 2 ( u 1 ) = 3 u 1 , 1 / r 3 = C 3 ( u 1 , u 2 ) = 3 u 1 , 2 1 , 1 / r 4 = C 4 ( u 1 , u 2 , u 3 ) = 3 ( 3 u 1 , 2 , 3 u 1 u 3 ) , 1 / r 5 = C 5 ( u 1 , , u 4 ) = 9 u 1 , 2 , 3 , 4 3 u 1 , 4 3 u 3 , 4 3 u 1 , 2 + 1 , 1 / r 6 = C 6 ( u 1 , , u 5 ) = 3 ( 9 u 1 , 2 , 3 , 4 , 5 3 u 1 , 4 , 5 3 u 3 , 4 , 5 3 u 1 , 2 , 5 3 u 1 , 2 , 3 + u 1 + u 3 + u 5 ) .
For a given j, the expression for 1 / r j is ensured only if C k ( u 1 , , u k 1 ) > 0 for k = 2 , , j , and only within n-flowers for which n ( j + 2 ) . Should C j be negative for some j, then the flower will be branched.
With these cautions in mind, the functional notations can become quite convenient. A label for an n-flower may be expressed as an n-vector p = ( u 0 , , u n 1 ) . We may now write C j ( u 1 , , u j 1 ) as C ( p ) , noting that C j uses only the j 1 coordinates 1 , 2 , , ( j 1 ) of p. Rewriting (A3) in functional notation, we have
C j + 1 ( p ) = 3 u j C j ( p ) C j 1 ( p ) , 3 j n 3 .
When our construction places the last petal, c n 1 , we compute u n 2 by applying (A4). In functional notation, this becomes
u n 2 = U n ( p ) = 1 + C n 3 ( p ) 3 C n 2 ( p ) , n 5 ,
where U n depends only on coordinates 1 , , ( n 3 ) of p. Here are several of these functions in explicit form:
u 2 = U 4 ( u 1 ) = 2 3 u 1 , u 3 = U 5 ( u 1 , u 2 ) = u 1 + 1 / 3 3 u 1 , 2 1 , u 4 = U 6 ( u 1 , u 2 , u 3 ) = u 1 , 2 3 u 1 , 2 , 3 u 1 u 3 , u 5 = U 7 ( u 1 , u 2 , u 3 , u 4 ) = 3 ( 3 u 1 , 2 , 3 u 1 u 3 ) + 1 / 3 3 ( 3 u 1 , 2 , 3 , 4 u 1 , 2 u 1 , 4 u 3 , 4 ) + 1 , u 6 = U 8 ( u 1 , u 2 , u 3 , u 4 , u 5 ) = 3 ( 3 u 1 , 2 , 3 , 4 u 1 , 2 u 1 , 4 u 3 , 4 ) + 2 3 ( 9 u 1 , 2 , 3 , 4 , 5 3 u 1 , 2 , 3 3 u 1 , 2 , 5 3 u 1 , 4 , 5 3 u 3 , 4 , 5 + u 1 + u 3 + u 5 ) .
We gather the results for un-branched flowers in this theorem. Also see the comments that follow.
Theorem 2. 
Given n > 3 , the parameters { u 1 , , u n 3 } are part of a packing label for an un-branched n-flower if and only if
C j ( u 1 , , u j 1 ) > 0 , j = 2 , , ( n 2 ) .
In this case, these expressions
u n 2 = U n ( u 1 , , u n 3 ) , u n 1 = U n ( u 2 , , u n 2 ) , u 0 = U n ( u 3 , , u n 1 ) ,
allow the computation of the three remaining labels.
This Theorem simultaneously provides a characterization, a parameterization, and a computational tool for un-branched flowers. Here are some observations:
(i)
The functions U n and C j are particularly valuable in light of Lemma 1. (Remember, these labels are cyclic mod ( n ) .) In a packing label { u 0 , , u n 1 } , any one of its entries u j may be written as u j = U n ( σ ) , where σ is the sequence of n 3 entries preceding u j (or the reverse of the n 3 entries following u j ).
(ii)
Additional relationships pertaining to the normalized flower may be extracted from the formulas of Appendix A.1. Here are some examples:
1 r j = 3 u j 1 r j 1 1 r j 2 , j = 3 , 4 , , n 1 .
u j = r j r j 1 + r j r j + 1 3 , j = 2 , , n 3 .
δ j = 2 r j r j + 1 , j = 1 , , n 2 .
(iii)
A careful look at the formulas for a normalized flower will show that the radii r j , reciprocal roots 1 / r j , and tangency points t j of the petals are all rational functions of the u-parameters (likewise for the s-parameters). Moreover, these rational functions have their coefficients in the number field Q [ 3 ] .
(iv)
The rational functions U n and polynomials C j also have coefficients in Q [ 3 ] . Note that, for each n, C n 2 ( u 1 , , u j 3 ) is a pole of U n ( u 1 , , u n 3 ) . On a practical note, unlike expressions such as (10), the functions U · and C · are independent of the flower normalization.
(v)
The functions U · have intriguing self-referential behavior under cyclic shifts and reversals, and this would seem to make them quite special. For example, these expressions show how the U n can be nested; here, u j , k denotes the sequence { u j , , u k } .
u n 2 = U n ( u 1 , n 3 ) u n 1 = U n ( u 2 , n 3 , U n ( u 1 , n 3 ) ) u 0 = U n ( u 3 , n 3 , U n ( u 1 , n 3 ) , U n ( u 2 , n 3 , U n ( u 1 , n 3 ) ) ) .
The explicit expressions would be quite messy, but would express the labels u n 2 , u n 1 , u 0 of (14) directly as functions of the parameters u 1 , , u n 3 .
We are now in a position to describe the parameter space for un-branched n-flowers using vectors p = ( u 0 , u 2 , , u n 1 ) in R + n . Define V n as the common solutions of the three rational expressions of (16). In particular, V n is an algebraic variety of the dimension n 3 over the number field Q [ 3 ] . There are restrictions, however, as p must reside in the set C where components u j are positive and the C j satisfy (13). The parameter space for un-branched n-flowers is thus F n = V n C R n .
The parameter space F n has some rather unique features. Each point p F n determines a unique flower (that is, unique up to Möbius transformations). On the other hand, each un-branched n-flower is associated with up to n distinct points p, since by Lemma 1, one can cyclically permute (the coordinates of) p. We have treated { u 1 , , u n 3 } as the independent variables, but in fact, any n 3 cyclically successive coordinates can take on this role. One might wonder about the description of C , defined in terms of inequalities depending on u 1 , , u n 3 : most of the individual inequalities in (13) would fail under the cyclic permutation of their arguments. However, if all of the inequalities hold, then p F n , and as a result, each of them individually holds under cyclic permutation. Likewise, reversing the coordinates of p F n gives a (generically distinct) point of F n .

5.5. Univalent Flowers

Among the un-branched flowers are the univalent flowers, those whose petals have mutually disjoint interiors. In the study of discrete analytic functions, univalent flowers are (along with branched flowers) the most important. Define the subset U n F n to consist of parameters associated with univalent n-flowers.
We develop two collections of inequalities which together characterize the points of U n . The inequalities of this first collection are very easy to check.
1 3 u j ( n 2 ) 3 , j = 0 , , n 1 .
The second collection (18) of inequalities depends on putting the flowers in their normalized setting, and checking these takes more work because a point p F n has n normalized layouts based (as always) on which petal is designated as “ c 0 ”. As a result, the indexing used in laying out a flower—the indexing occurring in various formulas—will generally disagree with the official indexing of the entries in the given p. We introduce a notational device to more efficiently state the inequalities. Notation: Use p k to indicate a cyclic permutation of p which shifts the original coordinate u k to become u 0 . Note that p U n if and only if p k U n for all k = 0 , , n 1 . In these inequalities, r j ( p ) denotes the radius of the jth petal circle in the normalized layout for p.
r j ( p k ) 1 , j = 2 , , n 2 and k = 0 , , n 1 .
Theorem 3. 
Given n > 3 , suppose that p represents an un-branched n-flower, so p F n . Then, p represents a univalent n-flower, p U n , if and only if p satisfies the inequalities of (17) and (18).
Proof. 
Necessity: Suppose that p U n . We observed in discussing Figure 4 that, if s > ( 1 1 3 , then C ^ s would overlap C a , contradicting univalence. This gives the lower bound of (17). The upper bound depends on n. Consider the tangency point t n 1 in the normalized flower. It is clear that the largest t n 1 could be for a univalent flower that occurs for “extremal” flowers like that illustrated (for n = 7 ) in Figure 6d. In this case, t n 1 = 2 ( n 2 ) . Since our flower is univalent, t n 1 2 ( n 2 ) . On the other hand, by (A1), 2 3 u 0 = t n 1 . We conclude that u 0 ( n 2 ) 3 . Lemma 1 tells us that any u j can be treated as u 0 , so u j n 2 3 .
We prove (18) by contradiction: suppose (18) fails for some k and 3 j n 1 . Then in the shifted indexing of p k , the petal circle c j , having radius greater than 1 would necessarily overlap the half plane c 0 , contradicting univalence. We have established the necessity of (17) and (18).
Sufficiency: Suppose the point p F n satisfies (17) and (18) but its flower is not univalent. That is, suppose there exists some pair c j , c k of petal circles that overlap, 0 j < k n 1 . Suppose first that there is a single petal between c j and c k , so k = j + 2 . In the normalized layout for the shifted point p j , the two end circles of the layout would overlap, implying by (A1) that 2 3 u j < 2 and hence u j < 1 / 3 , violating (17). On the other hand, if c j and c k are separated by at least two petals, then with the new indexing of p j , the petal c j becomes c 0 , and c k becomes a petal strictly between c 1 and c n 1 . Since that petal overlaps c 0 , its radius must exceed 1, contradicting (18). This completes the proof of sufficiency.    □
In practice, (17) is trivial to check, while (18) takes most of the work. Although the normalized flowers for shifts p k are all Möbius images of one another, one must still check (18) for each of the normalizations in turn. In a given normalization, one can use the quasi-recursive expression (15) along with the fact that r 0 = and r 1 = 1 to quickly see whether an instance of (18) is violated.

5.6. Branched Flowers

Now we address the more difficult setting of branched flowers, which are essential in the study of discrete analytic functions. Figure 10 and Figure 11 provide examples.
Figure 10 has three images of the same branched 8-flower under different Möbius transformations: one Euclidean, one normalized, and one on P . Flowers laid out using schwarzians can easily end up with petals enclosing , as on the right; visualization on the sphere is a slippery business.
Figure 11a illustrates a typical flower with branching of order two, with its eight petals (and eight faces) wrapping three times around C. Figure 11b, on the other hand, is a cautionary example: it displays a branched 4-flower. What constitutes a flower depends on context: Are extraneous tangencies allowed? Must the flower be able to live in a larger circle packing? Etc. The standard requirement is that a flower wrapping k times about its center will require n ( 2 k + 1 ) petals. This would hold if we required schwarzians s strictly less than 1 (i.e., u > 0 ). In light of Lemma 3, the 4-flower of Figure 11b is a limit: let u 0 so u = 2 / ( 3 u ) . The petals c 1 and c 3 are identical, as are c 2 and c 0 . This is not a situation that would occur in the practice of discrete function theory.
The adjustments in our machinery to accommodate branching are described in Situation 4 and Figure A4. Given n 3 parameters, we are still able to compute the remaining three to form a packing label. Indeed, we can still write u n 2 = U n ( u 1 , , u n 3 ) , but we must accept the function U n ( ) as representing an algorithm rather than an explicit formula.

6. Special Classes of Flowers

To illustrate what we have developed, we consider five distinguished families of flowers whose schwarzians can be computed explicitly. Examples are shown in their native environments in Figure 12. Once again, the author would point to the intriguing relations that emerge in these beautiful but elementary cases.

6.1. Uniform Flowers

There is a unique “uniform” univalent n-flower for each n. The model n-flower might be a Euclidean one whose n petals all share the same radius, as in Figure 12. These are a natural, unbiased starting point when first encountering flowers, and deviations from uniformity can be useful (even in computations; see the “uniform neighbor model” of [16]). Figure 13 illustrates several uniform flowers in our normalized form. Symmetry insures that all n schwarzians are identical and one can observe reflective symmetry in the layouts.
There is some regularity that your eye may pick up in Figure 13. Figure 14 explains that feeling: in every case all, n petals are tangent to a common circle, shaded in the figure. In the model Euclidean setting, this circle is the one circumscribing the flower. (Note, conversely, if such a circle tangent to all the petals exists, then the flower is uniform.)
The key question, is of course “What is the schwarzian for a uniform n-flower?”. We will label this value as s n . Three cases are already known: s 3 = 1 1 / 3 , s 4 = 1 2 / 3 (from Lemma 3), and s 6 = 0 . In Appendix A.2 we establish the closed form s n = 1 2 3 cos ( π / n ) . Here, is a sampling of values:
s 3 = 1 1 / 3 0.422650 s 4 = 1 2 / 3 0.183503 s 5 0.065828 s 6 = 0 s 9 0.085064 s 12 0.115355 s 20 0.140485 s 50 0.152422
The same computations work for branched uniform flowers, giving the more general formula in (A7), which will be used in Section 6.3.

6.2. Extremal Flowers

There is a unique “extremal” univalent n-flower for each n. Indeed, suppose one of the schwarzians s of a univalent n-flower equals the lower bound 1 ( n 2 ) / 3 . Designating that as the petal c 0 , (A1) implies that the normalization process can only lead to a flower like that of Figure 15a (for n = 7 ).
As can be seen in this normalization, extraneous tangencies allow c 1 and c n 1 to serve as the centers of 3-flowers, implying that their schwarzians s 1 , s n 1 both equal s 3 = 1 1 / 3 . Next, consider any of the remaining petals c j , j = 2 , , n 2 . First, c j acts as the center of a 3-flower if we include just one of its horizontal neighbors c j + 1 or c j 1 along with the two half planes. As part of this 3-flower, the horizontal edge to the neighbor has schwarzian 1 1 / 3 . Note at the same time that c j acts as the center of a 4-flower if you throw in both its horizontal neighbors. Knowing the horizontal schwarzians, we can apply Lemma 3 to compute the schwarzian 1 2 / 3 for the vertical edges. In particular, we have the following
Lemma 4. 
For every n 3 , there is a unique univalent extremal n-flower, and its set of schwarzians is given by
{ 3 1 3 , 3 2 3 , 3 2 3 , , 3 2 3 , 3 1 3 , ( n 2 ) 3 } .
Figure 15b shows an alternate normalization of the same extremal 7-flower, hence with a shifted list of the same schwarzians.

6.3. Soccerball Flowers

We next go into detail about the soccerball circle packings discussed in Section 2.2 and displayed there in Figure 2a. The highly symmetric nature of these packings allows us to calculate their intrinsic schwarzians explicitly—a rare opportunity.
The construction of the soccerball packings is described more fully in [4]. Briefly, the complex K has 42 vertices, 12 of degree 5 and the rest of degree 6. The packing P K on the left in Figure 2a is the maximal packing for K and is called the soccerball packing because its dual faces form the traditional soccer ball pattern, breaking the sphere into 5- and 6-sided polygonal regions. That on the right, P, is a branched packing for K, with simple branching at each of the degree 5 vertices. The mapping F : P K P is a key instance of a discrete rational function.
The ubiquitous symmetries within K, P K , and P allow one to establish these facts: (a) K has only two types of edges, those with ends of degrees 5 and 6 and those whose ends are both degree 6. (b) In each of P K and P, all circles of degree 5 share one radius, while all of degree 6 share another. (c) These facts imply that in each of P K and P, there are only two intrinsic schwarzians: s for edges of degree 5 flowers and s between degree 6 circles. (d) And finally, it follows that the degree 5 flowers are uniform while the degree-6 schwarzians take the alternating pattern { s , s , s , s , s , s }
Working in P K first, (d) above and (A6) imply that u = 1 s = 2 3 cos ( π / 5 ) . It remains to compute u = 1 s . However, it turns out we can work more generally. Consider any univalent degree 6 flower whose label has the alternating form { u , u , u , u , u , u } . Examples are shown in Figure 16.
Applying U 6 and some simplification, we have
u = U 6 ( u , u , u ) u = u u 3 u u u u u u u = 1 .
Surprise: u u = 1 . In our particular case, we conclude for P K that
s = 1 2 3 cos ( π / 5 ) 0.065828 s = 1 3 2 sec ( π / 5 ) 0.070466 .
Another feature of these special degree 6 flowers might catch your eye in Figure 16a–c: one can show that, for any s s 3 , a normalized flower with label { s , s , s , s , s , s } will lead to circle c 4 having a radius of r 4 = 1 / 4 . The flower in Figure 16d shows that this fails for non-univalent cases: when s > s 3 , c 3 and c 5 overlap. (Incidentally, when s is precisely equal to s 3 , c 3 and c 5 are tangent and the value 1/4 for c 4 comes directly from the Descartes Circle Theorem.)
We turn now to the branched packing P on the right in Figure 2a. Each of the 12 degree flowers is branched, so the Riemann–Hurwitz relations imply that P is a seven-sheeted covering of the sphere. The packing is very difficult to interpret: the degree 5 circles are smaller now, but the degree 6 are quite huge—nearly hemispheres. This and the seven sheetedness make individual degree 6 circles very hard to distinguish in Figure 2a, so an isolated 5-flower is shown in Figure 12. Many facts about P K persist in P: as before, there are just two schwarzians, s , s ; the degree 5 vertices have uniform flowers; and s , s alternate in the degree 6 flowers. The normalized layout for one of these 6-flowers is shown in Figure 16d.
We can now compute u = 1 s using the general expression (A7) from the Appendix A.2. A simple branched 5-flower wraps twice around its central circle; this means for a uniform flower that each face subtends an angle θ = 4 π / 5 , implying that α = θ / 2 = 2 π / 5 . Using (A7) and then (19), we conclude for P in Figure 2a,
s = 1 2 3 cos ( 2 π / 5 ) 0.643178 s = 1 3 2 sec ( 2 π / 5 ) 1.802517 .
As a final comment, we observe that, for this very special complex K, our analysis extends to other pairs of schwarzians s , s satisfying (19), meaning such that ( 1 s ) ( 1 s ) = 1 . One obtains a family of projective circle packings P s which live on coned spheres. I am not prepared to address the range of possible values—an interesting question in itself—but one can choose s to interpolate between (20) and (21) and certainly to extend beyond that range. For each appropriate s, the process described in Section 4, starting with an arbitrary mutually tangent triple of circles for some base face and then using the schwarzians to lay out the remaining circles, generates a circle packing P s . Only when s takes its value from (20) or (21) (i.e., P s = P K or P s = P , respectively) is P s a traditional circle packing on the Riemann sphere P . In all other cases, the face-by-face construction produces a topological sphere P s with spherical geometry, save for the 12 points associated with degree 5 vertices. These are clearly 12 cone points. The symmetry group of K is the dodecahedral group, so there exists a Möbius transformation P s making the singularities indistinguishable, that is, they all share a common cone angle γ . To illustrate, if s = 0.321284 , then CirclePack tells us that γ = 3 π . It is left to the curious reader to work out the precise relationship between s and γ .
Incidentally, imposing symmetry was necessary here since cone angles are subject to change under Möbius transformations. Irrespective of the construction of P s (i.e., of the initial face f 0 ), the traditional angle sums θ v at all vertices of degree 6 will be 2 π . However, the angle sums at the degree 5 vertices may no longer share a common value. The only exceptions are our two special cases: when s takes the value in (20) or (21), then the degree 5 vertices have angle sums γ = 2 π or 4 π , respectively, regardless of the choices of f 0 in the construction. I personally find this curious—this persistence of angle sums when they are multiples of 2 π is nearly a packing criterion.

6.4. Doyle Flowers

An early and fascinating chapter in the story of circle packing involves a pattern for hex (degree 6) flowers observed by Peter Doyle. We investigate this two-parameter family of flowers here, but the interested reader can discover the beauty of the “Doyle spirals” that they lead to in [17]. In addition to providing an obvious instance of a discrete exponential function, these spirals raised the oldest question from the foundational period that remains open, as posed by Peter Doyle: Do there exist any circle packings of the plane in which every circle has degree 6 other than the familiar “penny packing”, in which all circles share a common radius, and the (coherent) Doyle spirals?
The Doyle flowers involve two radius parameters, a and b. If the center C has a radius of 1, then the petal radii take the form
{ a , b , b / a , 1 / a , 1 / b , a / b } , a , b > 0 .
Remarkably, regardless of a and b, this pattern of radii will always form a 6-flower around C. More significant in the search for schwarzians is the fact that the six triangular faces of that flower fall into three similarity classes. For each j = 1 , , 6 , let e j be an edge, f j and g j be the neighboring faces, and p j the patch formed by their union. For each j = 1 , 2 , 3 , one can check that there is a similarity Λ : p j p j + 3 with Λ ( e j ) = e j + 3 . As a consequence, the sequence of schwarzians takes the form
{ s 1 , s 2 , s 3 , s 1 , s 2 , s 3 } .
View this pattern in light of what we know about general 6-flowers: namely that u 1 = U 6 ( u 1 , u 2 , u 3 ) ; solving for u 3 gives
u 3 = u 1 + u 2 3 u 1 u 2 1 .
In other words, using u 1 , u 2 , we have a new 2-parameter representation of the Doyle flowers in the space F 6 .
It would be interesting to find the relationship between parameters a , b and u 1 , u 2 (or s 1 , s 2 ). However, there are more challenging questions that the reader might like to take on. First, sticking with the Doyle setting for a moment, note that the pattern of a single Doyle flower propagates to an infinite spiral, all of whose flowers share the identical set of schwarzians. The combinatorics underlying all Doyle spirals is that of the hexagonal lattice H, easily recognized as the planar lattice behind the penny packing. Within H are three families of parallel axes. What the results above show is that, for a given Doyle spiral, all edges within one of these families share the same schwarzian.
The challenge now is to conceive of other conditions on schwarzians analogous to those of (24). What patterns, what families of flowers, might emerge? In addition, are there patterns for flowers that automatically propagate to larger, perhaps infinite, configurations of circles? Examples might contribute to discrete function theory as Doyle spirals have contributed discrete exponential functions.

6.5. Ring Lemma Flowers

In circle packing, the well-known and important “Ring Lemma” provides a lower bound c ( n ) for the ratio r / R of petal radii r to the center’s radius R in any univalent Euclidean n-flower. First introduced in [5], the extremal situations and sharp constants were obtained in [18] and were shown to be reciprocal integers in [19]. Of course, we are focused on schwarzians not radii, so we work in our normalized setting. Figure 17 suggests how the extremal normalized flowers develop in a nested fashion, with the extremal n + 1 -flower being obtained from the extremal n-flower by adding the largest possible circle to its smallest interstice. Continuing this ad infinitum, we arrive at what we might term an -flower.
At any stage in this development, the current flower is rife with extraneous tangencies. Indeed, at a given stage, we have an n-flower whose smallest interstice is formed by C and its two smallest petals. When we plug the new petal into that interstice to form an n + 1 -flower, the tangency between those two petals becomes extraneous.
The packing’s features allow us to compute precise schwarzians. Figure 18 focuses in on the interstice where a new petal, the blue one, is being added. The red and green are the smallest previous petals. Reindexing to accommodate the new petal, we assume that the green circle is c j 1 , the red is c j + 1 , and the new blue is c j . There are extraneous tangencies, but nonetheless, functionally, c j + 1 is degree 4, c j 1 is degree 5, and of course c j is degree 3. (In alternating stages, the green would be on the right and the red on the left.)  
Our local goal is the schwarzians s j 1 , s j , and s j + 1 for the vertical edges e j 1 , e j , and e j + 1 , though we need the schwarzians for the edges e r , e g , e x along the way. We will work in the u-variables.
The blue petal, c j , is degree 3, so Lemma 2 gives u j = u r = u g = 1 / 3 . The red petal, c j + 1 , is degree 4 and has edges e r and e x . Lemma 3 implies that u r u x = 2 / 3 , so knowing that u r = 1 / 3 , we conclude that u x = 2 / 3 . Finally, note that the green petal, c j 1 , has degree 5 and successive edges u x , u g , u j 1 . Knowing u x and u g implies u j 1 = U 5 ( u x , u g ) = 3 . Summarizing for the target schwarzians, we conclude
s j 1 = 1 3 0.732051 , s j = 1 1 / 3 0.422650 , s j + 1 = 1 2 / 3 0.154701 .
So, what do we conclude about the schwarzians of a full flower? Observe that, when a new petal is added in our construction, it converts its smaller neighbor, degree 3, in the previous step, to degree 4, while it converts its larger neighbor to degree 5. That larger neighbor, c j 1 in Figure 18, remains unchanged thereafter, so its schwarzian remains at 1 3 . On the other hand, the schwarzian for the smaller neighbor, c j + 1 , is only temporary, as it will change with the next added petal. So, here is the typical sequence for a Ring Lemma n-flower, stated in the alternate u · -variables:
{ 3 , , 3 , 1 3 , 2 3 , 3 , , 3 , 1 3 } .
With every increase in n, the 2 / 3 will convert to 3 , the 1 / 3 will convert to 2 / 3 , and a new 1 / 3 will be inserted between them.
Past experience with the Ring Lemma suggests that one should not leave these flowers without looking around for interesting numerical features. In [19] and [20], the Fibonacci sequence, the Descartes Circle Theorem, and the golden ratio all play significant roles. In our normalized setting, we can add Farey numbers to that list.
So, let us look around! As visually suggested in Figure 18, the local picture around a new petal has a static asymptotic limit. We have seen that u j = 1 s j = 1 / 3 , so applying (15) and adjusting the indexing, we see this recurrence relation among the radii:
1 r j + 1 = 1 r j + 1 r j 1 .
This is a generalized Fibonacci pattern and is precisely the recurrence observed in ([20], §4). There, one can conclude that
r r ( 1 + 5 2 ) 2 = τ 2 ,
where r is the radius of a new petal, r is the radius of the previous new petal, and τ is the famous Golden Ratio.
How do Farey numbers enter the picture? Caution: for this discussion, we must scale our normalized Ring Lemma flowers by 1/2. Thus, the tangency points t j and radii r j are now scaled by 1/2, putting all the tangency points in [ 0 , 1 ] .
One can deduce from the Descartes Circle Theorem that, if a circle is placed in the interstice of three mutually tangent circles whose bends (reciprocal radii in the terminology of F. Soddy [21]) are integers, then that circle’s bend will also be an integer. In our construction, we continually put new circles in interstices. One can prove inductively that all radii (after our scaling by 1/2) are reciprocal integers. From this, one can conclude that all the tangency points t j are rational numbers. Indeed, these all fall into what is known as the “Farey sequence” in [ 0 , 1 ] and are subject to the counterintuitive Farey arithmetic. Consider a tangency t j for a new circle in our construction, between the tangency points t and t for the previous two new circles. We may write t = a / b and t = a / b as rational numbers in the lowest terms. From the Descartes Circle Theorem, one can show that
t j = a + a b + b .
To see the overall pattern of (rescaled) tangency points, we will redefine the indexing as a sequence { t j } . Here, t 0 = 0 , t 1 = 1 , and thereafter, let t j denote the tangency point of the next new petal added, so t j always falls between t j 1 and t j + 1 . (This indexing is not that used for individual n-flowers.) Now write t 0 = 0 / 1 and t 1 = 1 / 1 and then repeatedly apply (26). (There is one choice involved; after t 2 = 1 / 2 in Figure 17, we chose t 3 = 2 3 rather than t 3 = 1 3 .) Here, then, are the first few values
{ 0 1 , 1 1 , 1 2 , 2 3 , 3 5 , 5 8 , 8 13 , 13 21 , 21 34 } .
As one can see, t j = F j / F j + 1 , where F j is the jth Fibonacci number. It is well known that this ratio converges to 1 / τ . In other words, the new petals in the infinite flower suggested by Figure 17 converge to the point t = 2 / τ . Are not circles grand!

7. Conclusions

This paper has introduced a discrete analogue of the classical schwarzian derivative, primarily with the goal of manipulating circle packings in spherical geometry. That goal is not yet within reach, but the first steps have been taken. Using intrinsic schwarzians, this paper has characterized packing edge labels for flowers, which are the basic building blocks of every circle packing. How this fits into the broader enterprise, the task of computing the packing edge labels S for general complexes K, remains to be seen. In Section The Difficulty, “criteria” and “monotonicities” were identified as valuable ingredients. Our work with flowers provides cumbersome but easily computable criteria: we can check whether a set S of intrinsic schwarzians for K is a packing edge label. The outlook for monotonicities within schwarzian labels, however, remains quite cloudy. An adjustment of the label for one edge typically affects two flowers. Generating an adjustment that is favorable in moving toward a packing label is the challenge. The author is currently experimenting with maximal packings P K for topological spheres K, since the correct labels S are already known. Starting with a random label and then repeatedly fixing the labels for randomly chosen flowers, one hopes to see how the adjustment of schwarzians reverberate through the network and how they can be driven toward S. What we learn might then be applied to cases with branching as well. It would help if there were some Möbius invariant quantity that one could maximize or minimize. Even then, since the criteria for branching do not involve explicit expressions, classical tools such as differentials may not be available. These difficulties are unfortunate, as branched packings are our primary targets.
In conclusion, although branched packings are handled quite routinely in the disc or the plane, where the controlling parameters are radii and angle sums, the sphere is a tougher environment. Whether there is some way to deploy the properties we have developed for flowers to the computational hurdles with larger packings remains the key open question.

Funding

This research received no external funding.

Data Availability Statement

No new data were created or analyzed in this study. Data sharing is not applicable to this article.

Conflicts of Interest

The author declares no conflicts of interest.

Appendix A

Here, we detail various computations with intrinsic schwarzians. We start with four situations underlying our construction of normalized flowers from given schwarzians. Next, we compute the schwarzians for uniform flowers. Finally we work out the relationship between a discrete Schwarzian derivative and the intrinsic schwarzians of domain and range.

Appendix A.1. Layout Computations

We work with flowers in their normalized positions; see Figure 5 for the notation. Note that C and c 0 are tangent at infinity, so the imaginary axis represents the edge e 0 between them, associated with schwarzian s 0 .
In computing the remaining petals, we encounter three situations, and possibly a fourth if there is branching. In each there is an edge e of interest connecting the upper half plane to a petal circle (the shaded one) whose position has already been established. There is also an “initial” neighboring petal (green) which is also in place. Our task is to find data for the companion “target” petal (red), that which is opposite to the initial petal across edge e. The shaded face f is that formed by the central circle, the shaded circle, and the initial circle. We are given the initial data for the two petals in place and the schwarzian s for e and show the computations of data for the target circle; in particular, we compute its tangency point t and its radius r. The formulas we arrive at are easier to work with if we introduce u = 1 s as an alternative to the variable s itself. Situations 1–3 are illustrated as they would appear in un-branched flowers. The computations, however, are fully general, as we discuss in Situation 4.
Situation 1. We begin with the edge e = e 0 , connecting the two half planes as illustrated in Figure A1. The petal c 0 (a half plane) and the initial petal c 1 are in place as part of our normalization. The target is the clockwise neighbor of c 0 , namely the petal c n 1 . Being tangent to both half planes, its radius is r n 1 = 1 and we need only compute its tangency point t n 1 from the schwarzian s 0 .
Let s = s 0 . The computations involve the Möbius transformation M s (see (7)) and the Möbius m f mapping the points { 1 , ω , ω 2 } to { , 2 i , 0 } , and hence mapping C v to the upper half plane.
m f M s 1 = 2 i 3 + i 1 / 2 + 3 / 2 i 1 / 2 3 / 2 i 1 s s s 1 + s = 3 s + ( 2 3 s ) i 3 ( 1 + s ) + ( 3 s + 1 ) i 1 / 2 + 3 / 2 i 1 / 2 3 / 2 i
Applying this transformation to C b gives the normalized petal c n 1 . In particular, applying it to the tangency point ( 5 3 i ) / 2 in the base patch p Δ yields the normalized tangency point t n 1 , expressed using u 0 = 1 s 0 :
t n 1 = 2 3 u 0 and r n 1 = 1 .
Figure A1. Situation 1: layout the red circle.
Figure A1. Situation 1: layout the red circle.
Geometry 02 00016 g0a1
Situation 2. We move now to the edge e = e 1 with the target being c 2 . The relevant schwarzian is s = s 1 and the initial petal is the half plane c 0 , green in Figure A2.  
Figure A2. Situation 2: layout the red circle.
Figure A2. Situation 2: layout the red circle.
Geometry 02 00016 g0a2
We proceed by modifying the previous argument. The shaded face f is the same, but the Möbius m f must now map { 1 , ω , ω 2 } to { 0 , , 2 i } . We accomplish this by pre-composing the earlier m f with a rotation by ω 2 . The result is
m f M s 1 = 3 i 3 + i 1 1 2 3 2 i 1 s s s 1 + s = 3 i 3 + i 1 3 s / 2 + ( 3 s / 2 ) i ( 1 + 3 s ) / 2 ( 3 ( 1 + s ) / 2 ) i
Applying this transformation to C b gives the normalized petal c 1 . Note that m f now maps C w to the upper half plane, so applying the above Möbius to the tangency point ( 5 + 3 i ) / 2 in the base patch yields the displacement to the normalized tangency point t 2 ; simple geometric computations give the radius. We use the variable u 1 = 1 s 1 .
t 2 = 2 / ( 3 u 1 ) and r 2 = ( t 2 ) 2 / 4 = 1 / ( 3 u 1 ) 2 .
Situation 3. We are left to treat the generic situation suggested by Figure A3. The edge e goes from the central circle C to the shaded circle, with its schwarzian s and variable u = 1 s . (Note that the half plane for c 0 is no longer necessarily involved.) We assume that the shaded circle has a radius R, while the initial green circle has radius r. It is convenient to position the shaded circle tangent to C at the origin, and then our goal is to compute the tangency point δ (the displacement from 0) and the radius ρ of the red target circle.
Figure A3. Situation 3: layout the red circle.
Figure A3. Situation 3: layout the red circle.
Geometry 02 00016 g0a3
Elementary geometric computations yield
x = 2 r R , p = ( 2 R R + r ) ( r R + ( r + R ) i ) .
The following Möbius transformation m will convert this generic situation to Situation 2. Namely, m maps { x , p , 0 } to { , 2 i , 0 } , so the configuration of Figure A3 morphs into that of Figure A2.
m = 1 + r / R i 0 ( R / r + i ) / 2 R + r R i
The tangency point t 2 in Figure A2 corresponds to the tangency point δ in Figure A3, so δ is obtained by applying m 1 to t 2 . An annoying calculation gives, in the alternate variable u,
δ ( u , r , R ) = 2 R ( 3 u R / r ) and ρ = 1 ( 3 u / R 1 / r ) 2 .
We will also need to reverse these computations in a particular situation in order to compute s. The situation is this: the values r and R are known, δ is positive, and the computed radius ρ comes out to be 1. What is s? We compute u, then s = 1 u .
When R , r are known , δ > 0 , and ρ = 1 : u = R + R / r 3 .
Situation 2 is the limiting case of Situation 3 when r grows to , so (A2) follows from (A3). Also, note that, when applying (A3), the quantity δ , which represents the displacement of the target circle from its shaded neighbor, can be zero or negative. An example is the branched flower of Figure 6c: with initial circle c 2 , the displacement of the target c 4 from c 3 is negative. This puts us in the following branching situation.
Situation 4. Branching is initiated during a layout step if and only if (A3) results in a displacement δ 0 . Figure A4a illustrates the most typical case, with δ j = ( t j + 1 t j ) < 0 . However, it is laying out the next circle that we need to concentrate on, as shown in Figure A4b. (The color codings are as before; known green and shaded petals in place, a red target petal to be positioned based on the schwarzian of the edge to the shaded circle.)
Figure A4. Situation 4: (a) shows the layout before adding the red circle of (b).
Figure A4. Situation 4: (a) shows the layout before adding the red circle of (b).
Geometry 02 00016 g0a4
By the formula in (A3), when δ < 0 , then ( 3 u / R 1 / r ) < 0 . This means, in turn, that our previous expression 1 / ρ = ( 3 u / R 1 ) is no longer true, as it requires absolute values on the right-hand side. Subsequent formulas like those in (10) and (15) fail, and ultimately, U n is no longer represented in a closed formula. This is what makes branched flowers more difficult to manipulate.
Figure A4b is typical of what we refer to as Situation 4. Notice that the new displacement, δ j + 1 , is again in the positive direction. The computations require a modification of (A3).
When the previous displacement was negative , then ( A 3 ) becomes δ ( u , r , R ) = 2 R ( 3 u + R / r ) and ρ = 1 ( 3 u / R + 1 / r ) 2 .
The “previous” step refers to that where R was computed. A propros of our earlier comments, the modification here is simply replacing R by R in (A3). (There is one other detail: the standing assumption u 0 is also required to ensure that this new displacement δ is positive).
Another possibility leading to branching is pictured in Figure A5. Namely, when ( 3 u 1 / R / r ) = 0 in (A3), so δ is undefined. In essence, δ = , R = , and the petal c j + 1 is a half plane (i.e., tangent to C at ). Figure A5 illustrates the situation when placing the next petal c j + 2 , which necessarily has the same radius r j as c j . For its tangency point, note that Figure A5 is a version of Figure A1. Applying (A1), scaling by r j , and taking the order t j , , t j + 2 of the tangencies about C into account, we have t j + 2 t j = 2 3 u j + 1 r j .
Figure A5. Laying out the red circle when c j is a half plane.
Figure A5. Laying out the red circle when c j is a half plane.
Geometry 02 00016 g0a5
We conclude this subsection by explaining the two exceptions to successful layout as listed in Theorem 1. The exceptional situations occur when j + 1 = n 2 in Figure A4 and Figure A5. Regarding exception (a), if Figure A5 occurs (so c j + 1 is the penultimate petal c n 2 ), then the Layout Process fails because placing c j + 2 (i.e., c n 1 ) with mandated radius 1 is either impossible (if r j 1 ) or ambiguous (since u n 2 is unknown). Regarding exception (b), look to Figure A4b. Though c 1 is not pictured here, if the tangency point of the red circle, t n 1 , is negative (to the left of t 1 = 0 ), then (A1) implies u 0 is negative, that is s 0 > 1 , which is not allowed.

Appendix A.2. Uniform Petals

The schwarzians for a uniform n-flower take a constant value that we have labeled s n . Here, we show that
s n = 1 2 cos ( π / n ) 3 , n 3 .
We will base our computations on Figure A6, with C being the unit circle and successive petals c n 1 , c 0 , c 1 sharing a common radius. Our interest is in the schwarzian s for the edge from C to c 0 .
Figure A6. Uniform petals: compute the schwarzian.
Figure A6. Uniform petals: compute the schwarzian.
Geometry 02 00016 g0a6
Let the angle α be one half of the angle at the origin in face f formed by the triple { C , c 0 , c 1 } . If these petals were taken from a uniform n-flower, then α = π / n . However, the following computation works for any α , 0 < α < π / 2 . Note that the tangency points of the circles are
ξ = sin ( 2 α ) i cos ( 2 α ) and ζ = sin ( 2 α ) i cos ( 2 α ) .
Let T denote the Möbius transformation which maps { i , p , ξ } to { , 2 i , 0 } , where p is the tangency point between c 0 and c 1 . This transformation puts the four circles in the standard normalized positions as they appear in Figure A1. In particular, T ( ζ ) is the tangency point labeled t n 1 there. Applying (A1), we conclude that 1 s = T ( ζ ) / ( 2 3 ) . I will leave the computation of T to the curious reader, but here is the general result:
s = 1 2 cos ( α ) 3 , 0 < α < π / 2 .

Appendix A.3. Special Computations

We outline two computations referred to in Section 3. These are similar in nature and, though elementary with a symbolic math package, provide great fun via pencil-and-paper. Both involve the restriction of a discrete mapping F between circle packings to a domain patch p and its image patch p = F ( p ) . The related objects involved are the edges e , e , their intrinsic schwarzians s , s , their tangency points t , t , the face mappings m f : f f , m g : g g , and the discrete Schwarzian derivative σ = Σ F ( e ) . Both situations also involve a Möbius transformation m ( z ) = ( a z + b ) / ( c z + d ) ; we write m in matrix form
m = a b c d , with a d b c = 1 .
The first computation relates the Schwarzian derivative and the two intrinsic schwarzians s , s . The Schwarzian derivative σ arises in
m g 1 m f = I + σ t t 2 1 t .
For the intrinsic schwarzians, we need to identify these additional Möbius transformations identifying faces:
For p = { f | g } : μ f : f Δ f ; μ g : g Δ g . For p = { f | g } : ν f : f Δ f ; ν g : g Δ g .
Manipulating the expression for schwarzians and taking m = μ f , we get
ν g 1 ν f = μ g 1 ( m g 1 m f ) m and
μ g 1 = 1 + s s s 1 s d b c a .
Putting these into matrix form gives
1 + s s s 1 s = 1 + s s s 1 s d b c a 1 + σ t σ t 2 σ 1 σ t a b c d .
The many pleasant surprises in a pencil-and-paper simplification yield
1 + s s s 1 s = I + s + σ / ( c + d ) 2 ( s + σ / ( c + d ) 2 ) s + σ / ( c + d ) 2 ( s + σ / ( c + d ) 2 ) ,
implying s = s + σ / ( c + d ) 2 . Moreover, the expression on the right is associated with the map of p Δ p and with the tangency point τ = 1 in its domain. The Schwarzian derivative s = s + σ / ( c + d ) 2 may therefore be rewritten
s = s + Σ F ( e ) · m ( 1 ) .
(As a side note, Σ F ( e ) · m ( 1 ) is real.)
Schwarzian derivatives—both classical and discrete—are unchanged under post-composition by Möbius transformations. Our second computation derives the chain rule for discrete Schwarzian derivatives under pre-composition. We will rely on the notations above, except that m now respresents an arbitrary Möbius transformation and the base patch p Δ is replaced by the patch p = m 1 ( p ) = { f | g } with its tangency point denoted  τ .
We start with the function F : p p . Its Schwarzian derivative σ = Σ F ( e ) is derived from the expression
m g 1 m f = I + σ t t 2 1 t = 1 + σ t 1 σ t 2 σ 1 σ t .
The issue is, given m, what is the Schwarzian derivative for F m : p p , denoted by Σ F m ( e ) ? This is derived from ν g 1 ν f , involving the face maps ν f : f f and ν g : g g . Note that ν f = m f m , ν g = m g m . Therefore,
ν g 1 ν f = ( m g m ) 1 m f m = m 1 ( m g 1 m f ) m .
Manipulating this, we arrive at
ν g 1 ν f = m 1 · I + σ t t 2 1 t · m = I + σ d b c a t t 2 1 t a b c d .
Since m identifies e with e, we have m ( τ ) = t . Using this to replace t and enjoying further pencil-and-paper work, one arrives at
ν g 1 ν f = I + σ ( c τ + d ) 2 τ τ 2 1 τ .
This gives our discrete chain rule, which is placed here beside the classical version:
Σ F m ( e ) = σ / ( c τ + d ) 2 = Σ F ( m ( e ) ) · m ( τ ) S ϕ m ( z ) = S ϕ ( m ( z ) ) / ( c z + d ) 4 = S ϕ ( m ( z ) ) · ( m ( z ) ) 2 .
These diverge in that the discrete version involves m rather than ( m ) 2 . The author has no concrete explanation for this difference. It is perhaps worth noting, however, that for mappings between circle packings, the ratios of image radii to domain radii serve as a proxy for the absolute value of the classical derivative; see, for example, [22]. In some sense, these mappings already incorporate a derivative, and this may subtly influence this chain rule.

References

  1. Thurston, W. The finite Riemann mapping theorem. Invited talk, “An International Symposium at Purdue University in celebration of de Branges’ proof of the Bieberbach conjecture”, Purdue University, March 1985 (unpublished).
  2. Sass, C.; Stephenson, K.; Williams, G.B. Circle packings on conformal and affine tori. In Computational Algebraic and Analytic Geometry, Contemporary Mathematics; American Mathematical Society: Providence, RI, USA, 2012; Volume 572, pp. 211–220. [Google Scholar]
  3. Kojima, S.; Mizushima, S.; Tan, S.P. Circle packings on surfaces with projective structures. J. Differ. Geom. 2003, 63, 349–397. [Google Scholar] [CrossRef]
  4. Stephenson, K. Introduction to Circle Packing: The Theory of Discrete Analytic Functions; Cambridge University Press: New York, NY, USA, 2005; ISBN 0-521-82356-0. QA640.7.S74. [Google Scholar]
  5. Rodin, B.; Sullivan, D. The convergence of circle packings to the Riemann mapping. J. Differ. Geom. 1987, 26, 349–360. [Google Scholar] [CrossRef]
  6. Bowers, P.L.; Stephenson, K. Conformal Tilings I: Foundations, Theory, and Practice. Conform. Geom. Dyn. 2017, 21, 1–63. [Google Scholar] [CrossRef]
  7. Hurdal, M.K.; Stephenson, K. Cortical cartography using the discrete conformal approach of circle packings. NeuroImage 2004, 23 (Suppl. S1), S119–S128. [Google Scholar] [CrossRef] [PubMed]
  8. Hagh, V.F.; Corwin, E.I.; Stephenson, K.; Thorpe, M.F. A broader view on jamming: From spring networks to circle packing. Soft Matter 2019, 15, 3076–3084. [Google Scholar] [CrossRef] [PubMed]
  9. Kim, S.; Dreifus, G.; Beard, B.; Glick, A.; Messing, A.; Hassen, A.A.; Lindahl, J.; Smith, T.; Failla, J.; Post, B.; et al. Graded infill structure of wind turbine blade core accounting for internal stress in big area additive manufacturing. In Proceedings of the CAMX—Composites and Advanced Materials Expo, Dallas, TX, USA, 15–18 October 2018. [Google Scholar]
  10. Stephenson, K. CirclePack Software 1992–2024. Available online: https://github/kensmath/CirclePack (accessed on 9 September 2025).
  11. Orick, G.L. Computational Circle Packing: Geometry and Discrete Analytic Function Theory. Ph.D. Thesis, University of Tennessee, Knoxville, TN, USA, 2010. directed by Kenneth Stephenson. [Google Scholar]
  12. Schramm, O. Circle patterns with the combinatorics of the square grid. Duke Math. J. 1997, 86, 347–389. [Google Scholar] [CrossRef]
  13. He, Z.X.; Schramm, O. The C-convergence of hexagonal disk packings to the Riemann map. Acta Math. 1998, 180, 219–245. [Google Scholar] [CrossRef]
  14. Lam, Y.Y. CMC-1 surfaces via osculating Möbius transformations between circle patterns. Trans. Amer. Math. Soc. 2024, 377, 3657–3690. [Google Scholar] [CrossRef]
  15. Bauer, D.; Stephenson, K.; Wegert, E. Circle packings as differentiable manifolds. Contrib. Algebra Geom. 2012, 53, 399–420. [Google Scholar] [CrossRef]
  16. Collins, C.R.; Stephenson, K. A circle packing algorithm. Comput. Geom. Theory Appl. 2003, 25, 233–256. [Google Scholar] [CrossRef]
  17. Beardon, A.F.; Dubejko, T.; Stephenson, K. Spiral hexagonal circle packings in the plane. Geom. Dedicata 1994, 49, 39–70. [Google Scholar] [CrossRef]
  18. Hansen, L.J. On the Rodin and Sullivan ring lemma. Complex Var. Theory Appl. 1988, 10, 23–30. [Google Scholar] [CrossRef]
  19. Aharonov, D. The sharp constant in the ring lemma. Complex Var. Theory Appl. 1997, 33, 27–31. [Google Scholar] [CrossRef]
  20. Aharonov, D.; Stephenson, K. Geometric sequences of discs in the Apollonian packing. Algebra I Anal. Dedic. Goluzin 1997, 9, 104–140. [Google Scholar]
  21. Soddy, F. The Kiss Precise. Nature 1936, 137, 1021, poem. [Google Scholar] [CrossRef]
  22. Collins, C.R.; Driscoll, T.A.; Stephenson, K. Curvature flow in conformal mapping. Comput. Methods Funct. Theory 2003, 3, 325–347. [Google Scholar] [CrossRef]
Figure 1. Example of a discrete Riemann mapping.
Figure 1. Example of a discrete Riemann mapping.
Geometry 02 00016 g001
Figure 2. Examples of discrete meromorphic functions: (a) a discrete rational function; (b) a discrete Weierstrass function.
Figure 2. Examples of discrete meromorphic functions: (a) a discrete rational function; (b) a discrete Weierstrass function.
Geometry 02 00016 g002
Figure 3. The discrete Schwarzian derivative for an edge.
Figure 3. The discrete Schwarzian derivative for an edge.
Geometry 02 00016 g003
Figure 4. Sampling some intrinsic schwarzians.
Figure 4. Sampling some intrinsic schwarzians.
Geometry 02 00016 g004
Figure 5. Notations for normalized flower layouts.
Figure 5. Notations for normalized flower layouts.
Geometry 02 00016 g005
Figure 6. Examples of normalized flower variety.
Figure 6. Examples of normalized flower variety.
Geometry 02 00016 g006
Figure 7. Normalized flowers.
Figure 7. Normalized flowers.
Geometry 02 00016 g007
Figure 8. Variety in 4-flowers.
Figure 8. Variety in 4-flowers.
Geometry 02 00016 g008
Figure 9. Quantities to compute in a normalized 5-flower.
Figure 9. Quantities to compute in a normalized 5-flower.
Geometry 02 00016 g009
Figure 10. Images of a simply branched 8-flower.
Figure 10. Images of a simply branched 8-flower.
Geometry 02 00016 g010
Figure 11. Two branched flowers; (a) is a typical flower with branching of order 2; (b) s branched 4-flower with extraneous tangencies.
Figure 11. Two branched flowers; (a) is a typical flower with branching of order 2; (b) s branched 4-flower with extraneous tangencies.
Geometry 02 00016 g011
Figure 12. Examples of special flower classes.
Figure 12. Examples of special flower classes.
Geometry 02 00016 g012
Figure 13. Samples of “uniform” flowers.
Figure 13. Samples of “uniform” flowers.
Geometry 02 00016 g013
Figure 14. The hidden circle.
Figure 14. The hidden circle.
Geometry 02 00016 g014
Figure 15. Normalizations of an “extremal” univalent flower.
Figure 15. Normalizations of an “extremal” univalent flower.
Geometry 02 00016 g015
Figure 16. Six-flowers with alternating schwarzians.
Figure 16. Six-flowers with alternating schwarzians.
Geometry 02 00016 g016
Figure 17. Nested “ring” flowers.
Figure 17. Nested “ring” flowers.
Geometry 02 00016 g017
Figure 18. Inserting a new petal.
Figure 18. Inserting a new petal.
Geometry 02 00016 g018
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Stephenson, K. A Discrete Schwarzian Derivative via Circle Packing. Geometry 2025, 2, 16. https://doi.org/10.3390/geometry2040016

AMA Style

Stephenson K. A Discrete Schwarzian Derivative via Circle Packing. Geometry. 2025; 2(4):16. https://doi.org/10.3390/geometry2040016

Chicago/Turabian Style

Stephenson, Kenneth. 2025. "A Discrete Schwarzian Derivative via Circle Packing" Geometry 2, no. 4: 16. https://doi.org/10.3390/geometry2040016

APA Style

Stephenson, K. (2025). A Discrete Schwarzian Derivative via Circle Packing. Geometry, 2(4), 16. https://doi.org/10.3390/geometry2040016

Article Metrics

Back to TopTop