← Poker 51 · Project 51

POKER 51 · RIEMANN v0.6 · WORKING NOTE · 1 OCTOBER 2026 · RH OPEN

Solving Riemann.

Until v0.5 the Poker 51 dealer bet by a read-and-threshold policy. Since v0.6 it bets from a solved strategy: the whole hand, your draw included, was written as one two-player game on an abstraction of Poker 51 and solved. The tables are published in full, and every decision can be replayed. The rules you play by did not change.

Riemann is a name, not a claim. Nothing here uses zeta data or bears on the Riemann hypothesis. Nothing on this page is PROVED.

≈ 0.1jbits per hand: the most a perfect player gains from a v0.6 table, in the abstraction
≈ 3.0jbits per hand: the same figure for the v0.5 policy
2.3×what v0.5 won from four modelled player types, standard game, fresh real-card deals
+0.015jbits per hand: the value of the standard game to Riemann with perfect play on both sides

The result

Riemann’s average jbits per hand; the ante is 1 jbit each.

GameClasses · your draw statesValue of the gameWhat the v0.6 table guaranteesA perfect player gains at mostThe same against v0.5Four modelled types, fresh real-card deals: v0.5 → v0.6
Standard19 · 46+0.015−0.0990.1153.055+0.554 → +1.281
Wild Ⅰ28 · 67+0.005−0.1080.1143.009+0.612 → +1.169
The bug36 · 81+0.031−0.0870.1183.030+0.362 → +0.954

How it was done

  1. One game. You choose your draw and act first; Riemann answers knowing your draw count; both draw; you act first again; showdown. Both betting rounds use the v0.5 tree: check or bet 1, 2, 4 or 8, Riemann’s 2-jbit bet when checked to, one raise and one re-raise.
  2. An abstraction. Dealt hands are grouped into classes (19 in the standard game, 28 for Wild Ⅰ, 36 for the bug), with exact frequencies. Final hands fall into 40 strength buckets. Your draw options are the House-rule draw, standing pat, keeping a kicker, and keeping two high cards. Card removal between the hands is ignored and stacks are deep.
  3. A solver. CFR+ with perfect recall, 3,000 iterations for each equilibrium; the two sides’ possible gains from deviating sum to less than 0.001 jbits per hand.
  4. A model of players. A language model (TypeSafe System One, jev-1.13.0) was asked, as a judge and in poker words, how four player types would draw, bet and answer: default, cautious, aggressive and calling station. 45,113 questions in all. Arithmetic stayed in code.
  5. A restricted Nash response. Riemann assumes that with probability p it faces that population and otherwise a player who knows its table and plays perfectly against it. p = 0 is the equilibrium. The published tables use p = 0.5.
  6. A check on fresh deals. New whole hands, real cards, the model playing each type in full.

The trade-off, game by game

“A perfect player takes” is computed in the abstraction. The other columns are Riemann’s expected jbits per hand against each modelled type on fresh real-card deals.

Standard · 600 fresh deals per type

Riemanna perfect player takesvs defaultvs cautiousvs aggressivevs calling stationaverage
v0.5 policy (read and threshold)3.055+0.603+0.268+0.541+0.806+0.554
equilibrium of the abstraction0.000+0.645+0.468+0.869+0.826+0.702
restricted Nash response, p = 0.250.024+0.954+0.550+1.875+1.044+1.106
restricted Nash response, p = 0.5 (published as v0.6)0.114+1.026+0.572+2.426+1.097+1.281
restricted Nash response, p = 0.750.699+1.184+0.654+3.396+1.208+1.611
restricted Nash response, p = 0.92.031+1.328+0.728+4.391+1.193+1.910

Wild Ⅰ · 300 fresh deals per type

Riemanna perfect player takesvs defaultvs cautiousvs aggressivevs calling stationaverage
v0.5 policy (read and threshold)3.009+0.660+0.235+0.824+0.727+0.612
equilibrium of the abstraction0.000+0.518+0.425+0.782+0.548+0.568
restricted Nash response, p = 0.250.017+0.864+0.528+1.729+0.778+0.975
restricted Nash response, p = 0.5 (published as v0.6)0.113+0.993+0.576+2.250+0.859+1.169
restricted Nash response, p = 0.750.576+1.183+0.665+3.093+0.968+1.477

The bug · 300 fresh deals per type

Riemanna perfect player takesvs defaultvs cautiousvs aggressivevs calling stationaverage
v0.5 policy (read and threshold)3.030+0.449+0.191+0.346+0.463+0.362
equilibrium of the abstraction0.000+0.445+0.409+0.480+0.482+0.454
restricted Nash response, p = 0.250.024+0.705+0.490+1.141+0.593+0.732
restricted Nash response, p = 0.5 (published as v0.6)0.118+0.845+0.532+1.684+0.754+0.954
restricted Nash response, p = 0.750.771+1.130+0.736+2.793+0.835+1.373

The curve bends in the same place in all three games. Up to p = 0.5 the win against the modelled players rises quickly while a perfect player gains little; past it, the exposure grows faster than the win. Because the table is published, the exposure is the price of publishing, so it is kept near 0.1. The choice of p is a design choice.

What the solve says about the game

Limits

Files

Working note (unpublished; no DOI yet): the abstraction, the solver, the model, every table and the limits.

FileWhat it is
poker51-riemann-v0-6.jsthe published lookup and the public mixing hash
standard · Wild Ⅰ · the bugthe three tables, each with its SHA-256
poker51-table-v0-6.jsthe v0.5 hand with the solved decisions
verify-poker51-v0-6.mjs · receiptthe table module plays the tables exactly and keeps the v0.5 rules (9 checks, 9,000 hands)
guarantee-v0-6.mjs · receiptwhat each published table guarantees, recomputed from this site alone
fullgame.mjs · fullgame2.mjsthe standard abstraction, CFR+, restricted Nash response and best responses
vabs.mjs · vsolve.mjsthe same for Wild Ⅰ and the bug
popmodel.mjs · packsite.mjsthe population model from the language model’s answers; a solved strategy to a published table

The language model’s answers, the questions, the solved strategies and every score table are a data bundle prepared for deposit with Project 51. It is not on this site and has no DOI yet.

node tests/v4_1/verify-poker51-v0-6.mjs
node research/project-51/poker-51/riemann-v0-6/guarantee-v0-6.mjs

Part of Project 51: Reading the Record Across Rules · 10.5281/zenodo.23048482; this note is not in that record. RH STATUS: OPEN.