Expand description
Reversible Position-Aware VSA Encoding
This module implements true holographic storage where data can be reconstructed from the VSA vector. With chunked encoding, typical accuracy is 90-95% before correction layer application.
Chunk size is configurable: smaller chunks (8-64 bytes) provide higher accuracy per chunk but more overhead; embeddenator-fs uses 64 bytes as a balance between accuracy and efficiency.
§Architecture
For each byte at position i:
encoded[i] = bind(position_vector[i], byte_vector[data[i]])
Memory = bundle(encoded[0], encoded[1], ..., encoded[n])
To retrieve byte at position i:
query = bind(position_vector[i], Memory)
byte = argmax_b(cosine(query, byte_vector[b]))This uses the fundamental VSA operations:
- Bind: Creates a composite that’s dissimilar to both inputs but can be unbound
- Bundle: Superimposes vectors while preserving retrievability
- Unbind: Reverses bind to retrieve the bound content
§Why This Works
- Each (position, byte) pair has a unique representation
- Bundle creates holographic superposition of all pairs
- Unbind + similarity search retrieves the original byte
- No information loss from collisions
Structs§
- ReversibleVSA
Encoder - Reversible encoder using position-aware VSA binding
Constants§
- MAX_
POSITIONS - Maximum file size for position-aware encoding (4MB in 64-byte chunks)