Home  /  The Laboratory  /  A-Life  /  The Chemistry
Experimental Authored substrate Designed, engine being built

The Chemistry

Twenty digital atoms: fifteen role-atoms that live in the grid below, and five backbone atoms that deliberately do not. Every number on this page was authored by us, and every number is shown.

This is not physical chemistry. It is an artificial chemistry, which is an established line of work in artificial life rather than a metaphor we are borrowing. An artificial chemistry is usually given as a triple: a set of possible molecules, a set of reaction rules, and an algorithm deciding how the rules get applied. This page specifies the first of those three and part of the second. The reaction grammar and the reactor algorithm do not exist yet, and until they do there is an alphabet here but not yet a chemistry. What follows is laid out so that where an atom sits determines what it is, which means the design can be argued with instead of taken on trust.

How to read the table

Two axes, and each one is doing a job.

Columns are jobs. Each column is a role an atom plays for its neighbours. The column is also a hypothesis about interchangeability: the compression machinery only ever proposes swapping an atom for another in the same column, because a spacer standing in for another spacer is plausible and a donor standing in for an acceptor is not, since it would reverse the direction of a reaction.

Rows are reactivity, rising downward. Nothing is exactly interchangeable with anything else, which is deliberate: a chemistry with exact duplicates would hand the compression machinery a free answer.

We expect row distance to be the leakage axis, so that two atoms one row apart are good candidates to stand in for each other while two atoms three rows apart are not. That expectation is not paid for by anything above it. As currently specified, reactivity sets cost and nothing else, which makes it a price coordinate wearing a reactivity label. So it is written down here as a claim that can fail rather than as a property of the design: substitution error should increase with row distance. If a run shows it does not, the row axis is wrong and the table needs rebuilding.

Cost is derived, not chosen per atom. Cost is a function of reactivity, with a base and a slope set once per column. So an atom's price follows from where it sits.

 Inertspacer / fillerBindingrecognition, interfaceCatalyticlowers a neighbour's costAcceptorcompletes a reactionDonordrives a reaction
r1react 0.1s1valence 1cost 0.14polarity +0.0reservedreservedreservedreserved
r2react 0.25s2valence 1cost 0.2polarity +0.0b1valence 2cost 0.9polarity +0.3reservedreservedreserved
r3react 0.4s3valence 1cost 0.26polarity -0.1b2valence 2cost 1.08polarity -0.3k1valence 2cost 2.0polarity +0.2a1valence 1cost 1.06polarity -0.4reserved
r4react 0.55s4valence 1cost 0.32polarity +0.1b3valence 2cost 1.26polarity +0.6k2valence 2cost 2.3polarity -0.2a2valence 1cost 1.27polarity -0.6d1valence 1cost 1.48polarity +0.4
r5react 0.7reservedreservedreserveda3valence 1cost 1.48polarity -0.8d2valence 1cost 1.72polarity +0.6
r6react 0.85reservedreservedreservedreservedd3valence 1cost 1.96polarity +0.8

Fifteen atoms in thirty cells. The empty cells are not gaps in the design, they are room: a new atom can be added by filling a reserved cell, and nothing already placed has to move or be renumbered.

The rules that produce those numbers

There are three of them and they are the whole derivation. Valence is set per column; reactivity is set by row; cost follows from reactivity.

reactivity(row) = 0.10 + 0.15 x (row - 1)
cost(col, row)  = base[col] + slope[col] x reactivity(row)
valence(col)    = 1 for Inert, Acceptor, Donor
                  2 for Binding and Catalytic

                 base   slope   valence
  Inert          0.10    0.4      1     filler is cheap by design
  Binding        0.60    1.2      2     an interface has to be held, so it is paid for
  Catalytic      1.20    2.0      2     catalysts are precious, so this column is short
  Acceptor       0.50    1.4      1     completing a reaction costs less than driving one
  Donor          0.60    1.6      1     driving a reaction is the expensive half

Only two things are set by hand rather than derived: polarity, because it governs which atoms prefer to bond with which and deriving it would make the bonding graph too regular to be interesting, and tags, which mark the two atoms that carry an interface and the two that catalyse.

Why each column earns its place

ColumnWhy it exists
InertDeliberately the tallest column. Interchangeable spacers are where a distinction stops mattering, so this is where there is most to remove. A chemistry with no inert class would have almost nothing to compress.
BindingThe interface former. This is the handle for a self-produced boundary, which is the condition every laboratory protocell is currently thought to fail.
CatalyticThe seed of self-lowering continuation cost. Short and expensive on purpose.
Acceptor and DonorTwo columns rather than one, because the column is a claim about what may be swapped for what. Merging them would have the machinery proposing swaps that reverse a reaction.

The backbone

Five atoms sit outside the grid, because they do not belong to a job column and are not freely swappable by role. Swapping the scaffold changes everything hanging off it.

Cvalence 4polarity +0.0connector: chains and ringsHvalence 1polarity +0.0terminator: caps a bondOvalence 2polarity -0.5linker: bridges, adds polarityNvalence 3polarity -0.3brancher: branching and chargePvalence 2polarity -0.2carries a consumable resource token

If the backbone ever starts forming interchangeable groups in a run, the tolerance has been set too loose. That is a deliberate control.

What can bond with what

Two gates, and no more. An atom carries a valence, which is how many bonds it can hold at once, and a polarity, which is a signed preference. Opposite polarities attract, like polarities resist, and neither can exceed its valence budget. Those two numbers are the entire bonding grammar; a molecule is whatever falls out of applying them.

What this is for. An alphabet is only worth having if something can be asked of it. The question here is narrow and can fail: given a fixed set of parts, can a structure assemble, fold, and close a boundary around itself, producing that boundary rather than importing it ready-made? No claim is made about life, and no verdict about sovereignty is offered on this page or anywhere else in this gallery.
The honest limit, stated rather than buried. Stuart Kauffman's central claim about biology is that you cannot write down the list of possibilities in advance, because the space of what is reachable enlarges itself from the inside. It is worth being precise about which part of this design that objection actually bites on. It is not the count of atoms: twenty atom types with unbounded chain length and topology can generate an unbounded space of molecules, and artificial chemistries are normally defined with exactly that possibility left open. The objection bites on the pre-stated reaction grammar, the fixed list of what can happen at all, which is the thing we have not written yet and which will be finite when we do. We have not answered that objection. What we have done is trade scope for testability: this substrate is bounded, so it can be run, ablated, and shown to fail. It is not a model of open-ended evolution and it is not offered as one.
Status, and what is deliberately missing. The table is designed and the numbers above are final enough to build against. Two layers above it are not written. There is no reaction grammar: valence and polarity say which bonds are admissible and say nothing about what happens when two atoms actually meet, what is consumed, what is released, or what runs backwards. And there is no reactor algorithm deciding which candidate reactions fire and in what order. Neither is a detail; together they are most of what makes a chemistry a chemistry, and they are the next document rather than the next paragraph. The engine is not built either: the substrate today holds one number per cell, not an atom with bonds. Nothing on this page has been simulated. When it is, the first thing it must do is fail an ablation honestly, by having a capability disappear when the role that supplied it is switched off.

Next: What's Inside of a Cell?, which is what you would build out of this alphabet.

← Back to A-Life