[
  {
    "id": "C01",
    "name": "Printed-total gap",
    "formula": "S - O",
    "source_inputs": "S1:119.1; S2:110.9",
    "result": "8.2",
    "assumption": "Use printed body values; treat S1 $ as USD. Rounded estimates, not exact census values.",
    "display": "$8.2bn",
    "status": "DERIVED"
  },
  {
    "id": "C02",
    "name": "Gap relative to Omdia",
    "formula": "(S-O)/O*100",
    "source_inputs": "C01; S2:110.9",
    "result": "7.394048692515779981965734896",
    "assumption": "Use printed body values; treat S1 $ as USD. Rounded estimates, not exact census values.",
    "display": "about 7.4%",
    "status": "DERIVED"
  },
  {
    "id": "C03",
    "name": "Gap relative to Synergy",
    "formula": "(S-O)/S*100",
    "source_inputs": "C01; S1:119.1",
    "result": "6.884970612930310663308144416",
    "assumption": "Use printed body values; treat S1 $ as USD. Rounded estimates, not exact census values.",
    "display": "about 6.9%",
    "status": "DERIVED"
  },
  {
    "id": "C04",
    "name": "Symmetric percentage difference",
    "formula": "(S-O)/((S+O)/2)*100",
    "source_inputs": "S1; S2",
    "result": "7.130434782608695652173913043",
    "assumption": "Mean is an arithmetic denominator, not a best estimate.",
    "display": "about 7.1%",
    "status": "DERIVED"
  },
  {
    "id": "C05a",
    "name": "Gap lower rounding bound",
    "formula": "(S-.05)-(O+.05)",
    "source_inputs": "S1; S2",
    "result": "8.10",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals.",
    "display": "$8.1bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C05b",
    "name": "Gap upper rounding bound",
    "formula": "(S+.05)-(O-.05)",
    "source_inputs": "S1; S2",
    "result": "8.30",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals.",
    "display": "$8.3bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C06",
    "name": "Omdia conditional prior-year level",
    "formula": "O/(1+.29)",
    "source_inputs": "S2:110.9;29%",
    "result": "85.96899224806201550387596899",
    "assumption": "29% assumed exact and same currency/coverage/vintage basis as level. Omdia does not disclose full FX policy.",
    "display": "about $86.0bn",
    "status": "CONDITIONAL"
  },
  {
    "id": "C07a",
    "name": "Omdia implied prior lower bound",
    "formula": "(O-.05)/(1+.295)",
    "source_inputs": "S2",
    "result": "85.59845559845559845559845560",
    "assumption": "Assume nearest $0.1bn and nearest whole percentage-point growth, plus same-basis growth. Sensitivity, not source observation.",
    "display": "about $85.6bn",
    "status": "CONDITIONAL"
  },
  {
    "id": "C07b",
    "name": "Omdia implied prior upper bound",
    "formula": "(O+.05)/(1+.285)",
    "source_inputs": "S2",
    "result": "86.34241245136186770428015564",
    "assumption": "Assume nearest $0.1bn and nearest whole percentage-point growth, plus same-basis growth. Sensitivity, not source observation.",
    "display": "about $86.3bn",
    "status": "CONDITIONAL"
  },
  {
    "id": "C08",
    "name": "Rejected Synergy reverse-growth calculation",
    "formula": "S/(1+.30)",
    "source_inputs": "S1:119.1;30%",
    "result": "91.61538461538461538461538462",
    "assumption": "NOT a valid nominal Q4 2024 estimate: S1 30% backs out FX effects and no level bridge is published.",
    "display": "$91.6bn mechanically, rejected as baseline",
    "status": "REJECTED INFERENCE"
  },
  {
    "id": "C09",
    "name": "Synergy rough prior from printed dollar increment",
    "formula": "S-29",
    "source_inputs": "S1:119.1;29bn increase",
    "result": "90.1",
    "assumption": "Treat rounded $29bn increment as central value. Not an exact baseline or confirmed revision.",
    "display": "about $90.1bn",
    "status": "CONDITIONAL"
  },
  {
    "id": "C10",
    "name": "Change between Synergy release vintages",
    "formula": "(S/90.6-1)*100",
    "source_inputs": "S1:119.1; S8:90.6",
    "result": "31.45695364238410596026490070",
    "assumption": "Older printed baseline. Cross-vintage dollar arithmetic; not source-reported 2026 FX-adjusted growth.",
    "display": "about 31.5%",
    "status": "CROSS-VINTAGE"
  },
  {
    "id": "C11",
    "name": "Dollar change across release vintages",
    "formula": "S-90.6",
    "source_inputs": "S1; S8",
    "result": "28.5",
    "assumption": "Older printed baseline; discrepancy with rounded $29bn is not proof of revision.",
    "display": "$28.5bn",
    "status": "CROSS-VINTAGE"
  },
  {
    "id": "C12",
    "name": "Annual average quarter, not Q4",
    "formula": "419/4",
    "source_inputs": "S1 full-year:419",
    "result": "104.75",
    "assumption": "Arithmetic average of four quarters, not a substitute for observed Q4.",
    "display": "about $104.8bn",
    "status": "ILLUSTRATION"
  },
  {
    "id": "C13",
    "name": "Q4 annualized scale, not full-year revenue",
    "formula": "S*4",
    "source_inputs": "S1:119.1",
    "result": "476.4",
    "assumption": "Assume Q4 pace repeated for four quarters; not a forecast or observed annual total.",
    "display": "$476.4bn annualized",
    "status": "ILLUSTRATION"
  },
  {
    "id": "C14S",
    "name": "Amazon: implied S eligible amount",
    "formula": "total*share/100",
    "source_inputs": "S1:119.1;share:28%",
    "result": "33.348",
    "assumption": "Rounded share applied to its own full-market total; inferred eligible amount, not disclosed company revenue.",
    "display": "about $33.3bn",
    "status": "DERIVED"
  },
  {
    "id": "C14S-low",
    "name": "Amazon: S rounding low",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S1",
    "result": "32.73875",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$32.74bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C14S-high",
    "name": "Amazon: S rounding high",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S1",
    "result": "33.95775",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$33.96bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C14O",
    "name": "Amazon: implied O eligible amount",
    "formula": "total*share/100",
    "source_inputs": "S2:110.9;share:32%",
    "result": "35.488",
    "assumption": "Rounded share applied to its own full-market total; inferred eligible amount, not disclosed company revenue.",
    "display": "about $35.5bn",
    "status": "DERIVED"
  },
  {
    "id": "C14O-low",
    "name": "Amazon: O rounding low",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S2",
    "result": "34.91775",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$34.92bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C14O-high",
    "name": "Amazon: O rounding high",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S2",
    "result": "36.05875",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$36.06bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C14P",
    "name": "Amazon: Synergy share if Omdia numerator unchanged",
    "formula": "O*O_share/S",
    "source_inputs": "S1 total; S2 total and Amazon share",
    "result": "29.79680940386230058774139379",
    "assumption": "Counterfactual: all vendor numerator values unchanged; only denominator differs. Not actual normalized share.",
    "display": "about 29.8%",
    "status": "COUNTERFACTUAL"
  },
  {
    "id": "C15S",
    "name": "Microsoft: implied S eligible amount",
    "formula": "total*share/100",
    "source_inputs": "S1:119.1;share:21%",
    "result": "25.011",
    "assumption": "Rounded share applied to its own full-market total; inferred eligible amount, not disclosed company revenue.",
    "display": "about $25.0bn",
    "status": "DERIVED"
  },
  {
    "id": "C15S-low",
    "name": "Microsoft: S rounding low",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S1",
    "result": "24.40525",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$24.41bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C15S-high",
    "name": "Microsoft: S rounding high",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S1",
    "result": "25.61725",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$25.62bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C15O",
    "name": "Microsoft: implied O eligible amount",
    "formula": "total*share/100",
    "source_inputs": "S2:110.9;share:22%",
    "result": "24.398",
    "assumption": "Rounded share applied to its own full-market total; inferred eligible amount, not disclosed company revenue.",
    "display": "about $24.4bn",
    "status": "DERIVED"
  },
  {
    "id": "C15O-low",
    "name": "Microsoft: O rounding low",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S2",
    "result": "23.83275",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$23.83bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C15O-high",
    "name": "Microsoft: O rounding high",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S2",
    "result": "24.96375",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$24.96bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C15P",
    "name": "Microsoft: Synergy share if Omdia numerator unchanged",
    "formula": "O*O_share/S",
    "source_inputs": "S1 total; S2 total and Microsoft share",
    "result": "20.48530646515533165407220823",
    "assumption": "Counterfactual: all vendor numerator values unchanged; only denominator differs. Not actual normalized share.",
    "display": "about 20.5%",
    "status": "COUNTERFACTUAL"
  },
  {
    "id": "C16S",
    "name": "Google: implied S eligible amount",
    "formula": "total*share/100",
    "source_inputs": "S1:119.1;share:14%",
    "result": "16.674",
    "assumption": "Rounded share applied to its own full-market total; inferred eligible amount, not disclosed company revenue.",
    "display": "about $16.7bn",
    "status": "DERIVED"
  },
  {
    "id": "C16S-low",
    "name": "Google: S rounding low",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S1",
    "result": "16.07175",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$16.07bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C16S-high",
    "name": "Google: S rounding high",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S1",
    "result": "17.27675",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$17.28bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C16O",
    "name": "Google: implied O eligible amount",
    "formula": "total*share/100",
    "source_inputs": "S2:110.9;share:12%",
    "result": "13.308",
    "assumption": "Rounded share applied to its own full-market total; inferred eligible amount, not disclosed company revenue.",
    "display": "about $13.3bn",
    "status": "DERIVED"
  },
  {
    "id": "C16O-low",
    "name": "Google: O rounding low",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S2",
    "result": "12.74775",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$12.75bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C16O-high",
    "name": "Google: O rounding high",
    "formula": "(total +/- .05)*(share +/- .5)/100",
    "source_inputs": "S2",
    "result": "13.86875",
    "assumption": "Sensitivity only: assume nearest $0.1bn rounding, independently; actual rounding rules undisclosed. Bounds are not confidence intervals. Also assume nearest whole percent share rounding.",
    "display": "$13.87bn boundary",
    "status": "SENSITIVITY"
  },
  {
    "id": "C16P",
    "name": "Google: Synergy share if Omdia numerator unchanged",
    "formula": "O*O_share/S",
    "source_inputs": "S1 total; S2 total and Google share",
    "result": "11.17380352644836272040302267",
    "assumption": "Counterfactual: all vendor numerator values unchanged; only denominator differs. Not actual normalized share.",
    "display": "about 11.2%",
    "status": "COUNTERFACTUAL"
  },
  {
    "id": "C17",
    "name": "AWS company segment unit normalization",
    "formula": "35579/1000",
    "source_inputs": "S9:35579 million",
    "result": "35.579",
    "assumption": "Company segment total; scope equivalence to analyst numerator not established.",
    "display": "$35.579bn",
    "status": "DERIVED"
  },
  {
    "id": "C18S",
    "name": "AWS segment minus Synergy implied amount",
    "formula": "35.579-119.1*.28",
    "source_inputs": "S9; S1",
    "result": "2.231",
    "assumption": "Scope diagnostic only; cannot label difference omitted AWS revenue or estimation error.",
    "display": "about $2.2bn",
    "status": "DIAGNOSTIC"
  },
  {
    "id": "C18O",
    "name": "AWS segment minus Omdia implied amount",
    "formula": "35.579-110.9*.32",
    "source_inputs": "S9; S2",
    "result": "0.091",
    "assumption": "Near match after rounding is not proof Omdia uses full AWS segment revenue.",
    "display": "about $0.1bn",
    "status": "DIAGNOSTIC"
  },
  {
    "id": "C19S",
    "name": "Sum of Synergy full-market top-three shares",
    "formula": "28+21+14",
    "source_inputs": "S1 shares",
    "result": "63",
    "assumption": "Sum of rounded shares; S1 separately says 68% in public IaaS/PaaS submarket.",
    "display": "about 63%",
    "status": "DERIVED"
  },
  {
    "id": "C19O",
    "name": "Sum of Omdia full-market top-three shares",
    "formula": "32+22+12",
    "source_inputs": "S2 shares; S17 chart",
    "result": "66",
    "assumption": "Sum of rounded shares; consistent with S17.",
    "display": "about 66%",
    "status": "DERIVED"
  },
  {
    "id": "C20",
    "name": "Publication-date interval",
    "formula": "2026-03-26 minus 2026-02-05",
    "source_inputs": "S1; S2",
    "result": "49",
    "assumption": "49 elapsed days; no inference about causal revisions or missing earnings.",
    "display": "49 days",
    "status": "DERIVED"
  }
]