Gsd-skill-creator holomorphic-dynamics

install
source · Clone the upstream repo
git clone https://github.com/Tibsfox/gsd-skill-creator
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/Tibsfox/gsd-skill-creator "$T" && mkdir -p ~/.claude/skills && cp -r "$T/src/holomorphic/skills/holomorphic-dynamics" ~/.claude/skills/tibsfox-gsd-skill-creator-holomorphic-dynamics && rm -rf "$T"
manifest: src/holomorphic/skills/holomorphic-dynamics/SKILL.md
source content

Holomorphic Dynamics Educational Pack

Overview

This educational pack teaches holomorphic dynamics from first principles through ten progressive modules. Starting with iteration on the complex plane (HD-01) and building through fixed points, fractal sets, topology, and deep learning connections, the pack culminates in data-driven dynamics with Dynamic Mode Decomposition (HD-09) and Koopman operator theory (HD-10).

The pack is self-contained: all complex arithmetic, iteration engines, fractal renderers, and DMD algorithms are implemented from scratch with no external math libraries. Every algorithm is transparent and educational rather than optimized for production performance.

What you will learn:

  • How iteration of simple functions on the complex plane produces fractal structures of extraordinary complexity
  • The classification of fixed points by their multiplier and what each classification means dynamically
  • Why the Mandelbrot set is the "atlas" of all quadratic Julia sets
  • The Fatou-Julia dichotomy: stable domains versus chaotic boundaries
  • How period doubling cascades lead to chaos through Feigenbaum universality
  • The topological properties that constrain what dynamical systems can do
  • The surprising bridge between holomorphic dynamics and deep learning
  • How skill-creator itself can be modeled as a dynamical system on the complex plane, with skills as orbits converging to fixed points
  • Data-driven dynamics: extracting coherent spatiotemporal modes from snapshot data using DMD and its variants
  • The Koopman operator: lifting nonlinear dynamics into an infinite- dimensional linear framework where spectral analysis applies

Who this is for:

Developers, mathematicians, and curious minds who want to understand the mathematics behind fractals, chaos, and data-driven modeling. No prior knowledge of complex analysis is assumed; each module builds on the previous one.

Quick Start

Import any function directly from the holomorphic barrel:

import {
  computeOrbit, renderMandelbrot, classifyFixedPoint,
  dmd, classifyDMDEigenvalue, bridgeDMDToSkillDynamics,
} from '../src/holomorphic';

Each module in

src/holomorphic/modules/HD-XX/
contains:

  • content.md -- Educational text explaining the mathematics
  • try-session.ts -- Interactive TypeScript code to experiment with (some modules also have try-session.py for Python/PyDMD examples)

To run a try-session, import and call its exported function:

import { runTrySession } from '../src/holomorphic/modules/HD-01/try-session';
runTrySession();

Module Guide

HD-01: Iteration on the Complex Plane

The foundation. Defines orbits of the quadratic map f(z) = z^2 + c, escape radius, escape time, and the four fundamental orbit behaviors (converging, periodic, chaotic, escaping). Introduces the computational engine behind all of holomorphic dynamics.

Path:

src/holomorphic/modules/HD-01/

HD-02: Fixed Points and Stability

Analyzes what happens when orbits converge. Classifies fixed points by their multiplier lambda: superattracting (|lambda| = 0), attracting (|lambda| < 1), indifferent (|lambda| = 1), and repelling (|lambda| > 1). Covers the linearization theorem and basins of attraction.

Path:

src/holomorphic/modules/HD-02/

HD-03: The Mandelbrot Set

The parameter space of the quadratic family. Defines the Mandelbrot set M as the set of c-values for which the critical orbit remains bounded. Covers the cardioid and period bulbs, the relationship between M and Julia sets, and escape-time rendering algorithms.

Path:

src/holomorphic/modules/HD-03/

HD-04: Julia Sets and Fatou Sets

The dynamical plane partition. For each c, the Julia set J(f) is the boundary between chaos and stability, while the Fatou set F(f) is the complement of stable, predictable behavior. Covers the Fatou-Julia dichotomy, connected versus Cantor dust Julia sets, and the relationship between the Mandelbrot set and Julia set topology.

Path:

src/holomorphic/modules/HD-04/

HD-05: Cycles and Period Doubling

Periodic orbits and the route to chaos. Covers period-n cycles, the period-doubling cascade, Feigenbaum's universal constant (delta = 4.669...), and bifurcation diagrams. Shows how simple parameter changes drive a system from order through period doubling into chaos.

Path:

src/holomorphic/modules/HD-05/

HD-06: Topology of the Complex Plane

The geometric and topological properties that constrain dynamics. Covers connectedness, simple connectedness, the Riemann sphere, conformal maps, and how topology determines the possible behaviors of holomorphic maps. Includes references to Meyerson, Greene-Lobb, and the MAT327 course.

Path:

src/holomorphic/modules/HD-06/

HD-07: From Dynamics to Deep Learning

The bridge between holomorphic dynamics and neural networks. Shows how deep learning can be viewed as iterated function composition, how activation functions relate to holomorphic maps, and how concepts like fixed points, stability, and bifurcation appear in the training dynamics of neural networks.

Path:

src/holomorphic/modules/HD-07/

HD-08: Skill-Creator as a Dynamical System

Maps the skill-creator system onto the complex plane. Skills are modeled as points z = r * e^(itheta) where r is distance from mastery and theta encodes the skill domain. Skill iteration is a contractive affine map f(z) = alphaz + beta. Classifies skill dynamics using the same fixed-point taxonomy from HD-02: superattracting (compiled skills), attracting (converging skills), indifferent (stalled skills), and repelling (degrading skills). The Fatou-Julia classification separates stable skill domains from chaotic boundary regions.

Path:

src/holomorphic/modules/HD-08/

HD-09: Dynamic Mode Decomposition

Data-driven dynamics extraction. DMD takes snapshot matrices of observed system states and extracts spatiotemporal modes with associated eigenvalues (growth/decay rates and frequencies). Covers the standard DMD algorithm with SVD, eigenvalue classification on the unit circle, and four variants: DMDc (control inputs), mrDMD (multi-resolution time-scale separation), piDMD (physics-informed constraints), and BOP-DMD (robust bootstrap optimization). Includes Python try-session using PyDMD.

Path:

src/holomorphic/modules/HD-09/

HD-10: Koopman Operator Theory

The theoretical foundation for data-driven dynamics. The Koopman operator K acts on observable functions rather than state vectors, lifting nonlinear dynamics into an infinite-dimensional linear space where spectral decomposition applies. Covers Extended DMD (EDMD) as a finite-dimensional approximation to K, dictionary-based lifting with polynomial and RBF observables, and the bridge from DMD eigenvalues to skill dynamics classifications. Includes Python try-session.

Path:

src/holomorphic/modules/HD-10/

Core API

Complex Arithmetic (
complex/arithmetic.ts
)

FunctionSignatureDescription
add
(a, b) => ComplexNumber
Complex addition
sub
(a, b) => ComplexNumber
Complex subtraction
mul
(a, b) => ComplexNumber
Complex multiplication
div
(a, b) => ComplexNumber
Complex division
magnitude
(z) => number
Absolute value |z|
argument
(z) => number
Phase angle arg(z)
conjugate
(z) => ComplexNumber
Complex conjugate
cexp
(z) => ComplexNumber
Complex exponential e^z
cpow
(z, n) => ComplexNumber
Complex power z^n

Constants:

ZERO
,
ONE
,
I

Iteration Engine (
complex/iterate.ts
)

FunctionDescription
computeOrbit
Iterate f from z_0, collecting orbit points until escape or max iterations
detectPeriod
Detect periodicity in an orbit using Floyd's algorithm
computeMultiplier
Compute the derivative multiplier at a fixed point
classifyFixedPoint
Classify a fixed point by its multiplier magnitude
isRationalMultipleOfPi
Check if an angle is a rational multiple of pi

Fractal Renderer (
renderer/core.ts
,
renderer/helpers.ts
)

FunctionDescription
renderMandelbrot
Render the Mandelbrot set as an escape-time grid
renderJulia
Render a Julia set for parameter c as an escape-time grid
renderBifurcation
Render a bifurcation diagram over a parameter range
renderOrbitPlot
Render an orbit as a sequence of (re, im) points
renderPhasePortrait
Render a phase portrait for a region of the complex plane
pixelToComplex
Map pixel coordinates to complex plane coordinates
applyZoom
Compute zoomed bounds centered on a complex point
colorMap
Map escape time to RGB color
colorFromScheme
Map a normalized value to a color using a named scheme

Eigenvalue Visualization (
renderer/eigenvalue-plot.ts
)

FunctionDescription
plotEigenvaluesOnUnitCircle
Plot DMD eigenvalues on the unit circle with classification colors

Skill Dynamics (
dynamics/skill-dynamics.ts
)

FunctionDescription
classifySkillDynamics
Classify a skill's dynamical behavior from its position
computeSkillOrbit
Compute the orbit of a skill under the contractive affine map
detectSkillFixedPoint
Find the convergence point of a skill orbit
computeSkillMultiplier
Compute the multiplier at a skill's fixed point
classifyFatouJulia
Classify a skill as Fatou (stable) or Julia (boundary/chaotic)
clampAngularVelocity
Clamp angular velocity to prevent unrealistic skill jumps

DMD Core (
dmd/dmd-core.ts
)

FunctionDescription
dmd
Standard Dynamic Mode Decomposition via SVD
svd
Educational SVD using power iteration with deflation
classifyDMDEigenvalue
Classify eigenvalue: stable, unstable, neutral, oscillatory
reconstructFromDMD
Reconstruct snapshot matrix from DMD result

DMD Variants

FunctionModuleDescription
dmdc
dmd/dmd-control.ts
DMDc: DMD with control inputs
mrdmd
dmd/dmd-multiresolution.ts
mrDMD: multi-resolution time-scale separation
pidmd
dmd/dmd-physics.ts
piDMD: physics-informed constraints on eigenvalues
bopdmd
dmd/dmd-robust.ts
BOP-DMD: robust bootstrap optimization
edmd
dmd/koopman.ts
EDMD: Extended DMD for Koopman approximation
liftDictionary
dmd/koopman.ts
Lift state vectors into dictionary function space

Bridge (
dmd/skill-dmd-bridge.ts
)

FunctionDescription
bridgeDMDToSkillDynamics
Map DMD eigenvalues to skill dynamics classifications

Learning Path

The recommended progression through the modules follows the mathematical dependency chain. Each module builds on concepts from previous ones:

HD-01: Iteration on the Complex Plane
  |
  v
HD-02: Fixed Points and Stability
  |
  v
HD-03: The Mandelbrot Set  -->  HD-04: Julia Sets and Fatou Sets
  |                                |
  v                                v
HD-05: Cycles and Period Doubling
  |
  v
HD-06: Topology of the Complex Plane
  |
  v
HD-07: From Dynamics to Deep Learning
  |
  v
HD-08: Skill-Creator as a Dynamical System
  |
  v
HD-09: Dynamic Mode Decomposition
  |
  v
HD-10: Koopman Operator Theory

Core track (HD-01 through HD-06): Pure mathematics of holomorphic dynamics, building from iteration through topology.

Application track (HD-07 through HD-08): Connections to deep learning and skill-creator modeling.

Data-driven track (HD-09 through HD-10): Modern data-driven dynamics methods that connect classical spectral theory to practical computation.

Connections

Skill-Creator Integration (HD-08)

The skill-creator system maps naturally onto holomorphic dynamics. Each skill occupies a position z = r * e^(itheta) on the complex plane, where r measures distance from mastery (r = 0 is fully compiled) and theta encodes the skill's domain. Iteration of the contractive affine map f(z) = alphaz + beta models how skills evolve through practice.

The fixed-point classification from HD-02 directly maps to skill states:

DynamicsSkill StateMeaning
SuperattractingCompiledSkill is fully internalized, zero effort
AttractingConvergingSkill is improving with practice
Rationally indifferentStalledSkill is stuck at a plateau
Irrationally indifferentOscillatingSkill quality fluctuates unpredictably
RepellingDegradingSkill is being forgotten faster than practiced

The Fatou-Julia classification from HD-04 separates stable skill domains (predictable improvement) from chaotic boundary regions (unpredictable skill dynamics at the edge of competence).

Deep Learning (HD-07)

Neural network training can be viewed as iteration of a high-dimensional map on parameter space. Learning rate acts like the parameter c in the quadratic family: too small and training converges slowly (attracting fixed point), too large and it diverges (escaping orbit), and at critical values the system exhibits period doubling and chaos.

Bounded Learning (piDMD)

Physics-informed DMD (piDMD) constrains eigenvalues to lie on the unit circle, enforcing conservation laws. This is analogous to bounded learning in skill-creator: the system cannot grow without bound or decay to zero, but must preserve certain invariants during evolution.

References

Textbooks and Courses

  • Milnor, J. Dynamics in One Complex Variable (3rd ed., Princeton University Press, 2006). The definitive graduate text on holomorphic dynamics, covering iteration theory, the Mandelbrot set, and Julia sets with full proofs.

  • MAT327: Introduction to Topology (University of Toronto). Covers the topological foundations used in HD-06: connectedness, compactness, the fundamental group, and covering spaces.

Papers

  • Schmid, P.J. "Dynamic mode decomposition of numerical and experimental data." Journal of Fluid Mechanics 656 (2010): 5-28. The foundational DMD paper.

  • Tu, J.H., et al. "On dynamic mode decomposition: theory and applications." Journal of Computational Dynamics 1.2 (2014): 391-421. Rigorous connection between DMD and the Koopman operator.

  • Kutz, J.N., et al. Dynamic Mode Decomposition: Data-Driven Modeling of Complex Systems. SIAM, 2016. Comprehensive treatment of DMD variants including DMDc, mrDMD, and applications.

  • Brunton, S.L., et al. "Discovering governing equations from data by sparse identification of nonlinear dynamical systems." PNAS 113.15 (2016): 3932-3937. SINDy framework connecting to Koopman.

  • Baddoo, P.J., et al. "Physics-informed dynamic mode decomposition (piDMD)." Proceedings of the Royal Society A 479.2271 (2023). Constraining DMD eigenvalues using physical invariants.

Video

  • Parker, M. "The Mandelbrot Set" (Numberphile). Accessible introduction to the Mandelbrot set for general audiences.

Software

  • PyDMD (https://github.com/mathLab/PyDMD). Python library for DMD and its variants. Used in the HD-09 and HD-10 Python try-sessions for comparison with the educational TypeScript implementations.

Project References

Detailed reference notes are available in module directories:

  • modules/HD-06/references/
    -- Meyerson, Greene-Lobb, MAT327
  • modules/HD-09/references/
    -- PyDMD library documentation