"""Independent integer oracle for the mixed-input condition statistic only."""
import json
import pathlib
import random
import statistics
import sys
from fractions import Fraction

n = 1_000_000
count = 50
scale = 1 << 52
conditions = []
for trial in range(count):
    rng = random.Random(2 * (n * count + trial) + 1)
    total = 0
    magnitude = 0
    for _ in range(n):
        value = int(rng.random() * (1 << 53)) - scale
        total += value
        magnitude += abs(value)
    conditions.append(Fraction(magnitude, abs(total)))
conditions.sort()
result = {
    "n": n,
    "trials": count,
    "arithmetic": "Exact integers and rational ratios for the seeded binary input lattice",
    "lower_middle": float(conditions[count // 2 - 1]),
    "upper_middle": float(conditions[count // 2]),
    "usual_even_sample_median": float(statistics.median(conditions)),
    "upper_middle_rounded_3": round(float(conditions[count // 2]), 3),
    "usual_median_rounded_3": round(float(statistics.median(conditions)), 3),
    "middle_values_equal": conditions[count // 2 - 1] == conditions[count // 2],
    "scope": "Targeted statistic-definition audit, not a repeat of the full summation benchmark"
}
out = pathlib.Path(sys.argv[1])
out.write_text(json.dumps(result, indent=2) + "\n")
print(json.dumps(result, indent=2))
