{"abstract":"The exact rational row reduction result violates the stated contract at pivot column traversal.","category":"Numerics","checks":8,"contract":"Input nonempty rectangular integer matrix; return RREF with each rational entry [p,q].","contract_signature":"x","evaluation_group":"s3-numerics-rational-row-reduction","failed_approach":"The partial repair range(cols-1,-1,-1) still violates the pivot column traversal invariant.","family":"s3-numerics-rational-row-reduction-pivot-column-traversal","id":"FA-15366","implementations":{"attempt":{"sha256":"abd28a2bd012ec63e8d32f4945bc3c889150e05d128ffdaca8c89d6c9c305ff9","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport itertools\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(x):\n    a=[list(map(Fraction,r)) for r in x];rows=len(a);cols=len(a[0]);r=0\n    for c in range(cols-1,-1,-1):\n     if r==rows:break\n     pivot=next((i for i in range(r,rows) if a[i][c]!=0),None)\n     if pivot is None:continue\n     a[r],a[pivot]=a[pivot],a[r]\n     d=a[r][c]\n     if not d:return None\n     a[r]=[v/d for v in a[r]]\n     for i in range(rows):\n      if i==r:continue\n      v=a[i][c]\n      a[i]=[a[i][j]-v*a[r][j] for j in range(cols)]\n     r=r+1\n    return [[[v.numerator,v.denominator] for v in row] for row in a]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[([[0, 2]], [[[0, 1], [1, 1]]]), ([[2, -1]], [[[1, 1], [-1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[1, 1]], [[[1, 1], [1, 1]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[-2, 0]], [[[1, 1], [0, 1]]]), ([[0, 1]], [[[0, 1], [1, 1]]])], [([[0, -1]], [[[0, 1], [1, 1]]]), ([[2, -2]], [[[1, 1], [-1, 1]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[0, 1]], [[[0, 1], [1, 1]]]), ([[-2, -1]], [[[1, 1], [1, 2]]]), ([[-2, -1]], [[[1, 1], [1, 2]]]), ([[0, -2]], [[[0, 1], [1, 1]]])], [([[0, -2]], [[[0, 1], [1, 1]]]), ([[-2, 1]], [[[1, 1], [-1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[2, 2]], [[[1, 1], [1, 1]]]), ([[2, -1]], [[[1, 1], [-1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[1, -1]], [[[1, 1], [-1, 1]]])], [([[0, -1]], [[[0, 1], [1, 1]]]), ([[-2, -1]], [[[1, 1], [1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[-1, 1], [-1, 0]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[0, 0], [-1, 2]], [[[1, 1], [-2, 1]], [[0, 1], [0, 1]]]), ([[-2, 1], [1, -2]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[-1, 0], [0, 0]], [[[1, 1], [0, 1]], [[0, 1], [0, 1]]])], [([[0, -1]], [[[0, 1], [1, 1]]]), ([[-2, 2]], [[[1, 1], [-1, 1]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[0, -2], [2, 0]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[-1, -2], [0, 1]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[-2, 0], [-2, 0]], [[[1, 1], [0, 1]], [[0, 1], [0, 1]]]), ([[0, 0], [0, -1]], [[[0, 1], [1, 1]], [[0, 1], [0, 1]]])]]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"explicit oracle %d\" % i, solve(args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"},"broken":{"sha256":"c1923051d6cf3dfc635a5b41fd7db2c6bb357a3fe04ca187a06dbdab5798f270","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nimport itertools\nfrom fractions import Fraction\nN = 1\nobservations = []\ndef solve(x):\n    a=[list(map(Fraction,r)) for r in x];rows=len(a);cols=len(a[0]);r=0\n    for c in range(cols-1):\n     if r==rows:break\n     pivot=next((i for i in range(r,rows) if a[i][c]!=0),None)\n     if pivot is None:continue\n     a[r],a[pivot]=a[pivot],a[r]\n     d=a[r][c]\n     if not d:return None\n     a[r]=[v/d for v in a[r]]\n     for i in range(rows):\n      if i==r:continue\n      v=a[i][c]\n      a[i]=[a[i][j]-v*a[r][j] for j in range(cols)]\n     r=r+1\n    return [[[v.numerator,v.denominator] for v in row] for row in a]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[([[0, 2]], [[[0, 1], [1, 1]]]), ([[2, -1]], [[[1, 1], [-1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[1, 1]], [[[1, 1], [1, 1]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[-2, 0]], [[[1, 1], [0, 1]]]), ([[0, 1]], [[[0, 1], [1, 1]]])], [([[0, -1]], [[[0, 1], [1, 1]]]), ([[2, -2]], [[[1, 1], [-1, 1]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[0, 1]], [[[0, 1], [1, 1]]]), ([[-2, -1]], [[[1, 1], [1, 2]]]), ([[-2, -1]], [[[1, 1], [1, 2]]]), ([[0, -2]], [[[0, 1], [1, 1]]])], [([[0, -2]], [[[0, 1], [1, 1]]]), ([[-2, 1]], [[[1, 1], [-1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[2, 2]], [[[1, 1], [1, 1]]]), ([[2, -1]], [[[1, 1], [-1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[1, -1]], [[[1, 1], [-1, 1]]])], [([[0, -1]], [[[0, 1], [1, 1]]]), ([[-2, -1]], [[[1, 1], [1, 2]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[-1, 1], [-1, 0]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[0, 0], [-1, 2]], [[[1, 1], [-2, 1]], [[0, 1], [0, 1]]]), ([[-2, 1], [1, -2]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[-1, 0], [0, 0]], [[[1, 1], [0, 1]], [[0, 1], [0, 1]]])], [([[0, -1]], [[[0, 1], [1, 1]]]), ([[-2, 2]], [[[1, 1], [-1, 1]]]), ([[0, 0]], [[[0, 1], [0, 1]]]), ([[0, 2, 0, -1], [2, -1, -1, 2], [1, -2, 0, -2]], [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]]), ([[0, -2], [2, 0]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[-1, -2], [0, 1]], [[[1, 1], [0, 1]], [[0, 1], [1, 1]]]), ([[-2, 0], [-2, 0]], [[[1, 1], [0, 1]], [[0, 1], [0, 1]]]), ([[0, 0], [0, -1]], [[[0, 1], [1, 1]], [[0, 1], [0, 1]]])]]\nfor i, (args, expected) in enumerate(fixtures[N-1]):\n    check(\"explicit oracle %d\" % i, solve(args), expected)\nprint(json.dumps({\"observations\": observations, \"passed\": all(x[\"passed\"] for x in observations)}, ensure_ascii=False))\nraise SystemExit(0 if all(x[\"passed\"] for x in observations) else 1)\n"}},"limitations":"A deterministic bounded teaching model. Inputs are restricted to the explicit contract; this is not a production algebra library. This reproducer isolates one failure mechanism. Results cover the supplied fixtures. Variants within a family share a test contract and should remain grouped when constructing evaluation splits. Related mechanisms with a shared evaluation_group must also remain together; these controlled models are not independent production incidents.","method":"Deterministic executable model with adversarial boundary fixtures.","provenance":{"created_by":"Failure Map","dependencies":"Python standard library","family":"s3-numerics-rational-row-reduction-pivot-column-traversal","generated_at":"2026-09-29T14:39:26.023973+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Exact discrete arithmetic with observable algorithmic state; no floating point approximation is used.","root_cause":"The pivot column traversal step uses range(cols-1) instead of range(cols).","sha256":"0f9d6c950a652550fe799dac751441305e1f8062126fe2532ff5e105e708ff70","title":"Rational row reduction: pivot column traversal · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verified":true,"visibility":"public","verification":{"attempt":{"elapsed_ms":43.787,"exit_code":1,"observations":[{"actual":[[[0,1],[1,1]]],"check":"explicit oracle 0","expected":[[[0,1],[1,1]]],"passed":true},{"actual":[[[-2,1],[1,1]]],"check":"explicit oracle 1","expected":[[[1,1],[-1,2]]],"passed":false},{"actual":[[[0,1],[0,1]]],"check":"explicit oracle 2","expected":[[[0,1],[0,1]]],"passed":true},{"actual":[[[-1,3],[0,1],[0,1],[1,1]],[[-5,2],[0,1],[1,1],[0,1]],[[-1,6],[1,1],[0,1],[0,1]]],"check":"explicit oracle 3","expected":[[[1,1],[0,1],[0,1],[-3,1]],[[0,1],[1,1],[0,1],[-1,2]],[[0,1],[0,1],[1,1],[-15,2]]],"passed":false},{"actual":[[[1,1],[1,1]]],"check":"explicit oracle 4","expected":[[[1,1],[1,1]]],"passed":true},{"actual":[[[0,1],[0,1]]],"check":"explicit oracle 5","expected":[[[0,1],[0,1]]],"passed":true},{"actual":[[[1,1],[0,1]]],"check":"explicit oracle 6","expected":[[[1,1],[0,1]]],"passed":true},{"actual":[[[0,1],[1,1]]],"check":"explicit oracle 7","expected":[[[0,1],[1,1]]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"explicit oracle 0\", \"actual\": [[[0, 1], [1, 1]]], \"expected\": [[[0, 1], [1, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 1\", \"actual\": [[[-2, 1], [1, 1]]], \"expected\": [[[1, 1], [-1, 2]]], \"passed\": false}, {\"check\": \"explicit oracle 2\", \"actual\": [[[0, 1], [0, 1]]], \"expected\": [[[0, 1], [0, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 3\", \"actual\": [[[-1, 3], [0, 1], [0, 1], [1, 1]], [[-5, 2], [0, 1], [1, 1], [0, 1]], [[-1, 6], [1, 1], [0, 1], [0, 1]]], \"expected\": [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]], \"passed\": false}, {\"check\": \"explicit oracle 4\", \"actual\": [[[1, 1], [1, 1]]], \"expected\": [[[1, 1], [1, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 5\", \"actual\": [[[0, 1], [0, 1]]], \"expected\": [[[0, 1], [0, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 6\", \"actual\": [[[1, 1], [0, 1]]], \"expected\": [[[1, 1], [0, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 7\", \"actual\": [[[0, 1], [1, 1]]], \"expected\": [[[0, 1], [1, 1]]], \"passed\": true}], \"passed\": false}\n"},"broken":{"elapsed_ms":45.566,"exit_code":1,"observations":[{"actual":[[[0,1],[2,1]]],"check":"explicit oracle 0","expected":[[[0,1],[1,1]]],"passed":false},{"actual":[[[1,1],[-1,2]]],"check":"explicit oracle 1","expected":[[[1,1],[-1,2]]],"passed":true},{"actual":[[[0,1],[0,1]]],"check":"explicit oracle 2","expected":[[[0,1],[0,1]]],"passed":true},{"actual":[[[1,1],[0,1],[0,1],[-3,1]],[[0,1],[1,1],[0,1],[-1,2]],[[0,1],[0,1],[1,1],[-15,2]]],"check":"explicit oracle 3","expected":[[[1,1],[0,1],[0,1],[-3,1]],[[0,1],[1,1],[0,1],[-1,2]],[[0,1],[0,1],[1,1],[-15,2]]],"passed":true},{"actual":[[[1,1],[1,1]]],"check":"explicit oracle 4","expected":[[[1,1],[1,1]]],"passed":true},{"actual":[[[0,1],[0,1]]],"check":"explicit oracle 5","expected":[[[0,1],[0,1]]],"passed":true},{"actual":[[[1,1],[0,1]]],"check":"explicit oracle 6","expected":[[[1,1],[0,1]]],"passed":true},{"actual":[[[0,1],[1,1]]],"check":"explicit oracle 7","expected":[[[0,1],[1,1]]],"passed":true}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"explicit oracle 0\", \"actual\": [[[0, 1], [2, 1]]], \"expected\": [[[0, 1], [1, 1]]], \"passed\": false}, {\"check\": \"explicit oracle 1\", \"actual\": [[[1, 1], [-1, 2]]], \"expected\": [[[1, 1], [-1, 2]]], \"passed\": true}, {\"check\": \"explicit oracle 2\", \"actual\": [[[0, 1], [0, 1]]], \"expected\": [[[0, 1], [0, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 3\", \"actual\": [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]], \"expected\": [[[1, 1], [0, 1], [0, 1], [-3, 1]], [[0, 1], [1, 1], [0, 1], [-1, 2]], [[0, 1], [0, 1], [1, 1], [-15, 2]]], \"passed\": true}, {\"check\": \"explicit oracle 4\", \"actual\": [[[1, 1], [1, 1]]], \"expected\": [[[1, 1], [1, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 5\", \"actual\": [[[0, 1], [0, 1]]], \"expected\": [[[0, 1], [0, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 6\", \"actual\": [[[1, 1], [0, 1]]], \"expected\": [[[1, 1], [0, 1]]], \"passed\": true}, {\"check\": \"explicit oracle 7\", \"actual\": [[[0, 1], [1, 1]]], \"expected\": [[[0, 1], [1, 1]]], \"passed\": true}], \"passed\": false}\n"}},"member_only":{"stages":["fixed"],"fields":["implementations.fixed","verification.fixed","harness","repair"],"note":"The verified repair, its recorded checks, the repair description, and the scoring harness are available to members."}}