Fact-checked by Grok 2 weeks ago

Julia set

In complex dynamics, a Julia set is a fractal subset of the complex plane defined for a holomorphic function f, specifically the closure of the repelling periodic points of f, where the iterates of f exhibit sensitive dependence on initial conditions and chaotic behavior. Named after the French mathematician Gaston Julia, who first described these sets in his seminal 1918 memoir on the iteration of rational functions, the Julia set J(f) complements the Fatou set, partitioning the Riemann sphere into regions of normal and non-normal dynamics under iteration. For the quadratic family f_c(z) = z^2 + c with c \in \mathbb{C}, the filled Julia set K_c comprises all points z_0 whose forward orbits under iteration remain bounded, i.e., \sup_n |f_c^n(z_0)| < \infty, while the Julia set J_c forms the topological boundary \partial K_c. The geometry of J_c depends critically on c: if c belongs to the Mandelbrot set \mathcal{M}—the set of parameters for which K_c is connected—then J_c is a connected Jordan curve; otherwise, J_c is totally disconnected, resembling a Cantor dust. Small perturbations in c can transform J_c from dendritic forms like the Douady rabbit (for c \approx -0.123 + 0.745i) to basilica-like structures (for c = -1), highlighting the sets' intricate self-similarity and Hausdorff dimension often exceeding 1. Although Julia's work laid the theoretical foundation, the visual complexity of these sets was not appreciated until the 1970s and 1980s, when Pierre Fatou's earlier studies on iteration were extended and Benoit Mandelbrot used computers to generate images, revealing their fractal nature and linking them to broader phenomena in . Julia sets are invariant under f and its inverses, serving as the "skeleton" of dynamical systems where repelling behavior dominates, with applications in studying universality in quadratic dynamics and modeling phenomena like dendritic growth in physics.

Background and History

Complex Dynamics Prerequisites

In complex analysis, a holomorphic function is a function that is complex differentiable at every point in some open domain of the complex plane. These functions satisfy the Cauchy-Riemann equations and possess powerful properties, such as being infinitely differentiable and representable by power series in their domains of holomorphy. To study global behavior in complex dynamics, the complex plane \mathbb{C} is often extended to the \hat{\mathbb{C}} = \mathbb{C} \cup \{\infty\}, which compactifies the plane by adding a point at infinity and endows it with the topology of a sphere via stereographic projection. Holomorphic functions on the Riemann sphere are rational functions, providing a natural setting for iterating maps without boundary issues at infinity. The study of complex dynamics centers on iterating a holomorphic map f: \hat{\mathbb{C}} \to \hat{\mathbb{C}}, typically a rational function of degree at least 2, and examining the behavior of orbits \{f^n(z)\}_{n=0}^\infty starting from initial points z \in \hat{\mathbb{C}}. A fixed point of f is a point z such that f(z) = z, while a of period p \geq 2 satisfies f^p(z) = z but f^k(z) \neq z for $1 \leq k < p. The stability of these points is determined by the multiplier \lambda = (f^p)'(z): if | \lambda | < 1, the point is attracting; if | \lambda | > 1, it is repelling; and if | \lambda | = 1 with \lambda \neq 1, it is (or indifferent). The basin of attraction of an attracting (or ) is the of points whose orbits converge to that under . Repelling points, in contrast, have orbits that diverge from them, often leading to chaotic behavior nearby. Central to understanding iteration behavior is Fatou's theorem on normal families of holomorphic functions, which states that for a rational map f of degree at least 2, the family of its iterates \{f^n\} forms a —meaning every sequence has a converging uniformly on compact subsets to a holomorphic limit—precisely on the largest where the dynamics are "regular." This theorem, proved by in 1920, underpins the partition of the into regions of stable and chaotic dynamics, with Julia sets emerging as the boundaries separating these domains.

Discovery and Development

The study of what would later be known as Julia sets originated in the early through the pioneering work of French mathematicians and on the of rational functions in the . Fatou initiated this research in 1917 with a memoir applying Paul Montel's concept of normal families to analyze the global behavior of iterated functions, publishing key results in the Comptes Rendus de l'Académie des Sciences between 1919 and 1920 that laid foundational ideas for holomorphic dynamics. Julia, building on similar ideas, submitted his doctoral thesis in 1918, which was published that year in the Journal de Mathématiques Pures et Appliquées as a comprehensive 200-page treatment of theory for rational functions, introducing concepts central to understanding the boundaries of basins of attraction under . Despite the mathematical depth of these contributions, Fatou and Julia's work on received limited attention during the mid-20th century, largely because the intricate boundary structures they described—now recognized as —could not be visualized without computational tools, rendering the abstract results inaccessible to broader mathematical exploration. This neglect persisted until the advent of digital computing in the 1970s, when , working at , began generating computer images of these sets, first producing recognizable plots of in late 1979. Mandelbrot's visualizations, culminating in high-quality images by 1980, dramatically revived interest in and Fatou's theories by revealing their nature and self-similar complexity, which Mandelbrot connected to his broader framework of geometry as detailed in his 1982 book . This rediscovery not only reestablished sets as a cornerstone of but also influenced emerging fields such as , where iterative processes model unpredictable behaviors in physical systems, and , enabling realistic rendering of natural forms through algorithms.

Core Definitions

Formal Definition

In complex dynamics, the Julia set of a holomorphic function f: \hat{\mathbb{C}} \to \hat{\mathbb{C}}, where \hat{\mathbb{C}} denotes the , is studied through the iteration process defined by z_{n+1} = f(z_n) with initial point z_0 \in \hat{\mathbb{C}}. For a f of degree at least 2, the Julia set J(f) is the closure of the set of repelling s of f, where a periodic point z of period n satisfies f^n(z) = z and is repelling if |(f^n)'(z)| > 1. When f is a , is a superattracting fixed point, and the filled Julia set is defined as K(f) = \{ z \in \mathbb{C} \mid |z_n| \not\to \infty \text{ as } n \to \infty \}, with the Julia set given by J(f) = \partial K(f). A prominent family of examples is the polynomials f_c(z) = z^2 + c for c \in \mathbb{C}, where the Julia set J(c) lies in the and captures the chaotic dynamics on its boundary.

Equivalent Descriptions

One equivalent characterization of the Julia set J(f) for a rational function f: \hat{\mathbb{C}} \to \hat{\mathbb{C}} of degree at least 2 is as the closure of the repelling periodic points of f. A periodic point z of period n is repelling if |(f^n)'(z)| > 1, and the set of all such points is dense in J(f), with their closure precisely equaling J(f). This description highlights the chaotic, expanding nature of the dynamics on the Julia set, as repelling periodic points are fundamental to the unstable behavior under iteration. Another formulation arises from the theory of normal families: the Julia set J(f) consists of those points z \in \hat{\mathbb{C}} such that the family of iterates \{f^n : n \geq 0\} is not normal in any neighborhood of z. Here, normality means the family is locally equicontinuous or, equivalently by Montel's theorem, that there exists a subsequence converging uniformly on compact subsets to a holomorphic function or to infinity. This characterization complements the Fatou set F(f), defined as the largest open set where the iterates form a normal family, making J(f) the complement of F(f). The Julia set can also be described as the of the Fatou set: J(f) = \partial F(f). Since F(f) is open and completely under f, its coincides with the of the set where the exhibit to initial conditions, separating stable regions from ones. This property underscores the topological role of J(f) in partitioning the . For polynomial maps f: \mathbb{C} \to \mathbb{C} of degree at least 2, the Julia set is the boundary of the basin of attraction of infinity, denoted A_f(\infty) = \{ z \in \mathbb{C} : f^n(z) \to \infty \text{ as } n \to \infty \}, so J(f) = \partial A_f(\infty). Infinity acts as a superattracting fixed point, and this basin forms a connected component of the Fatou set, with the filled Julia set K(f) = \mathbb{C} \setminus A_f(\infty) having boundary J(f).

Dynamical Properties

Properties of the Julia Set

The Julia set J(f) of a rational map f of at least 2 is a non-empty, compact, and perfect subset of the , meaning it contains no isolated points and is closed under taking limits. This structure arises from the closure of the repelling periodic points, ensuring the set's completeness and topological richness. A fundamental topological holds: for polynomials, particularly quadratics, the Julia set is either connected or totally disconnected, resembling a in the latter case. This classification depends on the boundedness of critical orbits, with preserved only if no critical point escapes to . Julia sets are not always locally connected, even when connected; counterexamples include certain infinitely renormalizable maps constructed via iterated tuning, where pinch points prevent path-connectedness between nearby components. Such non-local connectivity complicates boundary descriptions and visualization. The of hyperbolic Julia sets equals their hyperbolic dimension, the supremum of dimensions of repelling subsets, and reaches 2 in many cases, such as those with positive , indicating space-filling behavior. For instance, sequences of quadratic maps near certain parameters yield Julia sets of dimension arbitrarily close to 2. For hyperbolic rational maps, the on the are with respect to the unique conformal measure of maximal , implying strong mixing properties and uniform expansion away from critical points. This underpins the statistical uniformity of orbits on J(f). Small perturbations in the c for maps z^2 + c can induce drastic topological transitions in the , such as from connected to totally disconnected or shifts in connectivity loci.

Julia Set versus Fatou Set

The Fatou set F(f) of a f: \hat{\mathbb{C}} \to \hat{\mathbb{C}} is defined as the largest open subset of the \hat{\mathbb{C}} on which the family of iterates \{f^n : n \geq 0\} is , meaning every of iterates has a subsequence that converges on compact subsets to a or to infinity. This is equivalent to the family being equicontinuous on F(f), due to applied to families of meromorphic functions omitting at most three values. In contrast, the Julia set J(f) = \hat{\mathbb{C}} \setminus F(f) consists of points where the iterates exhibit chaotic behavior, lacking such uniform convergence properties. The connected components of the Fatou set, known as Fatou components, are classified into periodic, preperiodic, and wandering types, though the latter do not occur for rational maps. Periodic Fatou components are those invariant under some iterate f^k, and by the works of Fatou, , , Branner-Hubbard, and others, they fall into four main categories: attracting or superattracting basins, where iterates converge to an attracting periodic ; parabolic basins, associated with rationally indifferent fixed points; disks, where dynamics are conjugate to irrational rotations on the disk; and Herman rings, annular regions with similar rotational dynamics. Preperiodic components map eventually to periodic ones under iteration. Sullivan's no wandering domains theorem proves that for any rational f, every Fatou component is eventually periodic, resolving a long-standing and ensuring the Fatou set has no wandering components—open sets whose orbits under f remain disjoint forever. The Julia set serves as the of every Fatou component, enclosing the regions of F(f) where are tame, while J(f) captures the . Since rational maps are open by the open mapping theorem, f maps open sets to open sets, implying that f(F(f)) \subseteq F(f) and f(J(f)) \subseteq J(f); moreover, the sets are completely , as preimages preserve the or chaos. For maps, the of —consisting of points whose orbits escape to \infty—forms a distinguished unbounded Fatou component, often simply connected and containing all escaping points.

Examples and Families

Basic Examples

Julia sets arise prominently in the study of the quadratic family of maps f_c(z) = z^2 + c, where c is a ; the filled Julia set K_c consists of points whose orbits under of f_c remain bounded, while the Julia set J_c is the of K_c, forming the boundary between escaping and non-escaping regions. A basic connected example occurs for c = -2, where J_{-2} is the closed [-2, 2] on the real axis, a simple dendritic structure extended along the real line without branches or interior points. In this case, of points within [-2, 2] produces bounded orbits that oscillate within the interval, while points outside escape to infinity. The fixed points, solutions to z = z^2 - 2, are z = 2 and z = -1, with multipliers \lambda = 2z = 4 and \lambda = -2, respectively; both have |\lambda| > 1, rendering them repelling. For a totally disconnected example, consider c = 0.25 + 0.5i, which lies on the boundary of the parameter region yielding connected sets; however, slight perturbations outside produce dust-like structures, but strictly for values like c = 0.5 (real), J_{0.5} is a , consisting of uncountably many isolated points with no connected components larger than a singleton, resembling fractal dust scattered along the real line. Here, all orbits on the Julia set are bounded but dense in small neighborhoods, while nearby points escape rapidly to infinity. The fixed points solve z^2 - z + 0.5 = 0, yielding z = \frac{1 \pm \sqrt{-1}}{2} = 0.5 \pm 0.5i, with multipliers \lambda = 2z = 1 \pm i; both satisfy |\lambda| = \sqrt{2} > 1, so they are repelling. For real parameters c \in (-2, 0.25), the Julia sets J_c are connected and exhibit varied qualitative shapes: near c = -2, they resemble thin rods or line-like dendrites; around c = 0, they form rounded, cauliflower-like boundaries enclosing a disk-like filled set; and approaching c = 0.25, they become pinched and quasi-circular with increasing intricacy at the parabolic cusp. These forms illustrate how small changes in c transform the while maintaining .

Quadratic Julia Sets

The quadratic family of maps is defined by f_c(z) = z^2 + c, where c is a complex parameter varying over the plane \mathbb{C}. The associated Julia set J_c is the boundary of the filled Julia set K_c = \{ z \in \mathbb{C} : \sup_{n \geq 0} |f_c^n(z)| < \infty \}, and its connectivity depends critically on c. Specifically, K_c (and thus J_c) is connected if and only if c lies in the M = \{ c \in \mathbb{C} : K_c is connected \}; otherwise, K_c is totally disconnected (a Cantor set) and coincides with J_c. The dynamics of f_c are governed by the orbit of its sole finite critical point at z = 0, as the behavior of all other orbits is subordinate to this one under the quadratic structure. The orbit of 0 remains bounded if and only if c \in M, which ensures the connectivity of J_c; unbounded escape of this orbit leads to a disconnected Julia set. This critical orbit criterion provides a practical means to determine membership in M and classify the topology of J_c. The Mandelbrot set M possesses a distinctive bulb structure, comprising the main cardioid—a central region where f_c admits an attracting fixed point—and an infinite collection of period-n bulbs attached to it, each corresponding to parameters with an attracting cycle of minimal period n > 1. These bulbs adorn the cardioid in a self-similar fashion, with the largest being the period-2 bulb to the left and smaller ones spiraling outward for higher periods. For example, the case c = -2 yields a connected dendritic Julia set without attracting cycles. Hyperbolic components form the open interior of M, consisting of all c for which f_c is (i.e., possesses an attracting to which the critical point converges). Each such component is bounded by a where the multiplier of the attracting has modulus exactly 1, marking the transition to non- dynamics; the component's root (where the multiplier is 1) and center (where it is 0) define key structural points. In the Douady-Hubbard theory, the combinatorial structure of M and its Julia sets is illuminated through external rays—curves from parameterized by angles \theta \in \mathbb{R}/\mathbb{Z}—which land at specific boundary points. Rational-argument external rays of M land precisely at the roots of hyperbolic components or at Misiurewicz points (where the critical orbit is preperiodic); at these roots, the rays coincide with the landing points of internal rays from the component's dynamics, establishing a between parameter and dynamical planes. For a fixed point z^* of f_c, satisfying z^* = (z^*)^2 + c, the multiplier is given by \lambda = f_c'(z^*) = 2 z^*. Attracting fixed points occur when |\lambda| < 1, which parameterizes the main cardioid via the relation c = \frac{\lambda}{2} (1 - \frac{\lambda}{2}). This multiplier governs local stability and bifurcations at the cardioid's boundary.

Generalizations and Extensions

To Higher-Degree Polynomials

Julia sets can be generalized to monic polynomials of degree d > 2, such as f(z) = z^d + c where c \in \mathbb{C}. For this unicritical family, there is a critical point at z = 0 with multiplicity d-1, as the derivative is f'(z) = d z^{d-1}, vanishing to d-1 at the origin. In this family, the are determined by the of this single critical point. While the unicritical family z^d + c captures an analog via the Multibrot set, general monic degree d polynomials have d-1 finite critical points, leading to a higher-dimensional parameter space. The parameter space for these unicritical families is known as the Multibrot set M_d, the analog of the for degree d, consisting of parameters c for which the of the critical point 0 remains bounded under of f_c(z) = z^d + c. For d > 2, the Multibrot set exhibits greater structural complexity than the quadratic , featuring more hyperbolic components and higher-period loci due to the higher degree and multiplicity. A key dynamical property carries over from quadratics: the Julia set J(f) of a f of d \geq 2 is connected the s of all finite critical points remain bounded. If any critical escapes to , J(f) becomes a of uncountably many components. This criterion generalizes the connectivity condition, where boundedness of the single critical suffices. For monic polynomials with connected Julia sets, the of \Omega(f, \infty) is simply connected. This follows from the existence of a conformal (via an adjusted Böttcher function) mapping \Omega(f, \infty) onto the open unit disk, possible precisely because no finite critical points lie in the . In contrast to the case, the presence of multiple critical points in general polynomials allows for richer combinatorial structures, such as captures of one critical by another, contributing to the increased complexity of components and periodic cycles in the parameter space. A representative example is the cubic family f(z) = z^3 + c, which has a single critical point at with multiplicity 2. The Multibrot set M_3 is the locus where the of remains bounded. In contrast, the general cubic family, such as f(z) = z^3 + a z + b, has two distinct critical points (solutions to $3z^2 + a = 0), requiring bounded s for both to ensure , and features a two-dimensional space with more intricate structure than the quadratic .

To Non-Polynomial Maps

The generalization of Julia sets to non-polynomial holomorphic maps encompasses rational functions of degree d \geq 2 and transcendental entire functions, introducing distinct dynamical behaviors on the or extended . For a rational map f(z) = p(z)/q(z), where p and q are coprime polynomials of degree d, the map has exactly $2d-2 critical points, counted with multiplicity, as the f'(z) is a of degree $2d-2. The Julia set J(f) is the closure of the repelling periodic points of f, and it coincides with the closure of all repelling periodic points under . Fatou components for rational maps include attracting and parabolic basins, as well as rotation domains such as disks (where f is conjugate to an irrational rotation on a disk) and Herman rings (annular rotation domains, possible only for degree at least 3). Unlike polynomial maps, rational functions act on the compact \hat{\mathbb{C}}, so there is no dedicated superattracting basin of infinity; instead, infinity behaves as an ordinary point in the dynamics. By Sullivan's no-wandering-domains theorem, every Fatou component under a rational map is eventually periodic, precluding wandering domains where forward images remain disjoint. For transcendental entire functions, such as exponentials or trigonometric maps, the Julia set J(f) is the set where the family of iterates \{f^n\} fails to be normal, often exhibiting more complex structures due to the non-compact domain. These functions possess infinitely many critical points and asymptotic values (points omitted in the range, including \infty), with singular values defined as the critical values and asymptotic values; the postsingular set, the closure of the forward orbits of singular values, governs much of the dynamics. A canonical example is the exponential map f(z) = \lambda e^z with $0 < \lambda < 1/e, where \lambda is the sole finite singular value (as 0 is an asymptotic value), and the escaping set consists of dynamic rays landing at repelling points or the singular value's orbit. Transcendental entire functions admit phenomena absent in rational maps, including Baker domains—Fatou components U where f^n(z) \to \infty for z \in U but f|_U is not onto an attracting cycle—and wandering domains, whose forward orbits consist of infinitely many distinct components. Baker domains were first identified in the context of normality domains for entire functions, and examples include certain quadratic entire maps like f(z) = z^2 + c \sin(z) for specific c. Wandering domains, conjectured by Fatou, are ruled out for rational maps by Sullivan but exist for transcendentals, as in f(z) = z^2 e^{z + \lambda} for small \lambda \neq 0. If the Fatou set of a transcendental entire function is nonempty, then J(f) has empty interior in \mathbb{C}. Trigonometric entire functions provide illustrative examples; for f(z) = \sin(z), the Julia set is the entire complex plane \mathbb{C}, as the iterates exhibit no normality anywhere due to unbounded critical orbits and dense escaping points. Similarly, the sine family \lambda \sin(z) for \lambda > 0 yields Julia sets of positive area, often Cantor bouquets of curves, highlighting the rich topology possible in transcendental dynamics.

Computation and Visualization

Plotting Algorithms

The most straightforward method for plotting Julia sets involves forward iteration, also known as the escape-time algorithm. In this approach, a of points is defined in the , typically within a bounded region such as a square centered at the origin. For each grid point z_0, the z_{n+1} = f(z_n) is performed starting from z_0, where f is the (e.g., a quadratic polynomial f(z) = z^2 + c). The process continues until either |z_n| exceeds a predefined escape radius (often 2 or larger, depending on f) or a maximum number of iterations (e.g., 100–1000) is reached. Points that are colored according to the iteration count at which escape occurs, creating a smooth that highlights regions near the Julia set ; points that remain bounded after the maximum iterations are typically colored black or a solid hue to indicate membership in the filled Julia set K(f), the set of points with bounded orbits under f. This method effectively visualizes repelling Julia sets but can be computationally intensive for fine grids or high iteration counts. The inverse method (IIM) addresses limitations of forward , particularly for connected Julia sets, by working backwards from the exterior of the set. It begins with a set of known exterior points, such as a large disk or far from the where |z| is sufficiently large to ensure under forward . For each such point z, the equation f(w) = z is solved for preimages w, yielding multiple solutions (e.g., two for f). These preimages are iteratively computed over many steps (often hundreds), with random or systematic selection among branches to densely sample the . As iterations proceed, the preimages converge to the Julia set boundary, which acts as an attracting set in the , allowing efficient filling of interior regions without exhaustively testing every grid point. This technique excels at rendering detailed boundaries for polynomials where the Julia set is connected, though it requires careful branch selection to avoid biases toward certain angles. For enhanced boundary smoothness and , the distance estimation method (DEM) approximates the distance from each point to the Julia set , enabling subpixel refinement. Starting from a point z_0 outside the set, forward computes z_n = f^{\circ n}(z_0) and the accumulated z'_n = \prod_{k=0}^{n-1} f'(z_k), with z'_0 = 1. The estimated distance is then d \approx \frac{|z_n| \cdot \ln |z_n|}{|z'_n|}, derived from the potential function G(z_0) \approx \frac{\ln |f^{\circ n}(z_0)|}{n} and |G'(z_0)| \approx \frac{|z'_n|}{|z_n|}, so d = \frac{G(z_0)}{|G'(z_0)|}. This provides a lower bound on the true distance with controlled error for large n and smooth boundaries. Coloring or shading based on this distance yields antialiased images, particularly useful for Julia sets where boundaries are C^1-smooth away from critical points. DEM reduces artifacts in zoomed views but demands higher counts near the for accuracy. To plot the filled Julia set K(f), the boundedness test is central: during forward , points whose remain within the escape radius after the maximum iterations are classified as interior to K(f), while escapers are exterior. For maps f(z) = z^2 + c, an escape criterion guarantees that if |z_n| > \max(|c|, 2), the orbit diverges to , allowing reliable termination; this test extends to higher-degree polynomials with adjusted radii based on coefficients. Challenges in rendering include from discrete grids, which DEM partially mitigates via distance-based , and precision loss in deep zooms, where standard double-precision fails due to accumulated rounding errors in iterations, necessitating arbitrary-precision libraries (e.g., GMP) that increase time exponentially with zoom depth.

Pseudocode Implementations

The standard method for generating images of quadratic sets employs forward of the z_{n+1} = z_n^2 + c, where c is a fixed and initial points z_0 are sampled on a in the . For each grid point, the orbit is iterated until |z_n| exceeds a (typically 2, as to occurs for |z| > 2 under this ), or a maximum count is reached; the count determines the coloring, with non-escaping points colored black to indicate bounded orbits. The following pseudocode illustrates this escape-time algorithm for a filled Julia set, where the filled set consists of points with bounded orbits (colored black if no escape within max iterations), distinguishing it from the normal Julia set, which is solely the boundary of escaping and non-escaping regions.
function generate_filled_julia(width, height, c_real, c_imag, max_iter, escape_radius=2.0):
    image = array of size (width, height) initialized to 0  # 0 for black (bounded)
    for x in 0 to width-1:
        for y in 0 to height-1:
            z_real = scale(x, width, -2.0, 2.0)  # Map grid to complex plane, e.g., [-2,2] x [-2,2]
            z_imag = scale(y, height, -2.0, 2.0)
            c = complex(c_real, c_imag)
            z = complex(z_real, z_imag)
            iter = 0
            while |z| <= escape_radius and iter < max_iter:
                z = z^2 + c
                iter += 1
            if iter == max_iter:
                image[x][y] = 0  # Bounded orbit: filled set interior
            else:
                image[x][y] = iter  # Escape time for coloring
    return image
This approach produces the filled Julia set K_c = \{ z \in \mathbb{C} : |z_n| \leq 2 \ \forall n \}, whose boundary is the Julia set J_c; for the normal Julia set, only boundary points could be highlighted via additional refinement, but the pseudocode above focuses on the filled version for practical visualization. Optimizations enhance efficiency, such as early escape checks where iteration halts immediately if |z_n| > 2 (leveraging the fact that orbits diverge thereafter) and periodicity detection to identify repeating cycles in bounded orbits, avoiding further computation. Periodicity can be detected by storing visited points in a set and checking for repeats, though floating-point precision limits its reliability in practice. For multi-Julia sets, which explore variations across multiple c (e.g., perturbed maps or slices through the parameter space), the algorithm extends by nesting loops over a of c values, generating a composite image or from individual Julia sets. Perturbed maps might involve adding small noise to c per or point, but the core remains forward iteration per c.
function generate_multi_julia(c_width, c_height, ...):  # Similar args as above
    multi_image = array of size (c_width * width, c_height * height)
    for cx in 0 to c_width-1:
        for cy in 0 to c_height-1:
            c_real = scale(cx, c_width, c_min_real, c_max_real)  # e.g., c in [-0.8, 0.2] + i[-0.2, 0.2]
            c_imag = scale(cy, c_height, c_min_imag, c_max_imag)
            sub_image = generate_filled_julia(width, height, c_real, c_imag, max_iter)
            copy sub_image to multi_image at offset (cx * width, cy * height)
    return multi_image
This produces a parameter-space akin to a Mandelbrot slice, with each sub-image a Julia set for that c. Inverse iteration reverses the process, starting from points near infinity or repelling fixed points and applying branching inverses to fill preimage sets approximating the Julia set; for f(z) = z^2 + c, the two inverses are w = \pm \sqrt{z - c}, chosen randomly or exhaustively up to depth N to generate level sets. This method is particularly effective for connected Julia sets, as preimages accumulate densely on the boundary.
function generate_inverse_julia(c_real, c_imag, max_depth, num_samples, grid_size):
    c = complex(c_real, c_imag)
    preimages = set()  # Store points on Julia set approximation
    # Start from repelling fixed point or large |z| (e.g., infinity approximation)
    start_points = sample_random_points_outside(grid_size, radius=10.0)  # e.g., 1000 points
    for start_z in start_points:
        current = start_z
        for depth in 1 to max_depth:
            # Choose branch randomly (0 or 1 for + or - sqrt)
            branch = random(0, 1)
            inv = sqrt(current - c) * (1 if branch == 0 else -1)
            add inv to preimages if within grid bounds
            current = inv  # Backtrack
    image = mark_grid_points(preimages, grid_size)  # Density or presence on grid
    return image
The approximation improves with higher N and more samples, converging to J_c as the limit of preimage boundaries. The estimation method (DEM) provides smooth -to-boundary values for enhanced coloring or , iterating both the map and its : z_{n+1} = z_n^2 + c, dz_{n+1} = 2 z_n \, dz_n (with dz_0 = 1), then estimating as |z| \log |z| / |dz| upon escape.
function julia_dem_distance(z_real, z_imag, c_real, c_imag, max_iter, escape_radius=2.0):
    c = [complex](/page/Complex)(c_real, c_imag)
    z = [complex](/page/Complex)(z_real, z_imag)
    dz = [complex](/page/Complex)(1.0, 0.0)  # Initial [derivative](/page/Derivative)
    iter = 0
    while |z| <= escape_radius and iter < max_iter:
        dz_new = 2 * z * dz
        z = z^2 + c
        dz = dz_new
        iter += 1
    if iter == max_iter:
        return infinity  # Or large value for interior
    else:
        return |z| * log(|z|) / |dz|  # [Distance](/page/Distance) estimate to boundary
This yields sub-pixel accuracy for exterior points, useful for anti-aliased rendering of Julia set boundaries.

Advanced Mathematical Tools

Potential Function

In the context of polynomial Julia sets, the potential function \phi(z) for a monic polynomial f of degree d \geq 2 is defined on the basin of infinity A_\infty(f) as \phi(z) = \lim_{n \to \infty} \frac{1}{d^n} \log^+ |f^{\circ n}(z)|, where f^{\circ n} denotes the n-th iterate of f and \log^+ x = \max(\log x, 0). This limit exists and defines a continuous, non-negative function that vanishes identically on the filled Julia set K(f) (and hence on the Julia set J(f)) but is strictly positive throughout A_\infty(f). The function \phi is harmonic on A_\infty(f), satisfying Laplace's equation \Delta \phi = 0 there, and extends continuously to zero on the boundary \partial K(f). Near infinity, it admits the asymptotic expansion \phi(z) \sim \frac{1}{d} \log |z| as |z| \to \infty. Moreover, \phi obeys the functional equation \phi(f(z)) = d \cdot \phi(z) for all z \in A_\infty(f), reflecting the scaling induced by iteration. This potential function is intimately connected to the Böttcher coordinate, a conformal map \psi: A_\infty(f) \to \{w \in \mathbb{C} : |w| > 1\} defined near infinity that conjugates f to the model map w \mapsto w^d, with \psi(z) \sim z as |z| \to \infty. Specifically, \phi(z) = \log |\psi(z)| outside K(f), linking the potential to external coordinates in the dynamical plane. The inverse of the potential provides a notion of the real number: for t > 0, the \phi^{-1}(t) = \{z \in A_\infty(f) : \phi(z) = t\} consists of curves corresponding to rays at potential level t, which parameterize the continuous escape rate to infinity. These curves are particularly useful in applications, such as rendering smooth color gradients in visualizations of Julia sets by interpolating between iteration counts.

Field Lines and External Rays

In the study of Julia sets for holomorphic maps, field lines refer to the gradient lines of the Green's function, or potential function, which describe the direction of steepest ascent in the external potential field surrounding the filled Julia set K(f). These lines are orthogonal to the equipotential curves, where the potential is constant, forming a network analogous to electric field lines around a charged conductor. External rays are a specific family of these field lines, parameterized by an angle \theta \in [0,1), that extend from infinity toward the Julia set J(f) while maintaining a constant argument \theta under the conformal mapping \phi_f that linearizes the dynamics at infinity. Each ray R_\theta is defined as the curve \phi_f^{-1}(r e^{2\pi i \theta}) for r > 1, where the parameter r = e^t decreases from \infty to 1 as t, the potential, decreases to 0, so R_\theta(t) = \phi_f^{-1}(e^t e^{2\pi i \theta}). For quadratic polynomials f_c(z) = z^2 + c with connected K(f_c), the external rays are conjugate via the Böttcher function to the angle-doubling map on the unit circle, meaning the dynamics on the rays mirrors the doubling of angles \theta \mapsto 2\theta \mod 1. In this setting, Douady and Hubbard established that external rays land at repelling periodic points on J(f_c), with rays of rational angle \theta = p/q in lowest terms landing at periodic points of period dividing q. The landing behavior of rays provides a combinatorial model for the Julia set known as the pinching model or : the boundary J(f) can be constructed by starting with the circle of rays at and pinching together pairs of points with angles whose rays land at the same point on J(f), yielding a whose quotient is homeomorphic to J(f) when it is locally connected. However, for Julia sets that are not locally connected, such as those containing Cremer points, some external rays fail to land on J(f), instead accumulating on the boundary without terminating at a single point; this non-landing is a direct consequence of the failure of local connectivity.

References

  1. [1]
    Julia Set - an overview | ScienceDirect Topics
    The most important orbits in a complex dynamical system lie in the Julia set, named for Gaston Julia, who initiated the study of these sets in 1918.Missing: primary | Show results with:primary
  2. [2]
    [PDF] Mémoire sur l'itération des fonctions rationnelles - Numdam
    Oct 10, 2025 · GASTON JULIA. Mémoire sur l'itération des fonctions rationnelles. Journal de mathématiques pures et appliquées 8e série, tome 1 (1918), p. 47 ...
  3. [3]
    5.6: The Julia Set - Mathematics LibreTexts
    May 28, 2023 · The Julia sets, defined by the equation (1), can take all kinds of shapes, and a small change in c can change the Julia set very greatly. In ...Missing: primary | Show results with:primary
  4. [4]
    [PDF] Julia Sets and the Mandelbrot Set
    Julia sets are fractal sets in the complex plane arising from complex polynomial dynamics. The filled Julia set is where orbits remain bounded.Missing: primary sources
  5. [5]
    Holomorphic Function -- from Wolfram MathWorld
    A synonym for analytic function, regular function, differentiable function, complex differentiable function, and holomorphic map.
  6. [6]
    Analytic Function -- from Wolfram MathWorld
    An analytic function is a complex function that is complex differentiable at every point in a region, and is sometimes called holomorphic.
  7. [7]
    Topics in a Complex Analysis Course - Wolfram MathWorld
    The Riemann sphere is a name given to the complex plane together with a point at infinity, which has the topology of a sphere. Riemann Surface.
  8. [8]
    Meromorphic Function -- from Wolfram MathWorld
    An equivalent definition of a meromorphic function is a complex analytic map to the Riemann sphere. The word derives from the Greek muepsilonrhoomicronsigma ...
  9. [9]
    [PDF] AN INTRODUCTION TO JULIA AND FATOU SETS In this note, we ...
    We give an elementary introduction to the holomorphic dynamics of mappings on the. Riemann sphere, with a focus on Julia and Fatou sets. Our main emphasis is on ...Missing: primary | Show results with:primary
  10. [10]
    Fixed Point -- from Wolfram MathWorld
    Fixed points are also called critical points or equilibrium points. If a variable starts at a point that is not a critical point, it cannot reach a critical ...
  11. [11]
    Basin of attraction - Scholarpedia
    Dec 29, 2016 · Its basin of attraction is the set of initial conditions leading to long-time behavior that approaches that attractor.Fractal basin boundaries · The Uncertainty Exponent · Riddled Basins of Attraction
  12. [12]
    Attractor -- from Wolfram MathWorld
    A stable fixed point surrounded by a dissipative region is an attractor known as a map sink. Regular attractors (corresponding to 0 Lyapunov characteristic ...
  13. [13]
    Mandelbrot Set -- from Wolfram MathWorld
    A Mandelbrot set marks the set of points in the complex plane such that the corresponding Julia set is connected and not computable.
  14. [14]
    Pierre Fatou (1878 - 1929) - Biography - MacTutor
    Fatou wrote a long memoir which did indeed use Montel's idea of normal families to develop the fundamental theory of iteration in 1917. Although we do not know ...
  15. [15]
    Gaston Julia (1893 - 1978) - Biography - MacTutor
    In 1918 Julia married Marianne Chausson, one of the ... H Cremer produced an essay on his work which included the first visualisation of a Julia set.Missing: primary source
  16. [16]
    Who Discovered the Mandelbrot Set? - Scientific American
    Mar 13, 2009 · He says he began producing recognizable pictures of the Mandelbrot set—which in a sense is a generalized version of all Julia sets—in late 1979.Missing: rediscovery | Show results with:rediscovery
  17. [17]
    [PDF] Fractal Geometry: The Mandelbrot and Julia Sets - UChicago Math
    First we must define a set of complex quadratic polynomials. Pc : z → z2 + c. The Mandelbrot set M is the set of all c-values such that the sequence 0,Pc(0),Pc( ...
  18. [18]
    [PDF] Complex Dynamics and Renormalization
    The Julia set is the locus of expanding and chaotic behavior; for example: Theorem 3.1 The Julia set is equal to the closure of the set of re- pelling ...<|control11|><|separator|>
  19. [19]
    [PDF] Simple proofs of some fundamental properties of the Julia set
    Sep 8, 2000 · THEOREM 2. J is the closure of the set of all repelling periodic points of f . The first result is easy to prove for the case when f is ...
  20. [20]
    [PDF] NOTES ON COMPLEX DYNAMICS Contents 1. Fatou and Julia Sets ...
    Mar 9, 2022 · A family F is normal in Ω if and only if it is normal at each point of Ω. Proof. One direction is clear. So suppose F is normal at each point of ...
  21. [21]
    [PDF] Exploring the Mandelbrot set. The Orsay Notes. Adrien Douady John ...
    The goal of this work is to present results obtained by A. Douady and J.H.. Hubbard in 1981-82. The most important has been stated, with or without proofs,.
  22. [22]
    [PDF] The Hausdorff Dimension of the Boundary of the Mandelbrot Set and ...
    Theorem 2 is the most important resu in this paper, and it assures that one can obtain maps whose Julia sets hazz. Hausdorff dimension (or "hyperbolic ...
  23. [23]
    [PDF] Conformal Fractals – Ergodic Theory Methods - UNT Math
    Jul 6, 2008 · (A measure with this property for all small balls centered at a compact set, in a euclidean space of any dimension, is called a geometric ...
  24. [24]
    [PDF] On the cardinalities of the Fatou and Julia sets
    The aim of this expository paper is to briefly study possible cardinalities for the. Fatou and Julia sets; namely, we will show that the Julia set of ...Missing: formal | Show results with:formal
  25. [25]
    [PDF] 3 Fatou and Julia sets
    There are two approaches to defining the Fatou set of a rational map f, either as the equicontinuity set of the family of iterates of f, or as the normality set ...
  26. [26]
    [PDF] On the parabolic Fatou domains - arXiv
    Sep 15, 2025 · A fundamental result in complex dynamics, due to Sullivan, asserts that rational maps have no wandering Fatou domains. Then the classification ...
  27. [27]
    [PDF] Most Fatou and Julia components are small for polynomials - arXiv
    Jul 11, 2025 · The basin of infinity B∞ is the complement of Kf . When Kf is connected, the polynomial f is conjugated to z ↦→ zd on B∞. The conjugacy.
  28. [28]
    Julia Set -- from Wolfram MathWorld
    Let R(z) be a rational function R(z)=(P(z))/(Q(z)), (1) where z in C^*, C^* is the Riemann sphere C union {infty}, and P and Q are polynomials without common
  29. [29]
    Julia Sets - McGoodwin.Net
    Julia sets are named after Gaston Julia. (He is depicted in the photo as a young man—one of the few photos available before he suffered a disfiguring facial ...Missing: primary source
  30. [30]
    [PDF] Iteration dynamics and Julia sets of gc(z) = z2 + c for c 6= 0
    For c > 0.5, Jc is totally disconnected. Figure 2: 341. Page 9. Some Julia sets Jc for gc(z) = z2 + c c = 0.0 c = 0.25i c = 0.5i c = 0.75i c = i c = 1.25i. For ...
  31. [31]
    [PDF] Organization of the Mandelbrot Set - Whitman People
    The Main Cardiod. The main cardiod of the Mandelbrot set consists of the values of c so that the orbit of 0 becomes eventually fixed.Missing: structure cardioid
  32. [32]
    [PDF] Parapuzzle of the Multibrot set and typical dynamics of unimodal maps
    For d ≥ 2 fixed, let M = Md = {c ∈ C : the Julia set of fc is connected} be the corresponding Multibrot set. The dynamics when c /∈ M is always trivial ...<|control11|><|separator|>
  33. [33]
    [PDF] Connectivity of the Julia sets of singularly perturbed rational maps
    Apr 11, 2019 · By Lemma 2.2(b), the Julia set of fλ is a Cantor set of circles if and only if there is a critical value which lies in the immediate super- ...
  34. [34]
    [PDF] critical orbits and the filled julia set - The University of Chicago
    Aug 28, 2022 · In this paper, we study systems modeled by the iteration of a rational function on the extended complex plane. Rational maps of the Riemann ...
  35. [35]
    [PDF] A proof of Thurston's topological characterization of rational functions
    We will give in the appendix some examples of critically finite branched mappings, which bring out some of the difficulties in the proof of Thurston's Theorem.
  36. [36]
    [PDF] Area and Hausdorff dimension of Julia sets of entire functions
    Using the results of the preceding section, we can now easily show that if the Julia set of an expanding function is "thin at infinity" then its area is zero.<|control11|><|separator|>
  37. [37]
    [PDF] Baker-1975-Normality.pdf
    The domains of normality of an entire function. 2. Lemmas needed in the Proofs. = F(ƒ). 279. Additional results about (f) are proved in [7] for rational ƒ and ...
  38. [38]
    [PDF] Algorithms for Plotting Julia Sets - Whitman People
    We will look at two algorithms for plotting the Julia set. One method is used when the Julia set is an attracting set (for example, forward iteration of the ...Missing: distance | Show results with:distance
  39. [39]
    Inverse-Iteration Method, Mu-Ency at MROB
    Dec 23, 1993 · A method of drawing Julia Sets, which exploits the fact that the iteration function can be performed in reverse, yielding two possible values of Z(n) when a ...
  40. [40]
    Inverse Iteration Algorithms for Julia Sets
    Inverse iteration algorithms are extremely fast methods to generate images of Julia sets. While they are fairly simple to understand and implement, a little ...Missing: plotting | Show results with:plotting
  41. [41]
    [PDF] Distance estimation method for drawing Mandelbrot and Julia sets
    Nov 20, 2012 · The distance estimation method (DEM) is one of several techniques commonly used for visualising Mandelbrot and. Julia sets.
  42. [42]
    [PDF] Contents 5 Introduction to Complex Dynamics - Evan Dummit
    We will then study the structure of Julia sets, which are (roughly speaking) the sets on which a complex function behaves chaotically, and which are often ...
  43. [43]
    [PDF] Images of Julia sets that you can trust
    Jan 8, 2013 · Some programs use multiple-precision floating-point arithmetic to avoid these problems, especially in deep zoom, at the cost of greatly ...
  44. [44]
    [PDF] Efficiently Generating the Mandelbrot and Julia Sets
    Aug 29, 2019 · Also, the deeper the zoom level is, the more visually appealing the resulting images become and calculation times increase significantly. The ...Missing: challenges | Show results with:challenges
  45. [45]
    [PDF] Project 2: The Inverse Iteration Method for drawing Julia sets
    Apr 28, 2020 · In this project, you will draw the Julia set of polynomials using a different algorithm than the one we used in class. Recall that the Julia ...Missing: forward distance
  46. [46]
    [PDF] Local Connectivity of Julia Sets
    In this case, the associated Julia set J is never locally connected. The basic problem is rather to decide when J is totally disconnected.
  47. [47]
    [PDF] On the dynamics of polynomial-like mappings - Cornell Mathematics
    18, 1985, p. 287 a 343. ON THE DYNAMICS. OF POLYNOMIAL-LIKE MAPPINGS. BY ADRIEN DOUADY AND JOHN HAMAL HUBBARD.Missing: potential | Show results with:potential
  48. [48]
  49. [49]
    [PDF] PERIODIC ORBITS, EXTERNALS RAYS AND THE MANDELBROT ...
    We will use the term dynamic ray (or briefly K-ray) for an external ray of the filled Julia set, and parameter ray. (or briefly M-ray) for an external ray of ...