{
  "denominator_limit": 1000000,
  "minimum_mass_boundary_identical": {
    "P": {
      "a": "1/1000000",
      "b": "999999/1000000"
    },
    "Q": {
      "a": "1/1000000",
      "b": "999999/1000000"
    },
    "midpoint": {
      "a": "1/1000000",
      "b": "999999/1000000"
    },
    "KL_P_Q_bits": 0.0,
    "KL_Q_P_bits": 0.0,
    "JS_divergence_bits": 0.0,
    "JS_distance_sqrt_divergence": 0.0,
    "independent_midpoint_entropy_JS_bits": 0.0,
    "entropy_P_bits": 2.137426288890686e-05,
    "crossentropy_P_Q_bits": 2.137426288890686e-05,
    "zero_mass_terms_skipped_as_limit": true
  },
  "disjoint_support": {
    "P": {
      "a": "1",
      "b": "0"
    },
    "Q": {
      "a": "0",
      "b": "1"
    },
    "midpoint": {
      "a": "1/2",
      "b": "1/2"
    },
    "KL_P_Q_bits": "Infinity",
    "KL_Q_P_bits": "Infinity",
    "JS_divergence_bits": 1.0,
    "JS_distance_sqrt_divergence": 1.0,
    "independent_midpoint_entropy_JS_bits": 1.0,
    "entropy_P_bits": -0.0,
    "crossentropy_P_Q_bits": "Infinity",
    "zero_mass_terms_skipped_as_limit": true
  },
  "finite_asymmetric_example": {
    "P": {
      "a": "1/2",
      "b": "1/2"
    },
    "Q": {
      "a": "3/4",
      "b": "1/4"
    },
    "midpoint": {
      "a": "5/8",
      "b": "3/8"
    },
    "KL_P_Q_bits": 0.20751874963942185,
    "KL_Q_P_bits": 0.18872187554086717,
    "JS_divergence_bits": 0.0487949406953985,
    "JS_distance_sqrt_divergence": 0.22089576884901735,
    "independent_midpoint_entropy_JS_bits": 0.04879494069539858,
    "entropy_P_bits": 1.0,
    "crossentropy_P_Q_bits": 1.207518749639422,
    "zero_mass_terms_skipped_as_limit": true
  },
  "all_four_input_order_permutations": 4,
  "identical_labeled_law_in_different_order": {
    "P": {
      "a": "1/4",
      "b": "3/4"
    },
    "Q": {
      "b": "3/4",
      "a": "1/4"
    },
    "midpoint": {
      "a": "1/4",
      "b": "3/4"
    },
    "KL_P_Q_bits": 0.0,
    "KL_Q_P_bits": 0.0,
    "JS_divergence_bits": 0.0,
    "JS_distance_sqrt_divergence": 0.0,
    "independent_midpoint_entropy_JS_bits": 0.0,
    "entropy_P_bits": 0.8112781244591328,
    "crossentropy_P_Q_bits": 0.8112781244591328,
    "zero_mass_terms_skipped_as_limit": true
  },
  "naive_position_alignment_wrong": {
    "P": {
      "0": "1/4",
      "1": "3/4"
    },
    "Q": {
      "0": "3/4",
      "1": "1/4"
    },
    "midpoint": {
      "0": "1/2",
      "1": "1/2"
    },
    "KL_P_Q_bits": 0.792481250360578,
    "KL_Q_P_bits": 0.792481250360578,
    "JS_divergence_bits": 0.18872187554086717,
    "JS_distance_sqrt_divergence": 0.4344213111034807,
    "independent_midpoint_entropy_JS_bits": 0.18872187554086717,
    "entropy_P_bits": 0.8112781244591328,
    "crossentropy_P_Q_bits": 1.603759374819711,
    "zero_mass_terms_skipped_as_limit": true
  },
  "invalid_cases_rejected": [
    "negative",
    "nonfinite",
    "empty",
    "zero_total",
    "not_normalized",
    "universe_mismatch",
    "duplicate_labels",
    "tiny_positive_underflow_outside_profile",
    "denominator_just_above_limit"
  ],
  "scope": "strict normalized labeled finite laws with reduced input denominators<=1000000, log2 bits, no hidden epsilon/renormalization; JSdistance is sqrt divergence; Infinity explicit string never invalid JSON; no SciPy/model quality/calibration/drift/significance or metric claim for KL"
}
