petri-net ode biochemistry mass-action

Enzyme Kinetics: Michaelis-Menten from Three Transitions

The Michaelis-Menten equation is one of the most important results in biochemistry. It describes how enzymes catalyze reactions and why the reaction rate saturates at high substrate concentrations. Textbooks derive it with steady-state assumptions and algebraic manipulation.

We don't need any of that. A 4-place Petri net with mass-action kinetics produces the same curve automatically.

Try the interactive demo at pilot.pflow.xyz/enzyme-kinetics.

The Reaction

An enzyme catalyzes the conversion of substrate to product in three steps:

E + S  ⇌  ES  →  E + P
  1. Binding: enzyme and substrate combine to form a complex
  2. Unbinding: the complex falls apart (reverse reaction)
  3. Catalysis: the complex converts substrate to product, releasing the enzyme

The enzyme is not consumed—it cycles between free and bound states.

The Petri Net

Model Structure

Four places, three transitions:

Place Initial Role
substrate 100 Free substrate molecules
enzyme 10 Free enzyme molecules
complex 0 Enzyme-substrate complex
product 0 Converted product
Transition Rate Arcs
bind k1 = 0.01 substrate + enzyme → complex
unbind k-1 = 0.1 complex → substrate + enzyme
catalyze kcat = 0.5 complex → product + enzyme

The arc structure encodes the chemistry directly. The enzyme appears as both input and output of catalyze—it's a catalyst, returned after each reaction.

Mass-Action Produces Michaelis-Menten

With mass-action kinetics, each transition fires at a rate proportional to the product of its input concentrations:

flux(bind)     = k1 × [S] × [E]
flux(unbind)   = k-1 × [ES]
flux(catalyze) = kcat × [ES]

The ODE system follows directly from the Petri net topology:

d[S]/dt  = -k1·[S]·[E] + k-1·[ES]
d[E]/dt  = -k1·[S]·[E] + k-1·[ES] + kcat·[ES]
d[ES]/dt =  k1·[S]·[E] - k-1·[ES] - kcat·[ES]
d[P]/dt  =  kcat·[ES]

We didn't write these equations. They emerged from the net structure and mass-action kinetics.

At steady state (d[ES]/dt ≈ 0), the reaction rate simplifies to:

v = Vmax × [S] / (Km + [S])

where Km = (k-1 + kcat) / k1 and Vmax = kcat × [E]total. This is the Michaelis-Menten equation—derived not by algebra, but by running the ODE solver on the Petri net.

What the Simulation Reveals

Concentration Curves

The demo computes four predictions automatically as you adjust parameters:

Prediction Default Value What It Means
Time to 50% conversion ~17s When half the substrate is consumed
Peak reaction rate ~2.95 Maximum d[P]/dt, approaches Vmax
Final yield ~70% Percentage of substrate converted in the simulation window
Km / Vmax 60 / 5.0 The Michaelis-Menten constants

The concentration chart shows the classic pattern: substrate depletes as product accumulates, with the enzyme-substrate complex rising quickly then falling as substrate runs out.

The reaction rate chart shows the saturation curve—the rate climbs rapidly at first, then levels off as enzyme molecules become saturated with substrate.

The Saturation Effect

Why does the rate saturate? The Petri net makes it visible.

At low substrate, most enzyme is free. Increasing [S] means more binding events, so the rate climbs linearly. But at high substrate, almost all enzyme is tied up in complex. Adding more substrate can't speed things up—there's no free enzyme to bind with.

Km is the substrate concentration at half-maximum rate. It measures how tightly the enzyme binds substrate. A low Km means the enzyme binds eagerly; a high Km means it needs a lot of substrate before it's half-saturated.

In the Petri net, this emerges from the competition between unbind and catalyze for the complex tokens. When k-1 is large relative to kcat, the complex tends to fall apart rather than produce product—so you need more substrate to keep the enzyme occupied.

Parameter Exploration

The sliders auto-simulate on every change. Some experiments to try:

High enzyme, low substrate (e0=50, s0=20): The reaction completes almost instantly. All substrate is converted because there's plenty of enzyme to go around. The rate curve is a sharp spike.

Low k1 (k1=0.001): Binding becomes the bottleneck. Km shoots up, meaning you need enormous substrate concentrations to reach half-max rate. The enzyme is effectively less efficient.

High kcat (kcat=2.0): The enzyme turns over faster. Vmax increases, and the 50% conversion time drops. But Km also increases—faster catalysis means the complex is consumed faster, so more substrate is needed to keep it populated.

Equal k-1 and kcat (km1=0.5, kcat=0.5): The complex is equally likely to unbind or catalyze. Km = (0.5 + 0.5) / 0.01 = 100—higher than default. The enzyme is less efficient because half the binding events are "wasted" on unbinding.

Conservation Laws

The Petri net enforces a conservation law automatically:

[E] + [ES] = [E]total = constant

Free enzyme plus bound enzyme always equals the initial enzyme count. This isn't coded as a constraint—it's a structural property of the net. The enzyme token circulates through enzyme → complex → enzyme but never leaves the system.

Similarly:

[S] + [ES] + [P] = [S]initial

Substrate is either free, bound in complex, or converted to product. Mass is conserved because every arc that removes a token from one place adds it to another.

These are P-invariants of the Petri net—linear combinations of places whose token count remains constant regardless of which transitions fire.

From Chemistry to Everything

The Michaelis-Menten pattern appears far beyond biochemistry:

In each case, a limited resource (enzyme/core/agent/machine) cycles between free and occupied states. The Petri net structure is identical—only the labels change.

View in pflow editor →

Key Concepts Demonstrated

Concept Enzyme Kinetics Example
Mass-action kinetics Transition rates from input concentrations
Emergent equations Michaelis-Menten from net topology
Conservation laws Enzyme total preserved (P-invariant)
Saturation Rate limited by enzyme availability
Prediction Time to 50%, peak rate, yield from ODE

Conclusion

Four places and three transitions produce the Michaelis-Menten equation, the saturation curve, conservation laws, and quantitative predictions. We didn't derive anything—the structure produced the behavior.

This is the DDM pattern in its purest form: declare the relationships (places and arcs), assign rates, and let the ODE solver reveal what the system does. The enzyme kinetics model is small enough to understand completely, yet produces one of the most important results in biochemistry.

For the theory behind mass-action kinetics: Declarative Differential Models

For more ODE demos: ODE Simulation & Prediction

×

Follow on Mastodon