HeatherDB

Search documentation

Loading the documentation index…

Download
Architecture

Write.
Self-organize.
Recall.

HeatherDB's whole architecture fits on a postcard. There are three operations: write a vector, let the substrate reshape itself, recall an attractor. Everything else composes from those three.

The Lifecycle of a Memory

Unlike traditional databases, data doesn't just sit in a row. It acts as a gravitational pull, reshaping the substrate around it.

01 Vector Ingestion
02 Graph Relaxation
03 Attractor Recall
HEATHERDB SUBSTRATEWritevector → memorySelf-organizesubstrate becomes the modelRecallquery → attractorNO MODEL WEIGHTS · NO RETRAINING · NO GPU

Mechanics.

01 / Vectors go in

Every input becomes a fixed-dim vector.

Typically 128 floats. How you build the vector is your call: deterministic feature hashing for movies, FFT bins for audio, sentence embeddings for text, MFCCs for speech. The intelligence is not in the vectors; it's in what HeatherDB does with them.

The default dim is 128. You configure it once per server. Each collection inherits the server's dim.

02 / Writes self-organize

Memory is a flat array of hard locations.

Each location is a learned pattern plus a write counter. When a new vector arrives, the engine finds the nearest locations and nudges their patterns toward the new vector. Heavily-used locations move less ('conscience' mechanism).

If the new vector is too novel, it splits a location and creates a new one. The substrate self-tunes its population.

03 / Reads converge

Queries find attractors.

HeatherDB finds the nearest hard locations to the query, then runs a Hopfield-style iterative read: at each step, a softmax reweights locations and sums their patterns into a new query vector until movement stops.

Higher β = sharper convergence. Lower β = softer recall.

04 / Algebra

Math works on whole basins.

Because each collection IS a population of attractors, you can do math on collections directly. /algebra/add(A, B) materialises every cross-pair of A and B's patterns as new attractors in the target. /algebra/scale multiplies all counters.

The math is energy-correct: it comes from the log-sum-exp identity, not heuristic blending.

05 / Explainability

Activation tracing for complete transparency.

Every read can be replaced with /analyze, which returns the same recalled vector plus the list of hard locations that fired during the Hopfield iterations, with their final weights. That's enough to answer 'why this result?' for any query — no separate black box model required.

Used in the demo for the 'Why this movie?' panel.

What ships out of the box.

System Defaults
Dimension128

Configurable per server. 128 balances capacity and speed.

Initial locations1,000

Substrate grows from this baseline via splits.

Activationk=20

Trades sharpness for graph traversal cost.

Hopfield β5.0

Higher = sharper attractor selection.

Novelty (τ_split)0.3

Vectors below this similarity trigger a split.

Overload (τ_ovl)100

Write limit before a location splits itself.

Neighbour capD/4 (min 20)

Co-activation limit. Sweet spot from benchmarks.

Storage EngineLMDB

Memory-mapped, crash-safe persistence.

Read the paper.

The architecture, the energy-correctness derivations, and the benchmarks live in the paper. About 40 pages of deep mechanics.