{
  "all_ok": true,
  "bridge_external": true,
  "brute_force_validation": {
    "formula_never_exceeds_true_min": true,
    "rows": [
      {
        "brute_force_min": 3,
        "formula_floor": 2.9282032302755088,
        "formula_is_lower_bound": true,
        "n_devices": 2,
        "n_tokens": 4,
        "slack": 0.07179676972449123
      },
      {
        "brute_force_min": 6,
        "formula_floor": 5.211102550927978,
        "formula_is_lower_bound": true,
        "n_devices": 4,
        "n_tokens": 4,
        "slack": 0.7888974490720218
      },
      {
        "brute_force_min": 5,
        "formula_floor": 4.392304845413263,
        "formula_is_lower_bound": true,
        "n_devices": 2,
        "n_tokens": 6,
        "slack": 0.6076951545867368
      },
      {
        "brute_force_min": 7,
        "formula_floor": 6.583005244258362,
        "formula_is_lower_bound": true,
        "n_devices": 3,
        "n_tokens": 6,
        "slack": 0.416994755741638
      },
      {
        "brute_force_min": 6,
        "formula_floor": 5.8564064605510175,
        "formula_is_lower_bound": true,
        "n_devices": 2,
        "n_tokens": 8,
        "slack": 0.14359353944898245
      },
      {
        "brute_force_min": 11,
        "formula_floor": 10.422205101855956,
        "formula_is_lower_bound": true,
        "n_devices": 4,
        "n_tokens": 8,
        "slack": 0.5777948981440435
      }
    ]
  },
  "citations": [
    "Saha & Ye (2024), arXiv:2402.07443 \u2014 I/O complexity of exact attention (single device)",
    "Hong & Kung (1981) \u2014 the red-blue pebble game",
    "Liu, Zaharia & Abbeel (2023), arXiv:2310.01889 \u2014 ring attention (an in-model schedule)"
  ],
  "composition_with_saha_ye": {
    "binding_axis_switches": true,
    "compose_by": "max (independent axes; neither implies the other)",
    "rows": [
      {
        "binding_axis": "network",
        "composed_floor_max": 383805.4537986715,
        "dim": 128,
        "fast_memory_words": 1048576,
        "fraction_of_saturation": 0.3660254037844386,
        "n_devices": 2,
        "n_tokens": 4096,
        "network_words_floor": 383805.4537986715,
        "saturation_limit_2dN": 1048576.0,
        "single_device_io_floor": 131072.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 858499.8990998077,
        "dim": 128,
        "fast_memory_words": 1048576,
        "fraction_of_saturation": 0.8187293044088437,
        "n_devices": 8,
        "n_tokens": 4096,
        "network_words_floor": 858499.8990998077,
        "saturation_limit_2dN": 1048576.0,
        "single_device_io_floor": 131072.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 1024096.7514067716,
        "dim": 128,
        "fast_memory_words": 1048576,
        "fraction_of_saturation": 0.9766547693317142,
        "n_devices": 64,
        "n_tokens": 4096,
        "network_words_floor": 1024096.7514067716,
        "saturation_limit_2dN": 1048576.0,
        "single_device_io_floor": 131072.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 767610.907597343,
        "dim": 128,
        "fast_memory_words": 4194304,
        "fraction_of_saturation": 0.3660254037844386,
        "n_devices": 2,
        "n_tokens": 8192,
        "network_words_floor": 767610.907597343,
        "saturation_limit_2dN": 2097152.0,
        "single_device_io_floor": 131072.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 1716999.7981996154,
        "dim": 128,
        "fast_memory_words": 4194304,
        "fraction_of_saturation": 0.8187293044088437,
        "n_devices": 8,
        "n_tokens": 8192,
        "network_words_floor": 1716999.7981996154,
        "saturation_limit_2dN": 2097152.0,
        "single_device_io_floor": 131072.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 2048193.5028135432,
        "dim": 128,
        "fast_memory_words": 4194304,
        "fraction_of_saturation": 0.9766547693317142,
        "n_devices": 64,
        "n_tokens": 8192,
        "network_words_floor": 2048193.5028135432,
        "saturation_limit_2dN": 2097152.0,
        "single_device_io_floor": 131072.0
      },
      {
        "binding_axis": "single_device_io",
        "composed_floor_max": 2097152.0,
        "dim": 64,
        "fast_memory_words": 1048576,
        "fraction_of_saturation": 0.3660254037844386,
        "n_devices": 2,
        "n_tokens": 32768,
        "network_words_floor": 1535221.815194686,
        "saturation_limit_2dN": 4194304.0,
        "single_device_io_floor": 2097152.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 3433999.596399231,
        "dim": 64,
        "fast_memory_words": 1048576,
        "fraction_of_saturation": 0.8187293044088437,
        "n_devices": 8,
        "n_tokens": 32768,
        "network_words_floor": 3433999.596399231,
        "saturation_limit_2dN": 4194304.0,
        "single_device_io_floor": 2097152.0
      },
      {
        "binding_axis": "network",
        "composed_floor_max": 4096387.0056270864,
        "dim": 64,
        "fast_memory_words": 1048576,
        "fraction_of_saturation": 0.9766547693317142,
        "n_devices": 64,
        "n_tokens": 32768,
        "network_words_floor": 4096387.0056270864,
        "saturation_limit_2dN": 4194304.0,
        "single_device_io_floor": 2097152.0
      }
    ]
  },
  "declared_abstraction": {
    "attention": "exact; every score pair must be computed somewhere",
    "cost_unit": "a query row or key column costs d words to move",
    "in_model_note": "ring/block schedules that circulate whole K/V blocks ARE covered \u2014 they move exactly the rows/columns this bound counts",
    "out_of_model": [
      "fast-memory capacity M (that is Saha-Ye's axis)",
      "V movement and the softmax normalisation pass",
      "PARTIAL-SUM FORWARDING (splitting one inner product across devices)",
      "network topology, latency, and contention"
    ],
    "sharding": "even: device p natively holds N/P query rows and N/P key columns"
  },
  "executed": true,
  "explicit_non_claim": "MODEL, not a measurement. No novelty is claimed in I/O complexity theory; the underlying single-device theorem is Saha-Ye's and is cited. The contribution is the network axis, its brute-force validation, and the composition. BRIDGE-EXTERNAL: pinned counts and the modeled base untouched.",
  "floor_curve": {
    "approaches_saturation": true,
    "below_saturation": true,
    "dim": 128,
    "monotone_in_devices": true,
    "n_tokens": 4096,
    "rows": [
      {
        "n_devices": 1,
        "words_floor": 0.0
      },
      {
        "n_devices": 2,
        "words_floor": 383805.4537986715
      },
      {
        "n_devices": 4,
        "words_floor": 683029.633555232
      },
      {
        "n_devices": 8,
        "words_floor": 858499.8990998077
      },
      {
        "n_devices": 16,
        "words_floor": 951856.312894097
      },
      {
        "n_devices": 32,
        "words_floor": 999814.021551799
      },
      {
        "n_devices": 64,
        "words_floor": 1024096.7514067716
      }
    ],
    "saturation_limit_2dN": 1048576.0,
    "single_device_floor_is_zero": true
  },
  "honest_scope": "A converse of the DECLARED abstraction: no in-model schedule moves fewer words. It does not bound latency, does not model topology or contention, ignores fast-memory capacity, and assumes no partial-sum forwarding.",
  "schema": "distributed-attention-floor-v101",
  "skipped": false,
  "summary": {
    "audit_note": "The bound is a COUNTING argument and is deliberately loose; its value is that it is brute-force validated (never exceeds the true integer minimum on any tested configuration) and that it opens an axis Saha-Ye does not cover. A TIGHT distributed bound is OPEN and is not claimed here.",
    "headline": "exact attention sharded across P devices must move at least 2dN(sqrt(1-(P-1)/P^2) - 1/P) words; at N=4096, d=128 this rises to 1.024e+06 words at P=64 and SATURATES at 2dN = 1.049e+06 \u2014 scaling out never amortises it away"
  },
  "wall_banner_untouched": {
    "checked": true,
    "slope_db_per_decade": 5.673,
    "unchanged": true
  },
  "z3_ordering_lemma": {
    "name": "distributed_attention_floor_ordering",
    "proven": true,
    "statement": "DISTRIBUTED-ATTENTION NETWORK FLOOR ORDERING (v101): the counting bound on inter-device words for exact sharded attention rests on AM-GM (a fixed pair product is cheapest at x=y), on CONCENTRATION being cheaper than an even split for a sum-of-squares target (so the minimiser loads one device \u2014 an even-split assumption overstates the floor), and on the saturation step s^2<=1 => s<=1, which caps the floor at 2dN for ANY device count. The floor values, the brute-force validation and the saturation point are producer numerics, not z3 facts; the bound is deliberately loose (ignores fast-memory M, assumes no partial-sum forwarding) and a tight distributed bound stays OPEN.",
    "tier": "z3-lra"
  }
}
