research.
Can bounded learners, whether programs, AI agents, or people, discover and change the computational structures that make their own inference and collaboration tractable?
Christian Weilbach's doctoral work at the University of British Columbia used the structure of probabilistic programs to make amortized inference more efficient. The structure was given by the programmer. Self-improving systems raise the next question: a learner that can change its own programs, workflows, and organization also changes the structure its inference depends on. Cybernetics studied how cells, machines, and firms maintain themselves through feedback. This research adds the cost of computation to the system being studied.
Simmis is the intended application of this research and one of its subjects. People and agents already work on shared, versioned state in Simmis. The research asks how an organization built this way can model its own workflows, resources, and learners, and decide how to change them.
five operations
The open problem is a programming model in which a small set of operations compose. Each one has a working foundation and an unsolved part.
fork
Start an alternative from shared state without copying or changing it.
WORKING NOW Composite branches across data, files, code, and execution work in Simmis now.
ground
Record which evidence, observations, and decisions a branch rests on.
RESEARCH Queryable history works now. Explicit evidence records that travel with a branch are research.
join
Combine branches without counting the same evidence twice.
RESEARCH Proposal review with conflict inspection and merge works now. Evidence-aware joins are research.
rewrite
Change how something is computed while preserving what it computes, or state how much it may differ.
RESEARCH Wandler checks proposed program rewrites with a proof kernel. It is experimental and not part of Simmis.
allocate
Decide whether further computation, simulation, or observation is worth its cost.
RESEARCH Spend controls work now. Allocation guided by uncertainty is research.
The operations interact. Two agents that summarize the same source produce two branches that look like independent confirmation. A join that knows what each branch was grounded in can tell the difference. A cheaper rewrite of a workflow is useful only if the system knows what it gave up, and allocation needs both to decide where the next unit of work should go. Probabilistic numerics and Bayesian experimental design already treat computation and measurement as actions chosen under uncertainty. We want to extend that view to the programs and organizations that do the computing.
a medium where alternatives are cheap
These operations need data, programs, and evidence to be values that can be forked, inspected, and transformed while a system runs. Persistent data structures make a fork share state with its parent instead of copying it. Whether a fork can also reuse earlier computation depends on how that computation was recorded. The copy-on-write article explains the storage side.
The open-source replikativ stack provides this medium at different levels of maturity:
- Datahike, Yggdrasil, Spindel, and Dvergr provide versioned databases, branchable systems, forkable execution, and the agent runtime. Simmis builds on them. The architecture explains which layer owns each job.
- Raster compiles typed numerical Clojure to fast JVM code and can be extended from a running session.
- Ansatz implements a Lean 4 compatible proof kernel on the JVM. Wandler uses it to check every optimizing rewrite of a data pipeline before the rewrite runs. Its search is untrusted. Only the checked result is used.
Raster, Ansatz, and Wandler are research software. They are not Simmis features.
simulation as a medium for learning
A simulation is useful for learning when its assumptions and uncertainty stay visible. The Stuttgart series builds a synthetic city of about 940,000 people, fits it to public data, and lets readers question it with interventions. Stuttgart in a posterior is the entry point. What Bayesian inference does, in pictures and Reading a causal graph cover the background.
Organizational simulation inside Simmis remains research. The roadmap and known limits state its current status.
what a calculus cannot settle
A system that can change how it computes can also change what it computes for. A programming model can make purposes executable and their consequences inspectable. It cannot choose the purposes. In 1950 Norbert Wiener distinguished know-how from know-what, which determines what our purposes are to be. As machine learners take over more of the know-how, the research also asks how an organization of people and agents can keep its purposes grounded in the people they affect.
talks and collaboration
Rationalizing a society of learners: toward a calculus of grounded computational organization. Max Planck Institute for Intelligent Systems, Tübingen, October 2026.
We welcome research collaboration on probabilistic programming, probabilistic numerics, experimental design, verified compilation, and organizational simulation. Write to us.
simmis