MODEL GAME THEORY & SAPPHONS · GAME THEORY · THE SHADOW OF THE FUTURE · under KEEPER ERIS

Repeated Games & the Folk Theorem

Play the Prisoner’s Dilemma again and again, and the future can discipline the present. If players value tomorrow enough (discount factor δ ≥ 1/2 here), grim trigger keeps cooperation going. The folk theorem says almost any fair-enough average payoff can be sustained.

Dave (t252): "i love that set up can you build some pages looking into game theory and those sappons you just built, see if you can build some folded stars and stuff"

Dave’s I-13 engine on this page

booting I-13 v0.3…

LIT What the VM computes here: The VM computes R/(1 − δ), T + δP/(1 − δ) and (T + δS)/(1 − δ²), the thresholds (T − R)/(T − P) and (T − R)/(R − S), and the average payoff of your cycle with its minmax (individual rationality) check. JS only draws the payoff region.

LIT Infinitely repeated PD with discount δ. GRIM (cooperate until the other defects, then defect forever) is an equilibrium iff R/(1 − δ) ≥ T + δP/(1 − δ), i.e. δ ≥ (T − R)/(T − P) = 1/2 for (5, 3, 1, 0). Against TIT FOR TAT, alternating defection pays (T + δS)/(1 − δ²), so cooperation also needs δ ≥ (T − R)/(R − S) = 2/3 (derived on this page).

LIT Folk theorem (Friedman 1971 for Nash reversion; Fudenberg & Maskin 1986 in general): any feasible payoff vector that gives every player more than their minmax (here 1 each) can be sustained in equilibrium if δ is close enough to 1. Feasible here means inside the convex hull of (3, 3), (0, 5), (5, 0) and (1, 1).

LIT Robert Aumann (Nobel 2005) developed much of the theory of repeated games.

MODEL The agents play a 3 × 3 “strategy game” whose entries are the normalised discounted values (1 − δ)·V at δ = 0.9: ALL D vs GRIM gives 1.4, GRIM vs ALL D 0.9, and so on. Both (ALL D, ALL D) and the cooperative block are equilibria.

WALL The folk theorem is an embarrassment of riches: it says many outcomes can be equilibria, not which one will happen.

Lab MODEL interactive, computed on the I-13 VM

discount δ · repeating cycle (CC, CD, DC, DD)

Sources (browsed Oct 2026)

  1. Friedman (1971) A non-cooperative equilibrium for supergames, Rev Econ Stud 38:1
  2. Fudenberg & Maskin (1986) The folk theorem in repeated games with discounting or with incomplete information, Econometrica 54:533
  3. Nobel 2005 scientific background (repeated games)

MODEL Two agents, as Dave set for every world: PLAYER 1 and PLAYER 2 play the repeated-PD strategy game at δ = 0.9 (normalised discounted payoffs) over and over by regret matching (Hart & Mas-Colell 2000), each shifting toward the moves it regrets not having played. Their score is 1 − NashConv/2.1 of their empirical average play (1 = an exact Nash equilibrium), and the I-13 VM re-computes NashConv from the raw averages every time the score improves. The centrepiece is a folded star {7/2} whose fold rises with the score. Three.js r160 from a pinned CDN, devicePixelRatio capped at 2. Drag to orbit, scroll to zoom.

LIT on load: the seal is recomputed, the page’s facts are re-checked as arithmetic (throws on mismatch), 200 seeded rounds of the two agents must improve their score, the workspace loop logs 5 entries, and the OBJ and SVG exports must be consistent. Then the engine boots, its SHA-256 and regression lab are checked, the VM recomputes the agents’ NashConv, and the page’s VM results are compared with independent JS.

Gallery of kept moments (WebGL snapshots):

Workspace improvement loop: instructions for agents MODEL

  1. Measure: every 40 rounds, record NashConv of the average play, the score, the rounds since the last improvement and whether regret-matching+ is on.
  2. Try next: after a 40-round plateau, switch both agents to regret-matching+; if still stuck, halve the exploration ε; if still stuck, forget half the old history. While NashConv falls, keep course (ε × 0.9); if it rises, explore more (ε × 1.25).
  3. Log back: append {entry, round, measured, tried, ε} to the workspace log (in the JSON export and the list below), and have the I-13 VM recompute NashConv.
  4. Repeat, forever: never stop improving. Re-check every claim against the engine and the sources before you make it.

Live workspace log:

    Shared board MODEL PLAYER 1 ↔ PLAYER 2

      Background art: MODEL a generative field seeded from this page’s seal.

      proving…

      Seal sha256(name|slug|blurb): fc816380d15838fa7dc5d55fc7a3d885b4f011a83956fc92760139652e5eae5f

      ↑ Game Theory & Sapphons index · Protein Folding (same engine) · ← ERIS, keeper of Mayhem