{"abstract":"Predator growth responds to prey that were already updated in the same step.","category":"Ecological population dynamics","checks":7,"contract":"dx = alpha*x - beta*x*y, dy = delta*x*y - gamma*y evaluated from the same start-of-step state; Euler update with each population floored at 0; return [path of [x,y] rounded 4 including start, coexistence equilibrium [gamma/delta, alpha/beta] rounded 4 or None when beta or delta is not positive].","evaluation_group":"w2-ecopop-lotka-volterra","failed_approach":"A half-step prey estimate is still not the start-of-step state required by Euler.","family":"w2-ecopop-lotka-volterra-simultaneous-derivative-state","id":"FA-65406","implementations":{"attempt":{"sha256":"bb5e65f2310e839b0208039545485ae77500a1b66ae5fde39d15e94ec80921a0","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(prey0, pred0, alpha, beta, delta, gamma, dt, steps):\n    x, y = float(prey0), float(pred0)\n    path = [[round(x, 4), round(y, 4)]]\n    for _ in range(steps):\n        dx = alpha * x - beta * x * y\n        dy = delta * (x + dx * dt / 2) * y - gamma * y\n        x = max(x + dx * dt, 0.0)\n        y = max(y + dy * dt, 0.0)\n        path.append([round(x, 4), round(y, 4)])\n    eq = [round(gamma / delta, 4), round(alpha / beta, 4)] if beta > 0 and delta > 0 else None\n    return [path, eq]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, 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":"bdee7bd673cb18b01b827c377dca99f630eab9f5af4b407771575ddd522862a1","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(prey0, pred0, alpha, beta, delta, gamma, dt, steps):\n    x, y = float(prey0), float(pred0)\n    path = [[round(x, 4), round(y, 4)]]\n    for _ in range(steps):\n        dx = alpha * x - beta * x * y\n        x = max(x + dx * dt, 0.0)\n        dy = delta * x * y - gamma * y\n        y = max(y + dy * dt, 0.0)\n        path.append([round(x, 4), round(y, 4)])\n    eq = [round(gamma / delta, 4), round(alpha / beta, 4)] if beta > 0 and delta > 0 else None\n    return [path, eq]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, 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"},"fixed":{"sha256":"b76fd44eeb3cd41b3c342c82200a65cce2d9efccf0a78777ebd0528d4e0da968","source":"\"\"\"Failure Map reference implementation. Python standard library only.\"\"\"\nimport json\nimport math\nN = 1\nobservations = []\ndef solve(prey0, pred0, alpha, beta, delta, gamma, dt, steps):\n    x, y = float(prey0), float(pred0)\n    path = [[round(x, 4), round(y, 4)]]\n    for _ in range(steps):\n        dx = alpha * x - beta * x * y\n        dy = delta * x * y - gamma * y\n        x = max(x + dx * dt, 0.0)\n        y = max(y + dy * dt, 0.0)\n        path.append([round(x, 4), round(y, 4)])\n    eq = [round(gamma / delta, 4), round(alpha / beta, 4)] if beta > 0 and delta > 0 else None\n    return [path, eq]\ndef check(label, actual, expected):\n    observations.append({\"check\": label, \"actual\": actual, \"expected\": expected, \"passed\": actual == expected})\nfixtures = [[('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: prey absent',\n   (0, 10, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])],\n [('regression: hare and lynx',\n   (40, 9, 0.1, 0.02, 0.01, 0.1, 0.5, 6),\n   [[[40.0, 9.0],\n     [38.4, 10.35],\n     [36.3456, 11.8197],\n     [33.8669, 13.3767],\n     [31.03, 14.973],\n     [27.9354, 16.5474],\n     [24.7096, 18.0313]],\n    [10.0, 5.0]]),\n  ('regression: large step overshoot',\n   (10, 50, 0.5, 0.1, 0.02, 0.4, 1.0, 4),\n   [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]]),\n  ('control: predators absent',\n   (20, 0, 0.3, 0.05, 0.02, 0.2, 0.5, 4),\n   [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]]),\n  ('control: no interaction',\n   (30, 5, 0.2, 0.0, 0.0, 0.1, 1.0, 3),\n   [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], None]),\n  ('control: at equilibrium',\n   (10, 5, 0.5, 0.1, 0.02, 0.2, 0.25, 4),\n   [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]]),\n  ('regression: fine steps',\n   (15, 4, 0.8, 0.1, 0.05, 0.6, 0.1, 8),\n   [[[15.0, 4.0],\n     [15.6, 4.06],\n     [16.2146, 4.1331],\n     [16.8416, 4.2202],\n     [17.4782, 4.3223],\n     [18.121, 4.4407],\n     [18.766, 4.5766],\n     [19.4084, 4.7315],\n     [20.0428, 4.9067]],\n    [12.0, 8.0]]),\n  ('regression: predator crash',\n   (5, 30, 0.4, 0.2, 0.01, 0.9, 1.0, 3),\n   [[[5.0, 30.0], [0.0, 4.5], [0.0, 0.45], [0.0, 0.045]], [90.0, 2.0]])]]\nfor label, args, expected in fixtures[N - 1]:\n    check(label, 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":"Deterministic bounded teaching model with a stipulated contract; not a validated scientific or public-health modelling 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":"w2-ecopop-lotka-volterra-simultaneous-derivative-state","generated_at":"2026-09-29T14:47:33.732788+00:00","license":"CC0-1.0","python":"3.12.14","seed":1,"split":"open-access"},"relevance":"Population projections set harvest quotas, conservation status and pest-control timing; a wrong update order, boundary or rate conversion silently changes management advice.","repair":"Restore the simultaneous derivative state rule: `dy = delta * x * y - gamma * y / x = max(x + dx * dt, 0.0)`.","root_cause":"The prey update is applied before the predator derivative is evaluated.","sha256":"9948c671f2885f92a355c2215b6c173a40ba7d6cb68735440f70a85ac423324b","title":"Lotka-Volterra predator-prey Euler integration: simultaneous derivative state · case 01","variant":1,"variant_policy":"Five numbered records share a model and may reuse boundary fixtures.","verification":{"attempt":{"elapsed_ms":41.54,"exit_code":1,"observations":[{"actual":[[[40.0,9.0],[38.4,10.314],[36.3594,11.726],[33.9139,13.1997],[31.1331,14.6862],[28.1174,16.1274],[24.9887,17.4621]],[10.0,5.0]],"check":"regression: hare and lynx","expected":[[[40.0,9.0],[38.4,10.35],[36.3456,11.8197],[33.8669,13.3767],[31.03,14.973],[27.9354,16.5474],[24.7096,18.0313]],[10.0,5.0]],"passed":false},{"actual":[[[10.0,50.0],[0.0,17.5],[0.0,10.5],[0.0,6.3],[0.0,3.78]],[20.0,5.0]],"check":"regression: large step overshoot","expected":[[[10.0,50.0],[0.0,40.0],[0.0,24.0],[0.0,14.4],[0.0,8.64]],[20.0,5.0]],"passed":false},{"actual":[[[20.0,0.0],[23.0,0.0],[26.45,0.0],[30.4175,0.0],[34.9801,0.0]],[10.0,6.0]],"check":"control: predators absent","expected":[[[20.0,0.0],[23.0,0.0],[26.45,0.0],[30.4175,0.0],[34.9801,0.0]],[10.0,6.0]],"passed":true},{"actual":[[[0.0,10.0],[0.0,9.0],[0.0,8.1],[0.0,7.29],[0.0,6.561]],[10.0,6.0]],"check":"control: prey absent","expected":[[[0.0,10.0],[0.0,9.0],[0.0,8.1],[0.0,7.29],[0.0,6.561]],[10.0,6.0]],"passed":true},{"actual":[[[30.0,5.0],[36.0,4.5],[43.2,4.05],[51.84,3.645]],null],"check":"control: no interaction","expected":[[[30.0,5.0],[36.0,4.5],[43.2,4.05],[51.84,3.645]],null],"passed":true},{"actual":[[[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0]],[10.0,5.0]],"check":"control: at equilibrium","expected":[[[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0]],[10.0,5.0]],"passed":true},{"actual":[[[15.0,4.0],[15.6,4.066],[16.2137,4.1454],[16.8387,4.2392],[17.4719,4.3485],[18.1099,4.4744],[18.7484,4.6183],[19.3824,4.7814],[20.0063,4.9654]],[12.0,8.0]],"check":"regression: fine steps","expected":[[[15.0,4.0],[15.6,4.06],[16.2146,4.1331],[16.8416,4.2202],[17.4782,4.3223],[18.121,4.4407],[18.766,4.5766],[19.4084,4.7315],[20.0428,4.9067]],[12.0,8.0]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: hare and lynx\", \"actual\": [[[40.0, 9.0], [38.4, 10.314], [36.3594, 11.726], [33.9139, 13.1997], [31.1331, 14.6862], [28.1174, 16.1274], [24.9887, 17.4621]], [10.0, 5.0]], \"expected\": [[[40.0, 9.0], [38.4, 10.35], [36.3456, 11.8197], [33.8669, 13.3767], [31.03, 14.973], [27.9354, 16.5474], [24.7096, 18.0313]], [10.0, 5.0]], \"passed\": false}, {\"check\": \"regression: large step overshoot\", \"actual\": [[[10.0, 50.0], [0.0, 17.5], [0.0, 10.5], [0.0, 6.3], [0.0, 3.78]], [20.0, 5.0]], \"expected\": [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]], \"passed\": false}, {\"check\": \"control: predators absent\", \"actual\": [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]], \"expected\": [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]], \"passed\": true}, {\"check\": \"control: prey absent\", \"actual\": [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]], \"expected\": [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]], \"passed\": true}, {\"check\": \"control: no interaction\", \"actual\": [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], null], \"expected\": [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], null], \"passed\": true}, {\"check\": \"control: at equilibrium\", \"actual\": [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]], \"expected\": [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]], \"passed\": true}, {\"check\": \"regression: fine steps\", \"actual\": [[[15.0, 4.0], [15.6, 4.066], [16.2137, 4.1454], [16.8387, 4.2392], [17.4719, 4.3485], [18.1099, 4.4744], [18.7484, 4.6183], [19.3824, 4.7814], [20.0063, 4.9654]], [12.0, 8.0]], \"expected\": [[[15.0, 4.0], [15.6, 4.06], [16.2146, 4.1331], [16.8416, 4.2202], [17.4782, 4.3223], [18.121, 4.4407], [18.766, 4.5766], [19.4084, 4.7315], [20.0428, 4.9067]], [12.0, 8.0]], \"passed\": false}], \"passed\": false}\n"},"broken":{"elapsed_ms":41.765,"exit_code":1,"observations":[{"actual":[[[40.0,9.0],[38.4,10.278],[36.3732,11.6333],[33.9605,13.027],[31.2345,14.4101],[28.2953,15.7283],[25.2597,16.9284]],[10.0,5.0]],"check":"regression: hare and lynx","expected":[[[40.0,9.0],[38.4,10.35],[36.3456,11.8197],[33.8669,13.3767],[31.03,14.973],[27.9354,16.5474],[24.7096,18.0313]],[10.0,5.0]],"passed":false},{"actual":[[[10.0,50.0],[0.0,30.0],[0.0,18.0],[0.0,10.8],[0.0,6.48]],[20.0,5.0]],"check":"regression: large step overshoot","expected":[[[10.0,50.0],[0.0,40.0],[0.0,24.0],[0.0,14.4],[0.0,8.64]],[20.0,5.0]],"passed":false},{"actual":[[[20.0,0.0],[23.0,0.0],[26.45,0.0],[30.4175,0.0],[34.9801,0.0]],[10.0,6.0]],"check":"control: predators absent","expected":[[[20.0,0.0],[23.0,0.0],[26.45,0.0],[30.4175,0.0],[34.9801,0.0]],[10.0,6.0]],"passed":true},{"actual":[[[0.0,10.0],[0.0,9.0],[0.0,8.1],[0.0,7.29],[0.0,6.561]],[10.0,6.0]],"check":"control: prey absent","expected":[[[0.0,10.0],[0.0,9.0],[0.0,8.1],[0.0,7.29],[0.0,6.561]],[10.0,6.0]],"passed":true},{"actual":[[[30.0,5.0],[36.0,4.5],[43.2,4.05],[51.84,3.645]],null],"check":"control: no interaction","expected":[[[30.0,5.0],[36.0,4.5],[43.2,4.05],[51.84,3.645]],null],"passed":true},{"actual":[[[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0]],[10.0,5.0]],"check":"control: at equilibrium","expected":[[[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0]],[10.0,5.0]],"passed":true},{"actual":[[[15.0,4.0],[15.6,4.072],[16.2128,4.1578],[16.8357,4.2583],[17.4656,4.3747],[18.0988,4.5081],[18.7308,4.6598],[19.3565,4.8312],[19.9698,5.0237]],[12.0,8.0]],"check":"regression: fine steps","expected":[[[15.0,4.0],[15.6,4.06],[16.2146,4.1331],[16.8416,4.2202],[17.4782,4.3223],[18.121,4.4407],[18.766,4.5766],[19.4084,4.7315],[20.0428,4.9067]],[12.0,8.0]],"passed":false}],"passed":false,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: hare and lynx\", \"actual\": [[[40.0, 9.0], [38.4, 10.278], [36.3732, 11.6333], [33.9605, 13.027], [31.2345, 14.4101], [28.2953, 15.7283], [25.2597, 16.9284]], [10.0, 5.0]], \"expected\": [[[40.0, 9.0], [38.4, 10.35], [36.3456, 11.8197], [33.8669, 13.3767], [31.03, 14.973], [27.9354, 16.5474], [24.7096, 18.0313]], [10.0, 5.0]], \"passed\": false}, {\"check\": \"regression: large step overshoot\", \"actual\": [[[10.0, 50.0], [0.0, 30.0], [0.0, 18.0], [0.0, 10.8], [0.0, 6.48]], [20.0, 5.0]], \"expected\": [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]], \"passed\": false}, {\"check\": \"control: predators absent\", \"actual\": [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]], \"expected\": [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]], \"passed\": true}, {\"check\": \"control: prey absent\", \"actual\": [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]], \"expected\": [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]], \"passed\": true}, {\"check\": \"control: no interaction\", \"actual\": [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], null], \"expected\": [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], null], \"passed\": true}, {\"check\": \"control: at equilibrium\", \"actual\": [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]], \"expected\": [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]], \"passed\": true}, {\"check\": \"regression: fine steps\", \"actual\": [[[15.0, 4.0], [15.6, 4.072], [16.2128, 4.1578], [16.8357, 4.2583], [17.4656, 4.3747], [18.0988, 4.5081], [18.7308, 4.6598], [19.3565, 4.8312], [19.9698, 5.0237]], [12.0, 8.0]], \"expected\": [[[15.0, 4.0], [15.6, 4.06], [16.2146, 4.1331], [16.8416, 4.2202], [17.4782, 4.3223], [18.121, 4.4407], [18.766, 4.5766], [19.4084, 4.7315], [20.0428, 4.9067]], [12.0, 8.0]], \"passed\": false}], \"passed\": false}\n"},"fixed":{"elapsed_ms":42.324,"exit_code":0,"observations":[{"actual":[[[40.0,9.0],[38.4,10.35],[36.3456,11.8197],[33.8669,13.3767],[31.03,14.973],[27.9354,16.5474],[24.7096,18.0313]],[10.0,5.0]],"check":"regression: hare and lynx","expected":[[[40.0,9.0],[38.4,10.35],[36.3456,11.8197],[33.8669,13.3767],[31.03,14.973],[27.9354,16.5474],[24.7096,18.0313]],[10.0,5.0]],"passed":true},{"actual":[[[10.0,50.0],[0.0,40.0],[0.0,24.0],[0.0,14.4],[0.0,8.64]],[20.0,5.0]],"check":"regression: large step overshoot","expected":[[[10.0,50.0],[0.0,40.0],[0.0,24.0],[0.0,14.4],[0.0,8.64]],[20.0,5.0]],"passed":true},{"actual":[[[20.0,0.0],[23.0,0.0],[26.45,0.0],[30.4175,0.0],[34.9801,0.0]],[10.0,6.0]],"check":"control: predators absent","expected":[[[20.0,0.0],[23.0,0.0],[26.45,0.0],[30.4175,0.0],[34.9801,0.0]],[10.0,6.0]],"passed":true},{"actual":[[[0.0,10.0],[0.0,9.0],[0.0,8.1],[0.0,7.29],[0.0,6.561]],[10.0,6.0]],"check":"control: prey absent","expected":[[[0.0,10.0],[0.0,9.0],[0.0,8.1],[0.0,7.29],[0.0,6.561]],[10.0,6.0]],"passed":true},{"actual":[[[30.0,5.0],[36.0,4.5],[43.2,4.05],[51.84,3.645]],null],"check":"control: no interaction","expected":[[[30.0,5.0],[36.0,4.5],[43.2,4.05],[51.84,3.645]],null],"passed":true},{"actual":[[[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0]],[10.0,5.0]],"check":"control: at equilibrium","expected":[[[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0],[10.0,5.0]],[10.0,5.0]],"passed":true},{"actual":[[[15.0,4.0],[15.6,4.06],[16.2146,4.1331],[16.8416,4.2202],[17.4782,4.3223],[18.121,4.4407],[18.766,4.5766],[19.4084,4.7315],[20.0428,4.9067]],[12.0,8.0]],"check":"regression: fine steps","expected":[[[15.0,4.0],[15.6,4.06],[16.2146,4.1331],[16.8416,4.2202],[17.4782,4.3223],[18.121,4.4407],[18.766,4.5766],[19.4084,4.7315],[20.0428,4.9067]],[12.0,8.0]],"passed":true}],"passed":true,"stderr":"","stdout":"{\"observations\": [{\"check\": \"regression: hare and lynx\", \"actual\": [[[40.0, 9.0], [38.4, 10.35], [36.3456, 11.8197], [33.8669, 13.3767], [31.03, 14.973], [27.9354, 16.5474], [24.7096, 18.0313]], [10.0, 5.0]], \"expected\": [[[40.0, 9.0], [38.4, 10.35], [36.3456, 11.8197], [33.8669, 13.3767], [31.03, 14.973], [27.9354, 16.5474], [24.7096, 18.0313]], [10.0, 5.0]], \"passed\": true}, {\"check\": \"regression: large step overshoot\", \"actual\": [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]], \"expected\": [[[10.0, 50.0], [0.0, 40.0], [0.0, 24.0], [0.0, 14.4], [0.0, 8.64]], [20.0, 5.0]], \"passed\": true}, {\"check\": \"control: predators absent\", \"actual\": [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]], \"expected\": [[[20.0, 0.0], [23.0, 0.0], [26.45, 0.0], [30.4175, 0.0], [34.9801, 0.0]], [10.0, 6.0]], \"passed\": true}, {\"check\": \"control: prey absent\", \"actual\": [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]], \"expected\": [[[0.0, 10.0], [0.0, 9.0], [0.0, 8.1], [0.0, 7.29], [0.0, 6.561]], [10.0, 6.0]], \"passed\": true}, {\"check\": \"control: no interaction\", \"actual\": [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], null], \"expected\": [[[30.0, 5.0], [36.0, 4.5], [43.2, 4.05], [51.84, 3.645]], null], \"passed\": true}, {\"check\": \"control: at equilibrium\", \"actual\": [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]], \"expected\": [[[10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0], [10.0, 5.0]], [10.0, 5.0]], \"passed\": true}, {\"check\": \"regression: fine steps\", \"actual\": [[[15.0, 4.0], [15.6, 4.06], [16.2146, 4.1331], [16.8416, 4.2202], [17.4782, 4.3223], [18.121, 4.4407], [18.766, 4.5766], [19.4084, 4.7315], [20.0428, 4.9067]], [12.0, 8.0]], \"expected\": [[[15.0, 4.0], [15.6, 4.06], [16.2146, 4.1331], [16.8416, 4.2202], [17.4782, 4.3223], [18.121, 4.4407], [18.766, 4.5766], [19.4084, 4.7315], [20.0428, 4.9067]], [12.0, 8.0]], \"passed\": true}], \"passed\": true}\n"}},"verified":true,"visibility":"public"}