Docs
How to use enumeratio and notatio, package by package. Each package's docs live in the package itself (its README, and a docs/ folder for longer pages), and read the same here and on GitHub.
- Guides — the walkthroughs of the mathematics, in reading order. Each one is a page of the package it introduces.
- Symbol reference — every head, with examples that are also its tests. The reference overview lists the rest: collections, statistics, maps, domains, formats and components.
- Explorations — fewer words, more dials: one function per page, every constant on a slider.
- Worksheet and notebook — the two kinds of sheet. Command line: the same evaluation in a terminal, also live in the browser as a REPL and a command line.
- Playground — every notatio component on its own page.
How the packages fit together, and which side of the enumeratio/notatio line each sits on, is on the wiki's Packages page.
Interface
@enumeratio/boxes- Wolfram-style box primitives: the presentation tree between an expression and its rendering, with MathML, LaTeX and text serialisers.
@enumeratio/cli- notatio on the command line: a Wolfram-style REPL and one-shot evaluator for compute-engine with the enumeratio symbols declared.
@enumeratio/components- The notatio-* custom elements (Lit): every symbol that draws or controls, built on @enumeratio/frontend.
Components, one at a time, Notebook, Worksheet, Input, Output, Cell, Verification, Manipulate, Controls, Environments, Terminal @enumeratio/formats- A Wolfram-style format registry with Import/Export over MathJSON, Wolfram, TeX, code, and image formats.
@enumeratio/frontend- The base of the interface: the symbol-to-component map and its lowering, the AST as a vdom, the control contract, the arithmetic of scrubbing and playback, the pure SVG renderers. No UI framework.
@enumeratio/raster- Rasterize themeable SVG to PNG (Wolfram's Rasterize) via resvg -- no DOM, for Node consumers.
Arithmetic
@enumeratio/adeles- Adèles and idèles over Q for @cortex-js/compute-engine: profinite numbers (Ẑ and Q̂) known modulo a rational, adèles, idèles, profinite Fibonacci and the GL_n(Q̂) = GL_n(Ẑ)·GL_n⁺(Q) factorisation — a port of Hertogh's Sage `adeles`.
Adèles and Idèles @enumeratio/complex-numerals- Numbers written in a complex base: radix expansions over the Gaussian and Eisenstein integers (twindragon, quater-imaginary, Gosper island), as lattices to draw.
Complex Bases @enumeratio/number-theory- Number theory past Z/m for @cortex-js/compute-engine: Gaussian integers, rational reconstruction, Hermite normal form and integer valuations, all over bigints.
Quadratic Integers, Orders and Algebraic Integers @enumeratio/numerals- Numeral-system extensions for @cortex-js/compute-engine: IntegerDigits/FromDigits over radix, mixed-radix, factoradic, balanced, negative, bijective, Zeckendorf, combinatorial and residue systems.
Numeral Systems, b-adic Numbers @enumeratio/residues- Modular arithmetic for @cortex-js/compute-engine: residues, CRT, factoring, every r-th root of a residue (PowerModList), discrete logarithms, primitive roots, and ResidueClass — an element of Z/m as a value — all over bigints.
Combinatorics
@enumeratio/combinatorics- Combinatorial collections and carriers for @cortex-js/compute-engine, merged wholesale ahead of per-area carving (https://github.com/enumeratio/enumeratio/wiki/Speculative-Combinatorics-Layering-and-Plausible).
Glyphs, Ranking and Unranking @enumeratio/polytope- Polytopes as face posets: the permutahedron, simplex and cross-polytope, with each face's dimension, barycentre and containment — and a projection into scene space.
Polytope @enumeratio/statistics- Probability distributions and random processes, defined as Epsil expressions.
Algebras
@enumeratio/diagram- Diagram-algebra extensions for @cortex-js/compute-engine — the partition algebra and its subalgebras (Brauer, Temperley–Lieb, Motzkin, rook, symmetric group), whose bases are combinatorial diagrams.
Diagram Algebras @enumeratio/geometric- The geometric-algebra layer over @enumeratio/hypercomplex: grade projection, the outer and regressive products, the contractions, the involutions and the Poincare dual.
@enumeratio/groupalgebra- Group-algebra extensions for @cortex-js/compute-engine: cyclic, dihedral and product groups, their group algebras, conjugacy classes and centres.
Group Algebras @enumeratio/hecke- Iwahori-Hecke algebra extensions for @cortex-js/compute-engine: the q-deformation of the symmetric group algebra, with T-basis multiplication over Z[q].
Hecke Algebras @enumeratio/hopf- Combinatorial Hopf algebra extensions for @cortex-js/compute-engine: NSym and QSym on compositions, with product, coproduct and antipode.
Combinatorial Hopf Algebras @enumeratio/hypercomplex- Hypercomplex-number extensions for @cortex-js/compute-engine — multicomplex, split/perplex, dual and Clifford unit families as ordinary subscripted symbols.
Hypercomplex Algebras, Finite: ℤ/m and the places @enumeratio/incidence- Incidence-algebra extensions for @cortex-js/compute-engine: finite posets, the zeta and Moebius functions, and Moebius inversion.
Incidence Algebras @enumeratio/quiver- Path-algebra extensions for @cortex-js/compute-engine: quivers, their paths, and the path algebra kQ — finite-dimensional exactly when the quiver is acyclic.
Path Algebras
Groups, words and knots
@enumeratio/braid- Braid groups for @cortex-js/compute-engine: the Artin presentation, positive braids and their closures, the Burau representation, Alexander polynomials, torus knots, and the Lorenz braids of modular geodesics.
Knots and Braids, Torus Knots, The Lorenz Flow @enumeratio/modular- The modular group PSL(2,Z) for @cortex-js/compute-engine: S/T and L/R words, continued fractions, the Stern-Brocot tree, hyperbolic conjugacy classes as necklaces, and the Rademacher symbol.
The Modular Group
Analysis
@enumeratio/analytic- Analytic / special-function extensions for @cortex-js/compute-engine — Hurwitz zeta and friends. Separate from the combinatorial collections.
Evaluation
@enumeratio/evaluation- Controlling evaluation over @cortex-js/compute-engine: cancellable evaluate, cooperative deadlines (TimeConstrained), MemoryConstrained (enforced only in the isolated evaluator), and VerificationTest. ./node adds a worker_threads isolated evaluator, a reusable worker pool, and a stateful session; ./browser adds the same over dedicated/SharedWorker; both kept out of the main entry.
Foundation
@enumeratio/ce-patches- Heads and fixes compute-engine would plausibly take, applied as patches until it ships them: kept apart from what is ours, so landing upstream is a deletion, not an excavation.
@enumeratio/config- The formatter and linter settings every enumeratio package checks against, so `vp check` agrees inside the monorepo and in a repository of its own.
@enumeratio/engine- Plumbing over @cortex-js/compute-engine: values read out of BoxedExpressions through checked accessors, operator wrapping and signature widening, Wolfram-style options, messages, deadlines.
@enumeratio/entry- The shape of a reference entry — the types every package's entries are written against, and the rules an implementations block has to satisfy. A leaf, so the packages that own the heads can type their entries without depending on the package that documents them.
@enumeratio/manifest- Every symbol head we know -- its packages, overloads and their types, parameter names, attributes and summary -- assembled at build time from the reference records and a bare compute-engine.
@enumeratio/plausible- Seeded, size-aware generators for Plausible, the property sampler over our value spaces (https://github.com/enumeratio/enumeratio/wiki/Plausible). A leaf with no workspace dependencies, so collections, reference and bench can all import it.
@enumeratio/structures- Mathematical structure as compute-engine protocols: orders, lattices, ticks, products. A generic head requires structure; a type conforms to it (https://github.com/enumeratio/enumeratio/wiki/Structures).
Tooling
@enumeratio/bench- Cross-system benchmarks: a catalogue of cases as data, native scripts generated per system through the oracle's emit, one measurement protocol, and per-run JSON reports. See https://github.com/enumeratio/enumeratio/wiki/Benchmarking.
@enumeratio/catalog- The enumeratio catalog as resolvable resources: lazy context namespaces, a search path, and the promotion ladder from namespaced to blessed to global.
@enumeratio/census- The whole namespace in one engine — what we declare, what it collides with, and what Wolfram can do that we cannot.
@enumeratio/oracle- Cross-check the reference catalogue against external systems: signature-level mappings, emitters, batch runners, and the blessed values a scan produces.
@enumeratio/perf-tools- Advisory perf-drift tooling for CI: runs each package's suite with the vitest JSON reporter, keeps a rolling history, and flags tests that drift past their trailing median. See tools/perf/README.md.
@enumeratio/reference- Structured, verified example data for compute-engine functions — the single source for reference pages and their tests.
@enumeratio/utils- Repo-wide guard tests, and the small Node helpers the tooling packages share.
@enumeratio/wolfram- MathJSON → Wolfram Language transpiler — a compute-engine compilation target, for cross-validating against a Wolfram kernel.