Peter Foldiak

Knowledge representation as a category lattice, on content-addressed storage.

I build a small stack of tools for representing knowledge as a category lattice and keeping it on content-addressed storage — no server to trust, no database to run.

The thread running through all of it: the internal structure of a sparse neural code is a good way to represent semantic structure, and Formal Concept Analysis makes that correspondence exact. That turns the interesting questions into engineering ones — how do you learn a good lattice from data, how do you persist one without a server, and what is it actually like to use one as everyday infrastructure?

The stack

mdl-fca produces a DAG for ontodag, which persists through recordstore; ontodag-fs uses ontodag and swarmfs; swarmlite uses swarmfs; ucomm uses recordstore; recordstore and swarmfs each talk to a Bee node directly.

recordstore and swarmfs are siblings, not a stack: each talks to a Bee node directly. recordstore's own /bytes client is its byte path, and it borrows swarmfs only optionally, to compute Swarm-native content addresses and to validate postage batches.

Knowledge

Storage

Communication

A note on trust

"No server to trust" has a matching option for "no host to trust". swarmfs encrypts node-side on request and swarmlite publishes that way, where the 128-hex reference carries the decryption key — the URL is the secret. ontodag encrypts rs: stores at rest under a key of your own, records and trie structure alike, and deterministically, so two devices holding the same key still converge on the same root.

Elsewhere

Earlier research on sparse coding, neural population decoding, and information theory in neuroscience — including the formal concept analysis work these projects grew out of: publications, 1987–2018.