Clifford flow
A two-coordinate recurrence traces a finite orbit. Occupancy and forward images of critical curves shape its visible tissue. Qualifying guards select it.
x′ = sin(a y) + c cos(a x)y′ = sin(b x) + d cos(b y)
A Quineling carries a finite program and a mathematical description of its body. The program calculates when you ask it to run. The renderer uses the body description to draw a pose. An operation owns a region you can select and inspect.
New here? Run the first water lesson. This guide explains why the bodies work and provides definitions to look up when using the tools. You can read the explanations or jump to a control or parameter.
Source is the complete authored program, including its body description. Editing its operations, constants, geometry, pigment or authored movement creates a new source identity. A body edit can preserve the calculation while changing the complete source.
Run inputs are observations supplied to declared input ports. In the typed workspace and task examples, changing them keeps the same source and body. In the older gallery, choosing a scenario instead writes its values into a new source. The creation workspace’s local grammar also places the data written in your thought into the program.
View controls choose a pose, a selected operation, an overlay or an existing record. They do not run a calculation. Local world controls advance Ranch social state or change participation. Ranch ticks, animation time and task execution are separate.
A quine is a program that emits its own complete source. Quinelings use a constructor that does this. Their wave and RGB genomes store recoverable source data. The picture is a visual index into that program; recovering source requires the data, not a screenshot.
After the first water lesson, use Create to choose a supported task, build it, select a step, then run. Build makes a program; Run creates evidence of what that program calculated.
[1.5,5,0.5]. It supplies the same readings to the sum program and a program with a source-authored five-liter limit./api/propose. A returned plan still passes local compilation; inspect whether it expresses your intended task.Current authoring chooses a construction from actual graph structure. A qualifying guard takes precedence, then branching, then effects, then convergence. Other pipelines use phyllotaxis. The complete selected description is retained in source.
A two-coordinate recurrence traces a finite orbit. Occupancy and forward images of critical curves shape its visible tissue. Qualifying guards select it.
x′ = sin(a y) + c cos(a x)y′ = sin(b x) + d cos(b y)
Repeated squaring of a complex number makes branching boundaries at several scales. Fanout of at least two selects this construction when no qualifying guard takes precedence.
z′ = z² + c
A small winding wraps around a larger ring. An effect operation selects it when the earlier rules do not apply.
Rolled ribbons follow an expanding spiral. Convergence of at least two inputs selects it after the earlier rules.
r = 0.1 exp(growth × θ)
Tapered, folded petals turn by the golden angle. This is the fallback for other pipelines.
golden angle = π(3 − √5)
“Guard” here follows the authoring classifier: it recognizes named guard/filter/if/condition operations and certain computed action guards. A comparison alone does not necessarily select Clifford. Renaming a program does not select its portrait.
These are bounded numerical constructions. Julia is a finite approximation of a fractal boundary. A positive finite expansion estimate for a Clifford orbit is evidence about that tested sample, not proof of chaos. More samples can reveal detail without establishing an infinite mathematical result.
(cos θ, sin θ) traces a unit circle. Multiplying a sine by an amplitude sets how far it moves; multiplying its input by a frequency changes how many oscillations fit.exp(x) means e raised to x, where e is about 2.718. In a logarithmic spiral the radius grows by a repeated factor as the angle advances, rather than adding the same distance each turn.x + iy, with i² = −1. You can picture it as a point (x,y). A recurrence repeatedly feeds its result back into the same rule. Julia’s rule squares that number and adds the fixed number c.The fields below belong to source unless marked View. They are advanced JSON authoring fields, not sliders offered everywhere. Ranges are admitted validator bounds. An “authored” value is what the current author chooses; a default is identified separately. Fixed tags identify a supported formula and are not artistic controls.
| Field | Bounds or choice | Meaning and applicability |
|---|---|---|
model | woven-field-experimental | Fixed construction-record tag. |
mechanism | Five current families; retained alternatives below | Selects the geometric formula, not a task operation. |
seed | Integer 0–4,294,967,295; API default 1 | Repeatable variation. Create derives it from graph and candidate index. |
topology.depth, fanout, convergence, guards, effects | Each integer 0–64 | Retained graph summaries used during authoring. Validation bounds them; it does not generally recompute equality with the graph. |
strands | Integer 8–40; author chooses 8–14 | Material component count. Phyllotaxis multiplies it by whorls for chart count. |
folds | Integer 2–9 | Fold count used by relevant retained folded constructions. Not an effective knob in every family. |
turns | .5–4 | Winding in retained pleated-braid construction. Not a universal winding control. |
territories[].node | Graph operation ID | Owner of the material patch. |
territories[].component | Integer 0–strands−1 | Component containing the patch. |
territories[].u | Two endpoints in [0,1], low < high | Patches exactly cover each component without gaps or overlap, and cover every graph operation. At most 128 patches. |
phase View | Usually one 0–2π cycle | Pose input, independent of task time. |
budget View | 128–100,000; floored to integer | Frame point count. Public woven-frame default 22,000; individual pages supply their own budgets. Contour vertices are additional. |
crests View | Boolean, default true | Include separately sampled contour or filament lines. |
The four map coefficients shape the native recurrence. Their effects need not vary monotonically: a larger coefficient does not simply mean a larger body. Embedding fields deform those coordinates with a fixed camera.
| Field | Bounds / authored value | Effect |
|---|---|---|
dynamics.system / method | clifford / iterate | Fixed recurrence tags. |
parameters [a,b,c,d] | Each −2.5–2.5; authored [−1.4,1.6,1,.7] | Coefficients in the displayed Clifford equations. |
initial [x,y] | Each −3–3; authored .1–.3 | Starting coordinates. |
burn | Integer 32–4096; authored 256 + 64×guards | Discard initial settling iterations. |
iterations | Integer 4096–131072; authored 32768 + 1024×depth | Number of retained orbit points. |
densityGrid | Integer 64–256; authored 160 | Occupancy grid resolution per axis. |
criticalImages | Integer 1–16; author chooses up to 14 | Forward-map stages used for critical curves. |
embedding.model | bounded-native-warp | Fixed deformation tag. |
embedding.scale [x,y] | Each .2–.5 | Size native coordinates along each axis. |
embedding.warp [x,y] | Each 0–.16 | Primary moving displacement amounts. |
embedding.overtone [x,y] | Each 0–.08 | Additional moving displacement. |
embedding.frequency [x,y] | Each 1–4 | Spatial deformation-wave rates. |
embedding.shear | −.2–.2 | Slant x according to y. |
| Field | Bounds / authored value | Effect |
|---|---|---|
model | quadratic-julia | Fixed recurrence tag. |
parameter [real,imaginary] | Each −1–1; authored [−.745,.113] | The fixed complex number c in z′=z²+c. |
grid | Integer 128–256; authored 192 | Sample resolution per axis. |
iterations | Integer 32–96; authored 48 + 4×min(8,depth) | Maximum recurrence steps at each point. |
escape | Fixed 2 | Radius beyond which a point is marked escaped. |
bounds [xmin,xmax,ymin,ymax] | Each −2–2; low < high per axis; authored [−1.55,1.55,−1.2,1.2] | Sampled rectangle in the complex plane. |
levels | 3–12 strictly increasing values, each 2 through iterations−1 | Escape-field contour levels. Values need not be integers. Authored levels come from [3,5,8,12,18,26,36,48], below the iteration cap. |
embedding.scale | Two values .2–.6 | Axis sizes. |
embedding.warp | Two values 0–.2 | Moving displacement amounts. |
embedding.frequency | Two values 1–4 | Spatial wave rates. |
embedding.shear | −.2–.2 | Slant x according to y. |
These records share nine geometry fields, but each formula uses a different subset. A retained, unused field still belongs to source; changing it need not visibly alter that family.
| Field | Range | Visible use |
|---|---|---|
growth | .12–.35 | Mantle: exponential radial growth. Unused in toroidal and phyllotaxis. |
spread | .5–1.2 | Mantle ribbon width; toroidal major radius; phyllotaxis petal length. |
curl | .4–1.6 | Mantle angular travel; toroidal minor radius, winding and vertical proportions; phyllotaxis transverse rolling. |
asymmetry | 0–.4 | Toroidal major-radius imbalance. Unused in mantle and phyllotaxis. |
offset | 0–2π | Authored angle/phase offset affecting placement and folds. Distinct from live phase. |
frequency | Integer 2–8 | Spatial fold/ripple rate. |
lobes | Integer 3–9 | Mantle radius modulation; toroidal major-radius lobes. Unused in phyllotaxis. |
twist | 1–3 | Toroidal minor-angle winding. Unused in mantle and phyllotaxis. |
whorls | Integer 2–4 | Phyllotaxis chart-count multiplier. Unused in mantle and toroidal. |
Current authoring chooses growth .16–.28, spread .7–1, curl .7–1.5, asymmetry .12–.34 and offset around a full circle. Frequency, lobes, twist and whorls use graph features.
Mantle and phyllotaxis can retain geometry.material; toroidal rejects it. Its fixed model is projected-compression. Neighboring chart samples estimate projected area so compressed folds can brighten.
| Field | Range / authored value | Effect |
|---|---|---|
rows / columns | Fixed 48 / 15 | Finite material-grid resolution. |
focus | 1–4; authored 2 | Exponent making highlights more selective for compressed regions. |
quiet | .02–.2; authored .12 | Baseline filament opacity. |
gain | .3–.9; authored .65 | Additional opacity from compression. |
Role colors group operations: cyan for input, blue for process, amber for judgment and evidence, violet for quote and reconstruction, coral for action, green for report. Operation labels identify individual operations. The exact RGB genome is a separate encoding of source bytes.
A recorded-value lens reads one declared numeric quantity from a recorded task. Its fixed violet-to-pale-gold scale keeps the same meaning across runs. Values below or above its domain retain their original number and receive an explicit status. Zero is valid; missing, invalid and previous-source measurements remain distinct.
| Field | Bounds | Meaning |
|---|---|---|
chroma.model / palette | material-territories / roles-1 | Fixed material and role dictionary. |
strength | 0–1; QDL create default .85, Create workspace .35 | Blend neutral material with semantic color. |
lens.kind | scalar | Read a finite numeric quantity. |
id / label / unit | 1–64 / 1–80 / 0–24 Unicode code points | Identifier, visible name and displayed unit. |
domain [low,high] | Finite low < high, with finite difference | Fixed color scale; never automatically fitted to the current values. |
threshold | Optional finite value inside domain | Legend reference, not an executable guard. |
bindings | 1–64 distinct node IDs | Operations whose recorded output supplies the quantity. |
path | 0–8 segments | Empty means the complete output. Segments are property names of 1–64 code points or indices 0–511. Prototype-related keys are forbidden. Lookup accepts only finite numbers without coercion. |
All bindings share the declared quantity, unit and scale. A missing or incompatible value cannot masquerade as zero. The declaration belongs to source; active lens, selected cycle and current measured values belong to view/runtime state. Rendering a lens does not evaluate a task.
Quinelings retains several admitted body descriptions. Their fields have their own meaning. The experimental visual capsule keeps a complete task constructor alongside an authored body; it is outside the frozen QDL 1 task contract. The frozen interpreter refuses capsules; the explicit adapter handles them. See the QDL 1 contract and experimental design reference.
The older gallery families are filament, jelly, moth, coral, ribbon, nautilus, seed, torus, comet and bloom. These folded-membrane fields are not universal controls for the five current woven constructions.
| Field | Range; default | Meaning |
|---|---|---|
organ.model | rosette | Fixed radial organ formula. |
baseRadius | .01–.08; .03 | Base organ size. |
degreeGain | 0–.006; .004 | Extra radius per incoming or outgoing connection. |
literalGain | 0–.003; .001 | Extra radius from a bounded summary of literal magnitude. |
amplitudes [a,b] | Each 0–.45; [.2,.13]; sum <1 | Opcode-related and output-degree-related radial ripples. Base radius with gains caps at .16; the amplitude condition keeps radial extent positive. |
filament.model | pinned-sine | Curve attached to both declared endpoints. |
bend | 0–.08; .04 | Dependency-curve bow. |
frequencyGain | 0–.2; .07 | Opcode-frequency contribution to bow. |
ripple | 0–.3; .16 | Moving modulation along the curve, preserving endpoints. |
ink.ghostAlpha / secondaryAlpha / ridgeAlpha | 0–1, strictly increasing; .09 / .42 / .88 | Weak, intermediate and strong opacity levels. Alpha means opacity: zero transparent, one opaque. |
ink.neutral | Lowercase six-digit hex color; #f0f1eb | Neutral material color. |
| Field | Range; default | Effect |
|---|---|---|
clock / reducedMotion | separate / freeze | Presentation is independent of execution; reduced motion freezes it. |
phaseRate | 0–.05; .038 | Clock speed: phase increment = 24 × phaseRate × elapsed seconds. |
rhythm.model | coupled-harmonic | Fixed motion formula. |
mode | periodic / quasiperiodic; periodic | Integer harmonics or an irrational √2 secondary frequency. |
rate | .25–2; 1 | Motion response speed multiplier. |
breath | 0–.18; .06 | Coherent lateral expansion and contraction. |
wave | 0–.18; .055 | Secondary bending amount. |
waveNumber | 0–4; 1.6 | Spatial wave count; rounded on closed backbones. |
lag | 0–2; .9 | Trailing-tissue phase delay. |
asymmetry | 0–.8; .28 | Vary speed through a stroke and recovery without reversing phase. |
overtone | 0–.35; .17 | Weight of an additional harmonic. |
A periodic cycle takes 2π / (24 × phaseRate × rhythm.rate) seconds when both rates are positive. Omitted optional rhythm records use a renderer fallback without inserting source fields. Family presets differ. These controls do not drive the current woven-family formulas merely because a surrounding design retains them.
| Field | Range | Effect |
|---|---|---|
surface.model | folded-ribbon | Fixed membrane construction. |
ribbons | Integer 8–36 | Base ribbon count; graph branches add up to six, capped at 36. |
crests | Integer 3–6 | Continuous interior highlight tracks. |
spread | .02–.24 | Ribbon width. |
folds | Integer 2–9 | Longitudinal fold rate; graph depth can increase effective count, capped at nine. |
taper | .4–2.5 | Exponent shaping the width envelope. |
asymmetry | 0–.35 | Uneven width and local offset. |
depth | 0–.35 | Depth excursion. |
twist | 0–3 | Rotation of the ribbon along its backbone. |
phaseLag | 0–2 | Longitudinal membrane delay, combined with rhythm lag. |
samples | Integer 4000–24000 | Source-authored point budget. Legacy thumbnails cap it at 4200; crest vertices are additional. |
light.model | density-crest | Fixed compression-inspired material rule. |
recessAlpha | .015–.12 | Quiet-material opacity. |
crestAlpha | .16–.65, greater than recessAlpha | Peak compressed-material opacity. |
depthContrast | 0–.8 | Strength of depth modulation in opacity. |
composition.occupancy | .6–.84 | Canvas fraction occupied by the estimated envelope. |
lean / yaw / pitch | Each −.5–.5 | Shear and rotations. Authored composition is source even though it affects presentation. |
focus | .15–.8 | Location of focal width and brightness. |
Framing uses sampled bounds with padding. Compression measures projected narrowing; it is not a complete physical light-transport model or a proof of enclosure at every possible phase.
Every rule makes a smaller rotated branch at a parent attachment coordinate. The retained depth creates a finite tree of charts. This mechanism remains admitted but is no longer the default for fanout.
| Field | Bounds | Meaning |
|---|---|---|
model | contractive-branch-charts | Fixed construction. |
depth | Integer 2–6 | Finite branch generations. |
root | Two coordinates −1–1 | Root position. |
length / angle | .3–.8 / −π–π | Root size and direction. |
motion | 0–.25 | Branch angular motion amount. |
transforms | 2–3 rules | Each has scale .35–.67, angle −1.2–1.2, attach .4–1. Scale contracts; angle turns; attach locates the child along its parent. |
width | Optional .08–.3 | Chart width coefficient. |
chart / rollTurns | Optional rolled-scroll / 2–4.2 | Scroll chart and its rolling amount. rollTurns requires rolled-scroll. |
A fixed-step numerical integration samples the classical Lorenz system. The visible window travels along that retained orbit.
| Field | Bounds | Meaning |
|---|---|---|
system / method | lorenz / rk4 | Fixed differential system and fourth-order numerical method. |
sigma / rho / beta | Fixed 10 / 28 / 8⁄3 | Classical system coefficients. |
initial | Three coordinates −2–2 | Starting state; effectively stationary x/y axis excluded. |
dt | .002–.01 | Numerical time step. |
burn | Integer 256–4096 | Discarded transient steps. |
steps | Integer 2048–16384 | Stored orbit budget. |
window | Integer 256–4096 and ≤ floor((steps−5)/2) | Visible traveling span; the relationship leaves enough stored orbit for its movement. |
A retained construction of seeded folded sheets. Shared strands, folds, turns and territory fields apply. Its seed resolves finite lane placements, widths and phase offsets. The complete record reproduces that construction.
Assembly is another admitted anatomy model. It attaches spines and chambers into a bounded hierarchy. Joint attachment and computational dependency are different relationships.
| Field | Bounds | Meaning |
|---|---|---|
model / compiler / seed | assembly / qdl-assembly-experimental / uint32 | Construction tags and repeatable variation. |
components | 1–16; unique IDs | Body parts. |
spine.length | .12–1.2 | Axial length. |
spine.radii | Two values .015–.16 | Root and tip radii, interpolated along the spine. |
spine.bend | Two values −.2–.2 | Lateral/depth bending coefficients. |
chamber.axes | Three values .04–.35 | Ellipsoidal axis sizes. |
parent.component | An earlier component; first root has null parent | Attachment hierarchy, at most four levels and four children per parent. |
parent.socket.u / v | Each 0–1 | Attachment location on the parent. |
parent.angle / hinge | −π–π / −.12–.12 | Rest rotation and moving joint coefficient. Cumulative absolute hinge along a path ≤.35. |
owners | 1–128 positive patches | Node, component and u interval. Exactly cover every component and all graph operations. |
gesture.kind | gather / unfurl / glide / hover | Staged movement template. |
gesture.strength | 0–1 | Template movement amount. |
gesture.ticks | Four integers 100–700, sum 1000 | Relative prepare, stroke, recovery and rest durations. Smooth quintic interpolation connects stages. |
The optional heredity model is bounded-traits-experimental. It retains two parent hashes, a seed digest, a uint32 nonce and six integer traits from −1000 to 1000. Hashes are lowercase SHA-256 strings. Their presence asserts ancestry; it does not independently prove it.
Inheritance resolves bounded offsets through the applicable body model and its existing domain clamps. These values are not universal percentages and do not change task literals in a body-only recipe.
A graph is a finite collection of operations connected by ordered inputs. A node ID names an operation; its opcode chooses the calculation; its parameters configure that calculation. A source constant differs from an external input supplied for one run. Output IDs select which results the task returns.
| Operation | Parameters | Meaning |
|---|---|---|
| literal | value | JSON constant stored in source. |
| map | kind; factor for multiply | Square each numeric value or multiply by a fixed factor. |
| sort | optional key, descending | Sort by a record field if specified; stable ascending by default. |
| dedupe | optional key | Keep the first distinct value or field value. |
| filter / compare | operator, value; optional key for filter | Use eq, ne, gt, gte, lt or lte: equal, unequal, greater, at least, less or at most. |
| get | path | Dotted own-property path through a record; prototype keys forbidden. |
| clamp | min, max | Keep a number within a fixed interval. |
| action | allowed, action | Simulate the named action only when permission and the input guard are both true. No network action. |
| report | labels | Unique names matching the ordered inputs. |
| bfs | start, goal | Find a route through the supplied graph around supplied blocked nodes. |
| consensus | required | Positive integer support threshold. First vote per source counts; ties choose the earliest first-seen choice. |
| retry | maxAttempts | Integer 1–8. Review supplied retry/ok/unknown outcomes until stopped or exhausted. |
| evidence | optional claim | Select a claim or all claims. First source-and-claim report counts; repeated provenance does not inflate evidence. |
Sum, mean, min, max, weighted mean, length, choose, budget, allocate and schedule obtain their varying data from inputs. Weighted mean requires nonnegative weights with positive total. Budget never allocates more than available; allocate honors request order. Schedule requires valid acyclic dependencies. The program contract defines exact input and output shapes.
Legacy task graphs have at most 64 nodes, bounded arrays of at most 512 entries and repeat counts 1–8. Values must be finite JSON. Declared connections must form an acyclic graph. A valid body does not make an invalid task valid. For the separate typed task profile, use the QDL 1 reference and typed workspace.