HoloMem

About this project

About HoloMem

How holographic memory works, for engineers who want the details.

What is holographic memory?

Holographic memory is a brain-inspired way to store and retrieve information. Instead of indexing memories by keys or keywords, each memory becomes a high-dimensional vector trace built from a few algebraic operations. To retrieve, you construct a probe vector and find the stored traces most similar to it. It’s an approximate, content-addressable lookup, not an exact database query.

HRR operations

Holographic Reduced Representations (HRR) use three core operations to pack structured knowledge into fixed-size vectors.

Symbol vectors

Each concept gets a unique 1024-dimensional vector, generated deterministically from its name. Unrelated symbols come out nearly orthogonal.

Binding (circular convolution)

Associates two concepts. bind(SUBJECT, “user”) produces a vector representing “the subject is user”. Implemented via FFT. The result looks dissimilar to both inputs.

Superposition (addition)

Multiple bindings are summed into a single trace vector. All associations live in one fixed-size vector. Lossy, but approximately recoverable.

Unbinding (circular correlation)

Given a trace and a key, recovers the bound value approximately. Cleanup memory maps the noisy result back to the nearest known symbol.

Retrieval modes

  • Keyword: Token overlap scoring (baseline).
  • Holographic: Cosine similarity between probe and trace vectors.
  • Hybrid: Weighted combination of holographic 40%, keyword 30%, trust 15%, entity overlap 15%.

Tradeoffs vs vector DB / RAG

AspectHRRVector DB + RAG
EmbeddingDeterministic, no ML modelRequires embedding model
StructureEncodes roles and relationsFlat semantic similarity
ScalePrototype (hundreds)Production (millions)
DependenciesNumPy + SQLiteExternal services, API keys
ExplainabilityComponent scores, matched symbolsOpaque similarity score

Tech stack

Backend

FastAPI, SQLAlchemy, NumPy, SQLite

Frontend

Next.js, TypeScript, Tailwind, shadcn/ui

Math

FFT-based circular convolution, cosine similarity

Storage

SQLite with BLOB vectors, JSON metadata