1"""Catalogue of conditional scenarios (not forecasts). Each entry: calibration-target overrides2(`overrides`, e.g. technology rates and elasticities, re-calibrated consistently) and Params overrides3(`params`, e.g. policy instruments, shock dates)."""45SCENARIOS = {6 # --- baseline: gradual AI progress, Moore-type price decline with a floor, energy efficiency gains7 "baseline": dict(overrides={}, params={}),8 # --- reference: everything AI-related frozen at 2026 (capability, compute price, energy efficiency): exact BGP9 "no_ai": dict(overrides={"g_alpha": 0.0, "g_pQ": 0.0, "g_eps": 0.0}, params={}),10 # --- capability frozen at 2026 but hardware keeps getting cheaper (Moore's law without AI progress)11 "no_capability": dict(overrides={"g_alpha": 0.0}, params={}),12 # --- rapid AGI: all tasks reach terminal alpha in 203213 "rapid_agi": dict(overrides={}, params={"alpha_shock_year": 2032}),14 # --- compute abundance: fast Moore (Epoch GPU FLOP/$ doubling 2 years) with cheap energy (fast efficiency)15 "fast_moore_cheap_energy": dict(overrides={"g_pQ": 0.34, "g_eps": 0.25}, params={}),16 # --- compute abundance with an energy constraint: fast Moore, no efficiency gains17 "fast_moore_energy_constrained": dict(overrides={"g_pQ": 0.34, "g_eps": 0.0}, params={}),18 # --- Moore's law ends early (floor reached 2040) vs never ends19 "moore_ends_2040": dict(overrides={"pQ_floor_ratio": 0.12}, params={}),20 "moore_floor_1e3": dict(overrides={"pQ_floor_ratio": 1e-3}, params={}),21 "moore_never_ends": dict(overrides={"pQ_floor_ratio": 1e-6, "g_pQ": 0.15}, params={}),22 "slow_alpha": dict(overrides={"g_alpha": 0.05}, params={}),23 "fast_alpha": dict(overrides={"g_alpha": 0.20}, params={}),24 # --- substitutability with physical complements25 "complements_leontief_like": dict(overrides={"sigma_N": 0.4, "sigma_T": 0.4}, params={}),26 "complements_cobb_douglas": dict(overrides={"sigma_N": 1.0, "sigma_T": 1.0}, params={}, solver={"lambdas": (0.0, 0.25, 0.5, 0.75, 1.0)}),27 "substitutes": dict(overrides={"sigma_N": 1.5, "sigma_T": 1.5}, params={}),28 # --- AI monopoly vs competitive diffusion29 "ai_monopoly": dict(overrides={}, params={"markup_Q": 1.5}),30 # --- ownership and policy31 "citizen_fund_20": dict(overrides={}, params={"theta_F": 0.20}),32 "land_tax_50": dict(overrides={}, params={"tau_T": 0.50}),33 "compute_tax_30": dict(overrides={}, params={"tau_Q": 0.30}),34 "capital_tax_20": dict(overrides={}, params={"tau_K": 0.20}),35 "foreign_ai_50": dict(overrides={}, params={"foreign_share_Q": 0.50}),36 # --- preferences37 "low_risk_aversion": dict(overrides={"gamma_u": 1.0}, params={}),38 "high_risk_aversion": dict(overrides={"gamma_u": 4.0}, params={}),39 # --- scarce land40 "scarce_land": dict(overrides={"land_rent_share": 0.08, "sigma_T": 0.4}, params={}),41 # --- severe chip depreciation42 "severe_chip_depreciation": dict(overrides={"delta_Q": 0.45}, params={}),43 # --- terminal compute requirements five times higher (AGI needs 5 units of 2026 capacity per routine worker)44 "alpha_inf_x5": dict(overrides={}, params={"alpha_inf_scale": 5.0}),45 # --- human task reinstatement: task 4 never automated (alpha stays at its 2026 value)46 "reinstatement": dict(overrides={}, params={"reinstate_task": 3}),47}48