Skip to content
docs
Arxo ↗

FIDE: the Dutch-pairing check run

For LLMs6 sections

Result: 33 presented pairings were checked on 2 October 2026 — 13 hand-built round cases (H5-01 through H5-13) and 20 generated tournaments (RTG01 through RTG20) — with bbpPairings v6.0.0 on one side and the Arxo package fide.swiss 0.1.0 with law 0.1.1 on the other. On the absolute criteria [C1]–[C3] there are zero false accepts and zero false refusals across all 33 presented pairings. 27 cases agree fully; the remaining 6 (H5-02, H5-03, H5-04, H5-11, H5-12, H5-13) are differences of checking subject, not of the rules: pairings clean under [C1]–[C3] are rejected by the check mode as non-optimal, without a named criterion. The numbers belong to bbpPairings v6.0.0, rules C.04.3 effective 1 February 2026, and the stated case bank.

Pairing construction is outside the Arxo package; Arxo checks a presented pairing. The external reference does both: bbpPairings builds Dutch-system pairings and its check mode verifies a presented tournament file against its own result. The bank presents pairings — a hand-built five-round history whose last round is the case, plus twenty machine-generated tournaments (nine players, four rounds, seeds 1 through 20) — and asks both sides for a verdict. The absolute criteria under check are [C1] (no repeated pairings), [C2] (no second pairing bye) and [C3] (absolute colour constraints); the full criterion set runs [C1]–[C21]. The public pages of the references are bbpPairings and the FIDE Handbook.

The two checkers answer different questions by construction, and the run records both. The check mode accepts only its own optimum over [C1]–[C21] and reports differing pairs without naming a criterion. Arxo checks compliance of the presented pairing with [C1]–[C3] and names each violation with a proof graph. A case agrees when both verdicts coincide — both accept, or both reject the same pairing. The six divergent cases are pairings the absolute-criteria check finds clean and the check mode rejects as non-optimal; the contract fixes this reading of scope before the run, and history rounds 1–3 count for neither side.

CasePresented roundCheck modeArxoOutcome
H5-01round 4 built by the reference toolACCEPTcomplies, TRUE_ONLY with proofmatch
H5-02round 5, leader schemeREJECT (5 pairs)complies, TRUE_ONLY with proofsubject difference
H5-03round 5, fifty-percent boundaryREJECT (5 pairs)complies, TRUE_ONLY with proofsubject difference
H5-04same round as H5-02REJECT (5 pairs)collected score set {-1} for the bye player: the unplayed round does not countsubject difference
H5-05round 4, a repeated pairingREJECT (3 pairs)violated [C1] with proofmatch: both reject; only Arxo names the criterion
H5-06same pair, colours flippedREJECT (3 pairs)violated [C1] with proofmatch: both reject; only Arxo names the criterion
H5-07round 4, bye for a twice-rested playerREJECT (3 pairs)violated [C2] with proofmatch: both reject; only Arxo names the criterion
H5-08round 4, bye after a forfeit winREJECT (2 pairs)violated [C2] with proofmatch: both reject; only Arxo names the criterion
H5-09round 4, both players black on differenceREJECT (4 pairs)violated [C3] with proofmatch: both reject; only Arxo names the criterion
H5-10round 4, both players white on the other colour ruleREJECT (3 pairs)violated [C3] with proofmatch: both reject; only Arxo names the criterion
H5-11round 5, leader-against-leader boardREJECT (3 pairs)complies, TRUE_ONLY with proofsubject difference
H5-12round 5, colour difference against no preferenceREJECT (4 pairs)complies, TRUE_ONLY with proofsubject difference
H5-13same round as H5-11REJECT (3 pairs)collected score set {0}: only played rounds countsubject difference
RTG01–RTG2020 generated tournaments, round 4 each20 of 20 ACCEPT20 of 20 complies with proof20 of 20 match

The check mode verifies against its own optimum over [C1]–[C21]: any presented pairing that is not its own optimum is rejected with a list of differing pairs and no criterion named. Arxo verifies compliance with [C1]–[C3] and names the violated criterion with a proof whenever it rejects. So in H5-02, H5-03, H5-04, H5-11, H5-12 and H5-13 Arxo accepts with a proof of zero absolute-criteria violations — confirmed by an independent absolute-criteria reading of the same files — while the check mode rejects them as non-optimal. The reverse never happens: every mutation of the bank (H5-05 through H5-10) is rejected by both sides, and every machine-built tournament (H5-01, RTG01–RTG20) is accepted by both.

Construction is outside the package: criteria [C4]–[C21], colour allocation and the pairing search itself are not modelled — Arxo checks what is presented and says nothing about what the best pairing would be. The run covers the Dutch system only, with standard points and a pairing-allocated bye value of 1. Twenty generated tournaments stand in for scale; the multi-thousand-tournament scale of the program approval procedure is outside this run. Accelerated and non-Dutch systems, free points and adjournments were not exercised.

Pin the reference: bbpPairings v6.0.0 (tag 21c01d5d, commit 16a000f9, 1 February 2026; tarball SHA-256 starting b7f95c08), built from sources. Pin the rules: C.04.3 effective 1 February 2026 (SHA-256 starting 4c3777fd, matching the package sources) and the tournament-file format description (SHA-256 starting fadb222d). Pin the Arxo side: package fide.swiss 0.1.0 with law 0.1.1. Each case is one check-mode call over the presented tournament file plus one law ask fide.swiss call per question (compliance, and where relevant the collected score); the check mode always exits zero, so its verdict is read from the round section of its output, not from the exit code.

Documentation for Arxo. Writings — blog.arxo.io.

Anonymous visit counts on stats.arxo.io, no cookies.