Emil M. S. HalsethResearch materials · Numerical workbook

Private Pre-emption: numerical workbook

This workbook accompanies Pre-empting Competitive Sales: Private Offers, Early Resolution, and Seller Information. It reproduces the numerical examples in the main paper and online appendix, then separates out additional research diagnostics. Start with the participation example and the welfare comparison below; expand the calculation records to inspect every input script and its full output.

Main paper · Online appendix · Download Calculation Workbook

The notebook is the only download. It contains the full Python source in editable cells alongside explanations and results. Open pre-emption-numerics.ipynb in Jupyter or VS Code and run all cells from the top. No archive or additional source files need to be downloaded. The web version is a saved execution, not an interactive server.

1. Reproduce the calculations

Use a Python 3.12 kernel with numpy==2.3.5 and python-flint==0.9.0. The notebook explains installation. Its source cells use Jupyter's %%writefile command to save the visible Python as modules in a new local working folder; calculation cells then run those modules. This preserves the routines' imports and lets you edit their code directly in the notebook. Each full run creates a fresh folder and stops on failure.

Exact arithmetic checks identities and numerical premises. Floating-point audits check calibrations and convergence. Interval certificates enclose rounding and integration error and establish the stated numerical inequalities. These checks accompany the analytical proofs; they do not establish global equilibrium uniqueness. The research diagnostics at the end are explicitly outside that certification claim.

Explore the core trade-off

This is an illustrative calculator, not an equilibrium solver. It lets you vary the contracting parties' resolution benefits and the competition wedge. The displayed net joint gain is (d_B+d_S-\Gamma-\kappa): early agreement is privately feasible when it is positive. It says nothing by itself about the equilibrium offer price, acceptance probability, or social desirability.

Private joint gain: 0.02A mutually beneficial early agreement can be feasible.

The wedge is the value of the later competitive process foregone by the buyer and seller together. A higher late buyer can raise allocative value even where the contracting parties still prefer early agreement.

Show Python code
from pathlib import Path
import ast, hashlib, html, importlib.metadata, json, os, re, subprocess, sys
from datetime import datetime, timezone
from IPython.display import HTML, display

ROOT = next((p for p in [Path.cwd(), *Path.cwd().parents]
             if (p / 'code/claims.json').is_file()), None)
if ROOT is None:
    raise RuntimeError('Run the notebook setup cell first, then run this cell again.')
if sys.version_info[:2] != (3, 12):
    raise RuntimeError('Use Python 3.12 for the recorded reproduction environment.')
for package, expected in [('numpy', '2.3.5'), ('python-flint', '0.9.0')]:
    if importlib.metadata.version(package) != expected:
        raise RuntimeError(f'Install {package}=={expected} before continuing.')

def table(headers, rows):
    esc = lambda x: html.escape(str(x))
    head = ''.join('<th>' + esc(x) + '</th>' for x in headers)
    body = ''.join('<tr>' + ''.join('<td>' + esc(x) + '</td>' for x in row) + '</tr>' for row in rows)
    display(HTML('<div class="table-wrap"><table><thead><tr>' + head + '</tr></thead><tbody>' + body + '</tbody></table></div>'))

# Remove optimization settings so the audits' assertions remain active.
env = os.environ.copy()
env.pop('PYTHONOPTIMIZE', None)
env['PYTHONUTF8'] = '1'
name = datetime.now(timezone.utc).strftime('workbook-%Y%m%dT%H%M%S.%fZ')
RUN = ROOT / 'code/reproduction_outputs' / name
command = [sys.executable, '-X', 'utf8', str(ROOT / 'code/run_reproduction.py'),
           '--mode', 'publication', '--run-name', name]
completed = subprocess.run(command, cwd=ROOT, env=env, capture_output=True,
                           text=True, encoding='utf-8', timeout=3600)
if completed.returncode:
    raise RuntimeError(completed.stdout + '\n' + completed.stderr)
summary = json.loads((RUN / 'summary.json').read_text(encoding='utf-8'))
manifest = json.loads((RUN / 'claims.json').read_text(encoding='utf-8'))
tasks = {t['id']: t for t in summary['tasks']}
specs = {t['id']: t for t in manifest['tasks']}
if summary['status'] != 'pass' or set(tasks) != set(specs):
    raise RuntimeError('The complete suite did not finish successfully.')
for record in json.loads((RUN / 'source_hashes.json').read_text(encoding='utf-8')):
    if hashlib.sha256((ROOT / record['path']).read_bytes()).hexdigest() != record['sha256']:
        raise RuntimeError('A source changed during execution: ' + record['path'])

shown = set()
def records(ids):
    for task_id in ids:
        shown.add(task_id)
        task, spec = tasks[task_id], specs[task_id]
        scripts = [spec['script']] if spec['kind'] == 'python' else spec['scripts']
        output = (RUN / (task_id + '.stdout.txt')).read_text(encoding='utf-8')
        stderr = (RUN / (task_id + '.stderr.txt')).read_text(encoding='utf-8')
        if stderr.strip():
            output += '\nSTDERR\n' + stderr
        title = f"{task['title']} | {task['classification']} | {task['status']}"
        display(HTML('<details class="record"><summary>' + html.escape(title) + '</summary><p><code>'
                     + html.escape(', '.join(scripts)) + '</code></p><pre>'
                     + html.escape(output) + '</pre></details>'))

table(['Execution', 'Recorded value'], [
    ['Completed (UTC)', summary['finished_at_utc']],
    ['Checks passed', f"{len(tasks)} / {len(specs)}"],
    ['Python', sys.version.split()[0]],
    ['Numerical packages', 'numpy 2.3.5; python-flint 0.9.0'],
    ['Compute time', f"{sum(t['duration_seconds'] for t in tasks.values()):.1f} seconds"],
])
ExecutionRecorded value
Completed (UTC)2026-10-13T11:18:54.464622+00:00
Checks passed22 / 22
Python3.12.10
Numerical packagesnumpy 2.3.5; python-flint 0.9.0
Compute time116.7 seconds

2. Participation information is enough for probing

Main paper, Section 3.2 and Proposition 3.1. Values are uniform on [0,1]. Only the number of later buyers changes with the seller's state: 2 or 6. The seller's value is 0.4 in both states, the high-state probability is 0.5, the offer cost is 0.02, and the buyer's resolution benefit has support [0,0.1]. Seller resolution benefits are zero.

The sufficient probing window contains 0.1. Thus differences in expected competition alone can support both accepted and rejected offers. The distribution of the buyer's resolution benefit is otherwise unspecified within the paper's maintained class. Consequently this example supplies sufficient conditions, not a numerical offer price or attempt rate.

Show Python code
participation = json.loads((RUN / 'participation_only_exact.json').read_text())['participation']
table(['Quantity', 'Exact fraction', 'Decimal'], [
    [name, value['exact'], f"{value['decimal']:.12f}"]
    for name, value in participation['quantities'].items()
])
records(['participation_only_exact'])
QuantityExact fractionDecimal
C_L(0)59/1250.472000000000
Delta_D70753/10937500.064688457143
bar_D_H114503/10937500.104688457143
bar_D_L1/250.040000000000
lower_type_condition64/1250.512000000000
probing_window_upper92628/5468750.169376914286
w_H(1)=C_H(1)468878/5468750.857376914286
w_L(1)=C_L(1)86/1250.688000000000
Participation-only probing example in the short paper | exact_arithmetic_audit | pass

code/paper_calculations.py

{
  "ban_audit": {
    "status": "not_run"
  },
  "ban_certificate": {
    "status": "not_run"
  },
  "dependencies": {
    "numpy": "2.3.5",
    "python-flint": "0.9.0"
  },
  "participation": {
    "checks": {
      "ordered_participation_counts": true,
      "positive_lower_seller_continuation": true,
      "positive_lower_type_cutoff_at_lower_price": true,
      "positive_mass_probing_window": true,
      "positive_threshold_gap": true,
      "sufficient_D1_condition": true,
      "waiting_only_condition_fails": true
    },
    "classification": "exact_arithmetic_check_of_sufficient_conditions",
    "parameters": {
      "buyer_resolution_benefit_support_upper": {
        "decimal": 0.1,
        "exact": "1/10"
      },
      "late_counts": [
        2,
        6
      ],
      "offer_cost": {
        "decimal": 0.02,
        "exact": "1/50"
      },
      "probability_high_state": {
        "decimal": 0.5,
        "exact": "1/2"
      },
      "resolution_benefit_distribution": "Any G satisfying the paper's regularity assumptions on [0, 1/10].",
      "seller_fallback_both_states": {
        "decimal": 0.4,
        "exact": "2/5"
      },
      "seller_resolution_benefit_both_states": 0,
      "value_distribution": "U[0,1]"
    },
    "quantities": {
      "C_L(0)": {
        "decimal": 0.472,
        "exact": "59/125"
      },
      "Delta_D": {
        "decimal": 0.06468845714285715,
        "exact": "70753/1093750"
      },
      "bar_D_H": {
        "decimal": 0.10468845714285714,
        "exact": "114503/1093750"
      },
      "bar_D_L": {
        "decimal": 0.04,
        "exact": "1/25"
      },
      "lower_type_condition": {
        "decimal": 0.512,
        "exact": "64/125"
      },
      "probing_window_upper": {
        "decimal": 0.16937691428571428,
        "exact": "92628/546875"
      },
      "w_H(1)=C_H(1)": {
        "decimal": 0.8573769142857143,
        "exact": "468878/546875"
      },
      "w_L(1)=C_L(1)": {
        "decimal": 0.688,
        "exact": "86/125"
      }
    },
    "scope": "These exact inequalities verify the numerical premises of the paper's probing proposition. Existence and D1 compatibility use that proposition's analytical proof. No fixed-point price or action probability is computed: those require a specified G.",
    "status": "pass"
  },
  "python": "3.12.10",
  "status": "pass"
}

3. A ban can raise or lower welfare

Main paper, Table 4.1 and Appendix D. The two calibrations differ only in the common distribution of early and late buyer values. Both have mean 0.5. The first concentrates values near the mean; the second gives more weight to the upper tail. The equilibrium prices and the types making early offers change with the distribution.

The welfare effect is avoided offer costs + improved allocation − forgone resolution gains. Negative values mean that banning pre-emption lowers welfare. These examples establish opposite rankings, not a general comparative-statics result. Their seller values differ across states, unlike the participation-only example above. Excluded late-buyer surplus per completed early sale divides the unconditional excluded-surplus numerator by the completed early-sale probability. These are point calculations; full primitives and convergence checks are in the expanded record.

Show Python code
raw = (RUN / 'ban_welfare_examples_floating.stdout.txt').read_text()
cases = [raw.split('SYMMETRIC\n', 1)[1].split('UPPER_TAIL\n', 1)[0],
         raw.split('UPPER_TAIL\n', 1)[1]]
def field(text, name):
    line = next(line for line in text.splitlines() if line.startswith(name + ' '))
    return ast.literal_eval(line[len(name) + 1:])
prices = [field(text, 'q') for text in cases]
outcomes = [field(text, 'outcomes') for text in cases]
welfare = [field(text, 'welfare') for text in cases]
rows = [
    ['Probing price', prices[0][0], prices[1][0]],
    ['Knockout price', prices[0][1], prices[1][1]],
    ['Rejected attempt', outcomes[0][1], outcomes[1][1]],
    ['Completed early-sale probability (denominator)', outcomes[0][2], outcomes[1][2]],
    ['Excluded late-buyer surplus (unconditional numerator)',
     welfare[0]['excluded_late_surplus'], welfare[1]['excluded_late_surplus']],
    ['Excluded late-buyer surplus per completed early sale',
     welfare[0]['excluded_per_completed_sale'], welfare[1]['excluded_per_completed_sale']],
]
for label, key in [('Avoided offer costs', 'attempt_resources'),
                   ('Allocative gain', 'allocation_gain'),
                   ('Forgone resolution gains', 'timing_costs'),
                   ('Welfare effect of a ban', 'difference')]:
    rows.append([label, welfare[0][key], welfare[1][key]])
table(['Point calculation', 'Concentrated values', 'Upper-tail mixture'],
      [[row[0], f'{row[1]:.12f}', f'{row[2]:.12f}'] for row in rows])
records(['ban_welfare_examples_floating'])
Point calculationConcentrated valuesUpper-tail mixture
Probing price0.5109805932080.515613314494
Knockout price0.5543787916640.640626332049
Rejected attempt0.0563136550950.066739617301
Completed early-sale probability (denominator)0.1543532085140.068388497142
Excluded late-buyer surplus (unconditional numerator)0.0029466326830.002523097711
Excluded late-buyer surplus per completed early sale0.0190901939230.036893597842
Avoided offer costs0.0042133372720.002702562289
Allocative gain0.0038835220550.002757306596
Forgone resolution gains0.0116245108810.005156517170
Welfare effect of a ban-0.0035276515530.000303351715
Continuous common-F full-menu ban-welfare floating-point cross-check | floating_point_audit | pass

code/audit_ban_welfare_examples.py

SYMMETRIC
components ((0.01, None, None), (0.99, 40, 40))
mean 0.5
Pr(value > .7) 0.0030973516536693113
q (0.510980593207608, 0.5543787916640744)
action masses (0.7893331363906434, 0.11262731019006239, 0.09803955341929423)
outcomes (0.7893331363906362, 0.056313655095031195, 0.15435320851432544)
cutoff checks (0.017691131024707506, 0.5509805932076081, 0.022018518636709117, 0.5977769901205409, 0.0021636938060008055)
seller slacks (np.float64(0.0353580033245825), np.float64(0.03419244096791463))
D1 endpoint slacks (0.022308868975292495, 0.021379679819757302)
welfare {'difference': -0.0035276515532900385, 'rent_identity': -0.0035276515532905715, 'attempt_resources': 0.004213337272187132, 'allocation_gain': 0.0038835220552617044, 'timing_costs': 0.011624510880738875, 'excluded_late_surplus': 0.0029466326832052326, 'excluded_per_completed_sale': 0.019090193923191154, 'buyer_rent': 0.004798178415090847, 'seller_rent': 0.0016761058214049569}
low/high convergence 1.935677063080732e-09

UPPER_TAIL
components ((0.01, None, None), (0.9317647058823529, 38, 42), (0.05823529411764706, 9, 1))
mean 0.49999999999999994
Pr(value > .7) 0.058898952296463025
q (0.5156133144936832, 0.6406263320492189)
action masses (0.8648718855577955, 0.13347923460130257, 0.0016488798409019356)
outcomes (0.8648718855577879, 0.06673961730065128, 0.06838849714155322)
cutoff checks (0.0025367853059170206, 0.5556133144936832, 0.10617942855031304, 0.7656393496047547, 0.051821321622198005)
seller slacks (np.float64(0.06887626254531598), np.float64(0.09639209227535961))
D1 endpoint slacks (0.03746321469408298, 0.018833589005222695)
welfare {'difference': 0.00030335171542062323, 'rent_identity': 0.00030335171542062513, 'attempt_resources': 0.0027025622888440896, 'allocation_gain': 0.0027573065964337992, 'timing_costs': 0.005156517169857266, 'excluded_late_surplus': 0.0025230977105376064, 'excluded_per_completed_sale': 0.0368935978416838, 'buyer_rent': 0.002140276506229381, 'seller_rent': 7.946948888760037e-05}
low/high convergence 1.0238531689132913e-09

PASS: rich continuous common-F full-menu equilibria have opposite ban-welfare signs.

Certified signs

The separate Arb calculation uses 60 decimal digits and 24,000 integration cells. It encloses a price fixed point in each box and checks equilibrium and refinement margins. The intervals below are rounded outwards to nine decimal places from the endpoint records. They exclude zero in opposite directions. The many digits in the point calculation above should not be mistaken for equally tight certified bounds.

Show Python code
sys.path.insert(0, str(ROOT / 'code'))
from decimal import localcontext
from generate_aligned_certificate_appendix import bounds
certificate = json.loads((RUN / 'ban_welfare_examples_interval.json').read_text())
with localcontext() as context:
    context.prec = 100
    intervals = [(name, bounds(case['welfare']['W_B_minus_W_D'], 9))
                 for name, case in certificate['cases'].items()]
table(['Calibration', 'Certified lower bound', 'Certified upper bound'],
      [[name, f'{lo:f}', f'{hi:f}'] for name, (lo, hi) in intervals])
records(['ban_welfare_examples_interval'])
CalibrationCertified lower boundCertified upper bound
symmetric-0.003662070-0.003393114
upper_tail0.0002616750.000345072
Continuous common-F full-menu ban-welfare interval certificate | interval_certificate | pass

code/certify_ban_welfare_examples.py

{
  "cases": {
    "symmetric": {
      "action_masses": [
        {
          "arb": "[0.79 +/- 1.47e-3]",
          "lower": "[0.7885313156371467603835994970 +/- 3.88e-29]",
          "upper": "[0.7901320096957989126909310591 +/- 1.90e-29]"
        },
        {
          "arb": "[0.11 +/- 4.28e-3]",
          "lower": "[0.1109737296454567819846935439 +/- 1.61e-29]",
          "upper": "[0.1142766795263468645526237654 +/- 4.16e-29]"
        },
        {
          "arb": "[0.098 +/- 8.95e-4]",
          "lower": "[0.09719200451727373474147892601 +/- 1.51e-30]",
          "upper": "[0.09889426097797694564667320854 +/- 3.24e-30]"
        }
      ],
      "certified_root_box": [
        {
          "arb": "[0.511 +/- 1.21e-4]",
          "lower": "[0.5108797829971783178955963387 +/- 1.54e-30]",
          "upper": "[0.5110814037958127122004231944 +/- 3.90e-29]"
        },
        {
          "arb": "[0.554 +/- 4.55e-4]",
          "lower": "[0.5543028206006808418974206633 +/- 2.28e-29]",
          "upper": "[0.5544547633169101559983492679 +/- 2.56e-29]"
        }
      ],
      "d1_slacks": [
        {
          "arb": "[0.022 +/- 4.31e-4]",
          "lower": "[0.02218722465859537367395744578 +/- 3.63e-30]",
          "upper": "[0.02243051290857147721726135269 +/- 3.95e-30]"
        },
        {
          "arb": "[0.021 +/- 4.77e-4]",
          "lower": "[0.02128287438122837442073427985 +/- 1.51e-32]",
          "upper": "[0.02147648465179967273592405865 +/- 4.77e-30]"
        }
      ],
      "global_cutoff_margins": {
        "maximum_d_H": {
          "arb": "[0.5980297436382378541378130952 +/- 3.11e-29]",
          "lower": "[0.5980297436382378541378130952 +/- 3.11e-29]",
          "upper": "[0.5980297436382378541378130952 +/- 3.11e-29]"
        },
        "minimum_C_H_minus_C_L": {
          "arb": "[0.02878133210406779082581521659 +/- 3.69e-30]",
          "lower": "[0.02878133210406779082581521659 +/- 3.69e-30]",
          "upper": "[0.02878133210406779082581521659 +/- 3.69e-30]"
        },
        "minimum_d_H_minus_d_L": {
          "arb": "[0.003932156809958528069206615637 +/- 2.50e-31]",
          "lower": "[0.003932156809958528069206615637 +/- 2.50e-31]",
          "upper": "[0.003932156809958528069206615637 +/- 2.50e-31]"
        },
        "minimum_d_L": {
          "arb": "[0.01756948709131483594501703128 +/- 3.69e-30]",
          "lower": "[0.01756948709131483594501703128 +/- 3.69e-30]",
          "upper": "[0.01756948709131483594501703128 +/- 3.69e-30]"
        }
      },
      "initial_root_box": [
        {
          "arb": "[0.511 +/- 4.20e-4]",
          "lower": "[0.5105805932067989135133028030 +/- 3.96e-29]",
          "upper": "[0.5113805932084170864866971970 +/- 3.96e-29]"
        },
        {
          "arb": "[0.554 +/- 7.79e-4]",
          "lower": "[0.5539787916632649135133028030 +/- 3.96e-29]",
          "upper": "[0.5547787916648830864866971970 +/- 3.96e-29]"
        }
      ],
      "jacobian_determinant": {
        "arb": "[0.02 +/- 6.97e-3]",
        "lower": "[0.01303747712833556002650725377 +/- 8.82e-31]",
        "upper": "[0.01911429636263037687812315953 +/- 2.61e-30]"
      },
      "outcomes": [
        {
          "arb": "[0.79 +/- 1.47e-3]",
          "lower": "[0.7885313156371467603835994970 +/- 3.88e-29]",
          "upper": "[0.7901320096957989126909310591 +/- 1.90e-29]"
        },
        {
          "arb": "[0.06 +/- 4.52e-3]",
          "lower": "[0.05548686482090940158880091547 +/- 3.87e-30]",
          "upper": "[0.05713833976499242167985773920 +/- 3.40e-30]"
        },
        {
          "arb": "[0.15 +/- 6.04e-3]",
          "lower": "[0.1526788693363641469267339850 +/- 1.81e-30]",
          "upper": "[0.1560326007447883567300768042 +/- 1.57e-29]"
        }
      ],
      "seller_slacks": [
        {
          "arb": "[+/- 0.0519]",
          "lower": "[0.01936270601497455543329058747 +/- 2.63e-30]",
          "upper": "[0.05182598248272626704026995759 +/- 1.86e-31]"
        },
        {
          "arb": "[+/- 0.0433]",
          "lower": "[0.02498751100129784260251753398 +/- 3.54e-30]",
          "upper": "[0.04324028444453478966214888164 +/- 2.15e-31]"
        }
      ],
      "welfare": {
        "W_B_minus_W_D": {
          "arb": "[-0.004 +/- 6.07e-4]",
          "lower": "[-0.003662069146942735036681025846 +/- 4.44e-31]",
          "upper": "[-0.003393114209560075627485841139 +/- 1.99e-31]"
        },
        "allocation_gain": {
          "arb": "[0.0039 +/- 6.14e-5]",
          "lower": "[0.003838683612157463435965201481 +/- 1.31e-31]",
          "upper": "[0.003928516731362204232669046744 +/- 3.43e-31]"
        },
        "attempt_resources": {
          "arb": "[0.0042 +/- 6.35e-5]",
          "lower": "[0.004163314644858017762424851514 +/- 2.70e-31]",
          "upper": "[0.004263418848483068776084537364 +/- 1.27e-31]"
        },
        "excluded_late_surplus": {
          "arb": "[0.0029 +/- 7.68e-5]",
          "lower": "[0.002916614942857429531254597888 +/- 4.69e-31]",
          "upper": "[0.002976757207174594048960857974 +/- 4.26e-31]"
        },
        "rent_identity": {
          "arb": "[-0.004 +/- 5.46e-4]",
          "lower": "[-0.003600669847878170237747333063 +/- 5.85e-32]",
          "upper": "[-0.003454814490873549637255570902 +/- 3.14e-31]"
        },
        "timing_costs": {
          "arb": "[0.0116 +/- 6.41e-5]",
          "lower": "[0.01158504978957587889282184929 +/- 9.43e-31]",
          "upper": "[0.01166406740378768597848865480 +/- 3.31e-30]"
        }
      }
    },
    "upper_tail": {
      "action_masses": [
        {
          "arb": "[0.865 +/- 6.68e-4]",
          "lower": "[0.8643325509854392345267091271 +/- 3.63e-29]",
          "upper": "[0.8654091373134931978973303314 +/- 4.00e-29]"
        },
        {
          "arb": "[0.13 +/- 4.06e-3]",
          "lower": "[0.1329056798216072753538932178 +/- 4.58e-29]",
          "upper": "[0.1340540834565502269660677288 +/- 1.58e-30]"
        },
        {
          "arb": "[0.0016 +/- 8.52e-5]",
          "lower": "[0.001613365651517962533252328595 +/- 3.22e-31]",
          "upper": "[0.001685182771392102722747266254 +/- 3.69e-31]"
        }
      ],
      "certified_root_box": [
        {
          "arb": "[0.516 +/- 4.93e-4]",
          "lower": "[0.5155071452320736758769203506 +/- 4.36e-29]",
          "upper": "[0.5157194831783964806594599567 +/- 4.92e-29]"
        },
        {
          "arb": "[0.641 +/- 6.42e-4]",
          "lower": "[0.6403584128323341253652538429 +/- 1.34e-29]",
          "upper": "[0.6408942515748417470111812721 +/- 1.26e-29]"
        }
      ],
      "d1_slacks": [
        {
          "arb": "[0.037 +/- 5.91e-4]",
          "lower": "[0.03733621210632276603620269084 +/- 4.93e-30]",
          "upper": "[0.03759021755514635703194656157 +/- 2.46e-31]"
        },
        {
          "arb": "[0.019 +/- 4.56e-4]",
          "lower": "[0.01854483536368837399670239279 +/- 2.31e-30]",
          "upper": "[0.01912234142725258885213490316 +/- 3.68e-30]"
        }
      ],
      "global_cutoff_margins": {
        "maximum_d_H": {
          "arb": "[0.7662813579205699202348124841 +/- 6.96e-30]",
          "lower": "[0.7662813579205699202348124841 +/- 6.96e-30]",
          "upper": "[0.7662813579205699202348124841 +/- 6.96e-30]"
        },
        "minimum_C_H_minus_C_L": {
          "arb": "[0.04575365798964668580139427660 +/- 1.23e-30]",
          "lower": "[0.04575365798964668580139427660 +/- 1.23e-30]",
          "upper": "[0.04575365798964668580139427660 +/- 1.23e-30]"
        },
        "minimum_d_H_minus_d_L": {
          "arb": "[0.1028528003300519641090996572 +/- 3.94e-29]",
          "lower": "[0.1028528003300519641090996572 +/- 3.94e-29]",
          "upper": "[0.1028528003300519641090996572 +/- 3.94e-29]"
        },
        "minimum_d_L": {
          "arb": "[0.002409782444398895617166974311 +/- 2.03e-31]",
          "lower": "[0.002409782444398895617166974311 +/- 2.03e-31]",
          "upper": "[0.002409782444398895617166974311 +/- 2.03e-31]"
        }
      },
      "initial_root_box": [
        {
          "arb": "[0.52 +/- 5.19e-3]",
          "lower": "[0.5148133144920648270266056061 +/- 2.10e-29]",
          "upper": "[0.5164133144953011729733943939 +/- 2.09e-29]"
        },
        {
          "arb": "[0.64 +/- 1.43e-3]",
          "lower": "[0.6398263320476008270266056061 +/- 2.10e-29]",
          "upper": "[0.6414263320508371729733943939 +/- 2.09e-29]"
        }
      ],
      "jacobian_determinant": {
        "arb": "[+/- 3.38e-4]",
        "lower": "[0.0001795804577306544978713595482 +/- 2.54e-32]",
        "upper": "[0.0003373962403167671163177096459 +/- 1.85e-32]"
      },
      "outcomes": [
        {
          "arb": "[0.865 +/- 6.68e-4]",
          "lower": "[0.8643325509854392345267091271 +/- 3.63e-29]",
          "upper": "[0.8654091373134931978973303314 +/- 4.00e-29]"
        },
        {
          "arb": "[0.067 +/- 5.48e-4]",
          "lower": "[0.06645283990943939562428721657 +/- 4.00e-30]",
          "upper": "[0.06702704172963935553569325676 +/- 2.35e-30]"
        },
        {
          "arb": "[0.068 +/- 7.13e-4]",
          "lower": "[0.06806620556021839371234904097 +/- 1.98e-30]",
          "upper": "[0.06871222450177042270363102720 +/- 4.60e-30]"
        }
      ],
      "seller_slacks": [
        {
          "arb": "[0.07 +/- 6.28e-3]",
          "lower": "[0.06372945611949383906231331014 +/- 1.48e-30]",
          "upper": "[0.07406624555298898062811302328 +/- 3.77e-30]"
        },
        {
          "arb": "[+/- 0.120]",
          "lower": "[0.07183283119714860799455300673 +/- 1.69e-30]",
          "upper": "[0.1199154767139912116780246864 +/- 1.92e-29]"
        }
      ],
      "welfare": {
        "W_B_minus_W_D": {
          "arb": "[0.0003 +/- 4.51e-5]",
          "lower": "[0.0002616750097123325670734894333 +/- 7.77e-33]",
          "upper": "[0.0003450717927099571082406592426 +/- 4.92e-32]"
        },
        "allocation_gain": {
          "arb": "[0.0028 +/- 5.81e-5]",
          "lower": "[0.002741968938072718744325512787 +/- 3.89e-31]",
          "upper": "[0.002772697008969376044507199666 +/- 4.08e-31]"
        },
        "attempt_resources": {
          "arb": "[0.0027 +/- 1.48e-5]",
          "lower": "[0.002690380911883465967024724282 +/- 1.22e-31]",
          "upper": "[0.002714785322137885384494486548 +/- 1.97e-31]"
        },
        "excluded_late_surplus": {
          "arb": "[0.0025 +/- 3.46e-5]",
          "lower": "[0.002511646101886139347454948782 +/- 5.71e-32]",
          "upper": "[0.002534596946453188336574888288 +/- 1.11e-31]"
        },
        "rent_identity": {
          "arb": "[0.0003 +/- 2.58e-5]",
          "lower": "[0.0002809503659546306042160121160 +/- 1.70e-32]",
          "upper": "[0.0003257164392562470200631049829 +/- 1.94e-32]"
        },
        "timing_costs": {
          "arb": "[0.0052 +/- 5.76e-5]",
          "lower": "[0.005142410538468358594337036989 +/- 3.35e-31]",
          "upper": "[0.005170674840172797870700737618 +/- 3.85e-31]"
        }
      }
    }
  },
  "certificate": "continuous common-F ban-welfare examples",
  "dependency": {
    "precision_decimal_digits": 60,
    "python_flint": "0.9.0"
  },
  "grid_cells": 24000,
  "method": "Arb cell ranges, monotonicity-based terminal integral enclosures, Lebesgue-Stieltjes outer sums, and interval Krawczyk roots",
  "status": "PASS"
}

4. Additional equilibria and calibrations

Online appendix OA1 and OA5. These exercises vary seller information and describe further equilibrium regimes. The aligned-composite example changes participation, fallback value and seller resolution benefit together; it is distinct from the main paper's participation-only illustration. Its probing-only calculation and three-action calculation also use different benefit distributions. The waiting–knockout result has no rejections and completes the regime analysis.

The full-menu certificate supports Tables OA5.2–OA5.3. The exact interval records are also converted back into the distributed LaTeX tables below; equality is checked byte for byte. The analytical arguments, including their equilibrium-selection restrictions, remain in the papers. The notebook includes code/generate_aligned_certificate_appendix.py, which regenerates these tables from the interval records.

Show Python code
records(['aligned_composite_full_menu_interval', 'aligned_composite_calibration_floating',
         'urgency_only_knockout_gate_interval', 'urgency_only_knockout_gate_floating',
         'seller_urgency_state_floating'])
from generate_aligned_certificate_appendix import render
aligned = json.loads((RUN / 'aligned_composite_full_menu_interval.json').read_text())
with localcontext() as context:
    context.prec = 100
    generated_table = render(aligned)
if generated_table.encode('utf-8') != (ROOT / 'figures/aligned_certificate_tables.tex').read_bytes():
    raise RuntimeError('The distributed certificate tables differ from the fresh computation.')
print('Tables OA5.2–OA5.3: regenerated exactly from the fresh certificate.')

from flint import arb, ctx
from certify_aligned_composite_full_menu import interval_record
ctx.dps = 60

def stored_ball(record):
    return arb(record['arb'])

early_mass = stored_ball(aligned['observed_outcomes']['pre_emption_success'])
auction_mass = (stored_ball(aligned['observed_outcomes']['no_early_offer'])
                + stored_ball(aligned['observed_outcomes']['attempt_rejected'])
                - stored_ball(aligned['equilibrium_no_sale']['prior_weighted']))
early_mean = stored_ball(aligned['conditional_price_moment']['completed_pre_emption_mean'])
auction_mean = stored_ball(aligned['conditional_price_moment']['completed_bidding_round_mean'])
price_trace = [
    ('Completed early-sale probability', early_mass),
    ('Early-price numerator', early_mass * early_mean),
    ('Early conditional mean price', early_mean),
    ('Completed bidding-round sale probability', auction_mass),
    ('Bidding-round price numerator', auction_mass * auction_mean),
    ('Bidding-round conditional mean price', auction_mean),
    ('Conditional mean-price difference', stored_ball(aligned['conditional_price_moment']['difference'])),
]
with localcontext() as context:
    context.prec = 100
    price_rows = [[name, *[f'{value:f}' for value in bounds(interval_record(ball), 9)]]
                  for name, ball in price_trace]
table(['Conditional-price calculation', 'Certified lower bound', 'Certified upper bound'], price_rows)
Aligned-composite full-menu interval certificate | interval_certificate | pass

code/certify_aligned_composite_full_menu.py

{
  "D1_endpoint_slacks": [
    {
      "arb": "[0.05593441418 +/- 2.27e-12]",
      "lower": "[0.055934414180266333328858806660540311 +/- 1.48e-37]",
      "upper": "[0.055934414182266333337807860006126356 +/- 4.81e-37]"
    },
    {
      "arb": "[0.04242951333 +/- 2.87e-12]",
      "lower": "[0.042429513330867999995525473327206978 +/- 1.87e-37]",
      "upper": "[0.042429513332868000004474526672793022 +/- 1.87e-37]"
    }
  ],
  "action_masses": {
    "knockout": {
      "arb": "[0.13557750142 +/- 8.75e-12]",
      "lower": "[0.13557750141125537983878123621250822 +/- 1.16e-36]",
      "upper": "[0.13557750141939287908527094622668230 +/- 1.83e-36]"
    },
    "probing": {
      "arb": "[0.10054854367 +/- 8.00e-12]",
      "lower": "[0.10054854366200037926921701664229047 +/- 4.24e-36]",
      "upper": "[0.10054854367486137989089970551370712 +/- 1.41e-36]"
    },
    "waiting": {
      "arb": "[0.76387395492 +/- 6.12e-12]",
      "lower": "[0.76387395491388324020255642249344064 +/- 4.57e-36]",
      "upper": "[0.76387395491860674168616961859923364 +/- 3.87e-36]"
    }
  },
  "certificate": "aligned-composite full-menu",
  "conditional_price_moment": {
    "completed_bidding_round_mean": {
      "arb": "[0.5741236958 +/- 5.81e-11]",
      "lower": "[0.57412369574192081872238309359079977 +/- 4.12e-36]",
      "upper": "[0.57412369576030294104408181754539697 +/- 2.95e-36]"
    },
    "completed_pre_emption_mean": {
      "arb": "[0.6865875431 +/- 8.46e-11]",
      "lower": "[0.68658754301543421794118415846241987 +/- 3.11e-36]",
      "upper": "[0.68658754312364786160770985246060150 +/- 3.80e-36]"
    },
    "difference": {
      "arb": "[0.1124638473 +/- 8.18e-11]",
      "lower": "[0.11246384725513127678868212366847246 +/- 3.25e-36]",
      "upper": "[0.11246384738172704299374697611835217 +/- 4.52e-36]"
    }
  },
  "cutoff_ranges": {
    "D_H": [
      {
        "arb": "[0.06389729418 +/- 7.20e-12]",
        "lower": "[0.063897294181196999978106090509077930 +/- 5.10e-38]",
        "upper": "[0.063897294187197000021893909490922070 +/- 5.11e-38]"
      },
      {
        "arb": "[0.82167653418 +/- 7.20e-12]",
        "lower": "[0.82167653418119699998149422229809513 +/- 1.41e-36]",
        "upper": "[0.82167653418719700001850577770190487 +/- 1.41e-36]"
      }
    ],
    "D_L": [
      {
        "arb": "[0.02406558582 +/- 2.27e-12]",
        "lower": "[0.024065585817733666660498074099365044 +/- 1.98e-37]",
        "upper": "[0.024065585819733666672835259233968290 +/- 4.70e-37]"
      },
      {
        "arb": "[0.70902291915 +/- 3.07e-12]",
        "lower": "[0.70902291915106699999383140743269838 +/- 2.87e-36]",
        "upper": "[0.70902291915306700000616859256730162 +/- 2.87e-36]"
      }
    ],
    "D_aux": [
      {
        "arb": "[0.04398144000 +/- 3.47e-12]",
        "lower": "[0.043981439999465333310831752831678484 +/- 4.65e-37]",
        "upper": "[0.043981440003465333355834913834988183 +/- 1.31e-37]"
      },
      {
        "arb": "[0.76534972667 +/- 3.87e-12]",
        "lower": "[0.76534972666613199997749841949834515 +/- 2.03e-37]",
        "upper": "[0.76534972667013200002250158050165485 +/- 2.03e-37]"
      }
    ]
  },
  "dependency": {
    "precision_decimal_digits": 60,
    "python_flint": "0.9.0"
  },
  "equilibrium_no_sale": {
    "H": {
      "arb": "[0.0309869269622 +/- 4.54e-14]",
      "lower": "[0.030986926962154684272413833698582748 +/- 2.67e-37]",
      "upper": "[0.030986926962178615735624059854334648 +/- 4.46e-37]"
    },
    "L": {
      "arb": "[0.0543486766194 +/- 2.09e-14]",
      "lower": "[0.054348676619379118806099523592847110 +/- 4.29e-38]",
      "upper": "[0.054348676619389635261155511010639288 +/- 3.91e-38]"
    },
    "prior_weighted": {
      "arb": "[0.0426678017908 +/- 3.31e-14]",
      "lower": "[0.042667801790766901539223591421212808 +/- 4.76e-38]",
      "upper": "[0.042667801790784125498422872656989089 +/- 3.11e-37]"
    }
  },
  "exact_primitives": {
    "d_S_H": "0",
    "d_S_L": "1/50",
    "d_bar": "1",
    "kappa": "1/20",
    "lambda": "10",
    "n_H": 3,
    "n_L": 2,
    "pi": "1/2",
    "v_H": "21/50",
    "v_L": "19/50"
  },
  "interval_encoding": {
    "arb": "full outward Arb enclosure",
    "lower": "Arb ball enclosing the directed lower-endpoint computation; not a scalar decimal",
    "upper": "Arb ball enclosing the directed upper-endpoint computation; not a scalar decimal"
  },
  "interval_jacobian": [
    [
      {
        "arb": "[-0.1542725673 +/- 5.97e-11]",
        "lower": "[-0.15427256726621647581574415912091780 +/- 1.36e-36]",
        "upper": "[-0.15427256724033399037049628214473529 +/- 7.64e-37]"
      },
      {
        "arb": "[0.05372858848 +/- 7.86e-12]",
        "lower": "[0.053728588475473169451756353382349640 +/- 1.02e-37]",
        "upper": "[0.053728588487857653975808142616094709 +/- 1.60e-37]"
      }
    ],
    [
      {
        "arb": "[-4.180164e-5 +/- 3.43e-12]",
        "lower": "[-4.1801643426973647901913101329109072e-5 +/- 4.00e-40]",
        "upper": "[-4.1801637685257293959956621384245427e-5 +/- 4.40e-40]"
      },
      {
        "arb": "[-0.1354877429 +/- 3.50e-11]",
        "lower": "[-0.13548774293498048887916736984238894 +/- 1.33e-37]",
        "upper": "[-0.13548774291536005035875497217746186 +/- 4.54e-36]"
      }
    ]
  ],
  "jacobian_determinant": {
    "arb": "[0.02090428788 +/- 7.87e-12]",
    "lower": "[0.020904287872139760594990611980597824 +/- 1.60e-37]",
    "upper": "[0.020904287878982427605528085845670579 +/- 2.35e-37]"
  },
  "krawczyk_image": [
    {
      "arb": "[0.609022919152066548243 +/- 1.70e-22]",
      "lower": "[0.60902291915206654824283039764611027 +/- 2.73e-36]",
      "upper": "[0.60902291915206654824314360507482013 +/- 1.70e-36]"
    },
    {
      "arb": "[0.715349726668132175636 +/- 2.58e-22]",
      "lower": "[0.71534972666813217563574282772762796 +/- 1.77e-36]",
      "upper": "[0.71534972666813217563593007564689472 +/- 1.90e-36]"
    }
  ],
  "large_price_rectangle": [
    {
      "arb": "[0.60502291900000000000000000000000000 +/- 3e-40]",
      "lower": "[0.60502291900000000000000000000000000 +/- 3e-40]",
      "upper": "[0.60502291900000000000000000000000000 +/- 1e-40]"
    },
    {
      "arb": "[0.61302291900000000000000000000000000 +/- 3e-40]",
      "lower": "[0.61302291900000000000000000000000000 +/- 3e-40]",
      "upper": "[0.61302291900000000000000000000000000 +/- 1e-40]"
    },
    {
      "arb": "[0.71134972700000000000000000000000000 +/- 3e-40]",
      "lower": "[0.71134972700000000000000000000000000 +/- 3e-40]",
      "upper": "[0.71134972700000000000000000000000000 +/- 1e-40]"
    },
    {
      "arb": "[0.71934972700000000000000000000000000 +/- 3e-40]",
      "lower": "[0.71934972700000000000000000000000000 +/- 3e-40]",
      "upper": "[0.71934972700000000000000000000000000 +/- 1e-40]"
    }
  ],
  "minimum_C_H_minus_C_L_cell_bound": {
    "arb": "[0.068872090437875284930070241292317708 +/- 3.34e-37]",
    "lower": "[0.068872090437875284930070241292317708 +/- 3.34e-37]",
    "upper": "[0.068872090437875284930070241292317708 +/- 3.34e-37]"
  },
  "minimum_Z": {
    "arb": "[0.01991585418 +/- 4.74e-12]",
    "lower": "[0.019915854180731666654329481532063421 +/- 6.20e-38]",
    "upper": "[0.019915854184731666679003851801269912 +/- 3.96e-37]"
  },
  "observed_outcomes": {
    "attempt_rejected": {
      "arb": "[0.05027427183 +/- 7.44e-12]",
      "lower": "[0.050274271831000189627832244743110834 +/- 4.07e-37]",
      "upper": "[0.050274271837430689952226116334887962 +/- 1.17e-38]"
    },
    "no_early_offer": {
      "arb": "[0.76387395492 +/- 6.12e-12]",
      "lower": "[0.76387395491388324020255642249344064 +/- 4.57e-36]",
      "upper": "[0.76387395491860674168616961859923364 +/- 3.87e-36]"
    },
    "pre_emption_success": {
      "arb": "[0.18585177325 +/- 7.75e-12]",
      "lower": "[0.18585177324225556945983721737758465 +/- 5.36e-37]",
      "upper": "[0.18585177325682356904427332613960466 +/- 2.90e-36]"
    }
  },
  "price_box_domain_margins": [
    {
      "arb": "[0.16558025233333333333333333333333333 +/- 3.34e-36]",
      "lower": "[0.16558025233333333333333333333333333 +/- 3.34e-36]",
      "upper": "[0.16558025233333333333333333333333333 +/- 3.34e-36]"
    },
    {
      "arb": "[0.051934414333333333333333333333333333 +/- 3.34e-37]",
      "lower": "[0.051934414333333333333333333333333333 +/- 3.34e-37]",
      "upper": "[0.051934414333333333333333333333333333 +/- 3.34e-37]"
    },
    {
      "arb": "[0.15282020700000000000000000000000000 +/- 1e-40]",
      "lower": "[0.15282020700000000000000000000000000 +/- 3e-40]",
      "upper": "[0.15282020700000000000000000000000000 +/- 1e-40]"
    },
    {
      "arb": "[0.038429513000000000000000000000000000 +/- 3e-41]",
      "lower": "[0.038429513000000000000000000000000000 +/- 3e-41]",
      "upper": "[0.038429513000000000000000000000000000 +/- 1e-41]"
    }
  ],
  "price_box_face_margins": [
    {
      "arb": "[0.0040000004106708984023784982383748551 +/- 2.05e-39]",
      "lower": "[0.0040000004106708984023784982383748551 +/- 2.05e-39]",
      "upper": "[0.0040000004106708984023784982383748551 +/- 2.05e-39]"
    },
    {
      "arb": "[0.0039999995893291015976215017616251449 +/- 2.05e-39]",
      "lower": "[0.0039999995893291015976215017616251449 +/- 2.05e-39]",
      "upper": "[0.0039999995893291015976215017616251449 +/- 2.05e-39]"
    },
    {
      "arb": "[0.0039965131408556102006555415447683283 +/- 4.94e-38]",
      "lower": "[0.0039965131408556102006555415447683283 +/- 4.94e-38]",
      "upper": "[0.0039965131408556102006555415447683283 +/- 4.94e-38]"
    },
    {
      "arb": "[0.0039960689660913655744148356080699271 +/- 4.59e-38]",
      "lower": "[0.0039960689660913655744148356080699271 +/- 4.59e-38]",
      "upper": "[0.0039960689660913655744148356080699271 +/- 4.59e-38]"
    }
  ],
  "price_box_interior_margins": [
    {
      "arb": "[0.020065585666666666666666666666666667 +/- 3.34e-37]",
      "lower": "[0.020065585666666666666666666666666667 +/- 3.34e-37]",
      "upper": "[0.020065585666666666666666666666666667 +/- 3.34e-37]"
    },
    {
      "arb": "[0.16632346500000000000000000000000000 +/- 1e-40]",
      "lower": "[0.16632346500000000000000000000000000 +/- 3e-40]",
      "upper": "[0.16632346500000000000000000000000000 +/- 1e-40]"
    },
    {
      "arb": "[0.011915854666666666666666666666666667 +/- 3.34e-37]",
      "lower": "[0.011915854666666666666666666666666667 +/- 3.34e-37]",
      "upper": "[0.011915854666666666666666666666666667 +/- 3.34e-37]"
    }
  ],
  "root_box": [
    {
      "arb": "[0.60902291915 +/- 3.07e-12]",
      "lower": "[0.60902291915106699999721953922171558 +/- 1.51e-36]",
      "upper": "[0.60902291915306700000278046077828442 +/- 1.51e-36]"
    },
    {
      "arb": "[0.71534972667 +/- 2.87e-12]",
      "lower": "[0.71534972666713199999721953922171558 +/- 1.51e-36]",
      "upper": "[0.71534972666913200000278046077828442 +/- 1.51e-36]"
    }
  ],
  "root_box_inside_large_rectangle_margins": [
    {
      "arb": "[0.00400000015 +/- 3.07e-12]",
      "lower": "[0.0040000001510669999955254733272069778 +/- 1.39e-38]",
      "upper": "[0.0040000001530670000044745266727930222 +/- 1.39e-38]"
    },
    {
      "arb": "[0.00399999985 +/- 3.07e-12]",
      "lower": "[0.0039999998469329999955254733272069778 +/- 1.39e-38]",
      "upper": "[0.0039999998489330000044745266727930222 +/- 1.39e-38]"
    },
    {
      "arb": "[0.00399999967 +/- 2.87e-12]",
      "lower": "[0.0039999996671319999955254733272069778 +/- 1.39e-38]",
      "upper": "[0.0039999996691320000044745266727930222 +/- 1.39e-38]"
    },
    {
      "arb": "[0.00400000033 +/- 2.87e-12]",
      "lower": "[0.0040000003308679999955254733272069778 +/- 1.39e-38]",
      "upper": "[0.0040000003328680000044745266727930222 +/- 1.39e-38]"
    }
  ],
  "seller_response_slacks": [
    {
      "arb": "[0.085924816 +/- 3.71e-10]",
      "lower": "[0.085924816188241453974925151364061549 +/- 4.81e-37]",
      "upper": "[0.085924816370218936970651731847681276 +/- 1.22e-37]"
    },
    {
      "arb": "[0.0864828709 +/- 7.81e-11]",
      "lower": "[0.086482870900554316956959695843920599 +/- 1.46e-37]",
      "upper": "[0.086482870978042673183314222534079363 +/- 4.18e-38]"
    }
  ],
  "status": "PASS"
}
Aligned-composite probing and full-menu floating-point cross-check | floating_point_audit | pass

code/audit_aligned_composite_calibration.py

bounded aligned-composite search: PASS
probe certificates found: 8
full-menu certificates found: 8
strict nearby full-menu roots found: 18
PREFERRED PROBE n=(2,3), v=(.38,.42), d_S=(.02,0)
  state: {'n_l': 2, 'n_h': 3, 'v_l': 0.38, 'v_h': 0.42, 'd_s_l': 0.02, 'd_s_h': 0.0}
  offer: {'kappa': 0.02, 'd_bar': 0.045, 'urgency_rate': 10.0}
  q_l: 0.6591550577103409
  price_bounds: (0.43944266666666665, 0.6649573333333333)
  root_bracket_signs: (0.15795032962479594, -0.004754069404652506)
  cutoff_endpoints: (0.014197724377007469, 0.6991550577103409)
  active_b_start: 0.8189457732890704
  masses: (0.9263911737244124, 0.07360882627558762)
  outcomes: (0.9263911737244124, 0.03680441313779381, 0.03680441313779381)
  no_sale: (0.054872000000000004, 0.031116959999999996)
  equilibrium_no_sale: (0.054872000000000004, 0.031116959999999996, 0.04299448)
  residual: 0.0
  seller_l_rent: 0.0
  seller_h_rejection_slack: 0.09055596692627454
  knockout_deviation_gain: -0.026812091144829575
  d1_marginal_b: 1.0
  d1_slack: 0.005802275622992403
  theorem_thresholds: (0.019999999999999872, 0.05641095333333328, 0.036410953333333405, 0.09282190666666668)
  two_kink_identity_error: 1.8041124150158794e-16
  delta_monotonicity_margin: 0.0
PREFERRED FULL n=(2,3), v=(.38,.42), d_S=(.02,0)
  state: {'n_l': 2, 'n_h': 3, 'v_l': 0.38, 'v_h': 0.42, 'd_s_l': 0.02, 'd_s_h': 0.0}
  offer: {'kappa': 0.05, 'd_bar': 1.0, 'urgency_rate': 10.0}
  q_l: 0.6090229191520665
  q_h: 0.7153497266681323
  price_bounds: ((0.43944266666666665, 0.6649573333333333), (0.5585295199999999, 0.75777924))
  cutoff_ranges: ((0.02406558581873311, 0.7090229191520665), (0.04398144000146566, 0.7653497266681324), (0.0638972941841982, 0.8216765341841982))
  z_min: 0.019915854182732548
  masses: (0.7638739549162441, 0.10054854366843383, 0.13557750141532213)
  outcomes: (0.7638739549162441, 0.05027427183421691, 0.18585177324953905)
  conditional_mean_prices: (0.6865875430695402, 0.5741236957511121)
  no_sale: (0.054872000000000004, 0.031116959999999996)
  equilibrium_no_sale: (0.054348676619384376, 0.030986926962166643, 0.042667801790775506)
  residual: 6.661338147750939e-16
  fixed_point_residuals: (-3.3306690738754696e-16, -6.661338147750939e-16)
  seller_slacks: (0.0859248162792301, 0.0864828709392993)
  offpath_price_slacks: (0.05593441418126677, 0.04242951333186762)
  d1_slacks: (0.05593441418126677, 0.04242951333186762)
  private_seller_urgency_margin: 0.04242951333186762
  box_widths: (0.004, 0.004)
  box_interior_margins: (0.020065585818733106, 0.16632346581580182, 0.011915854182732541)
  box_face_margins: (0.004000000000000115, 0.004000000000000115, 0.003996513472499519, 0.0039960686345080765)
  two_kink_identity_error: 1.8041124150158794e-16
  delta_monotonicity_margin: 0.0
Urgency-only knockout-only D1 gate interval certificate | interval_certificate | pass

code/certify_urgency_only_knockout_gate.py

{
  "certificate": "urgency-only knockout-only D1 gate",
  "dependency": {
    "precision_decimal_digits": 60,
    "python_flint": "0.9.0"
  },
  "exact_primitives": {
    "d_S_H": "0",
    "d_S_L": "1/50",
    "d_bar": "1",
    "kappa": "1/100",
    "kappa_variant": "1/20",
    "lambda": "10",
    "n": 2,
    "pi": "1/2",
    "v": "2/5"
  },
  "interval_encoding": {
    "arb": "full outward Arb enclosure",
    "lower": "Arb ball enclosing the directed lower-endpoint computation; not a scalar decimal",
    "upper": "Arb ball enclosing the directed upper-endpoint computation; not a scalar decimal"
  },
  "item1_root": {
    "b_k0_box": {
      "arb": "[0.79098918430 +/- 3.44e-12]",
      "lower": "[0.79098918430143322924068074795973599 +/- 3.95e-36]",
      "radius": "[1.00000e-12 +/- 2.9e-21]",
      "upper": "[0.79098918430343322924624166951630483 +/- 9.25e-37]"
    },
    "derivative_box": {
      "arb": "[-0.1144825864 +/- 8.50e-11]",
      "lower": "[-0.11448258648494790817874349635420603 +/- 4.77e-36]",
      "radius": "[7.47727e-11 +/- 4.43e-17]",
      "upper": "[-0.11448258633540259671472132823001774 +/- 1.84e-36]"
    },
    "krawczyk_image": {
      "arb": "[0.79098918430243322924 +/- 4.12e-21]",
      "lower": "[0.79098918430243322924280807310518046 +/- 3.16e-36]",
      "radius": "[6.53136e-22 +/- 3.68e-28]",
      "upper": "[0.79098918430243322924411434437086035 +/- 1.99e-36]"
    },
    "q_star": {
      "arb": "[0.63735806105 +/- 4.67e-12]",
      "lower": "[0.63735806105141329117340326042932527 +/- 1.75e-36]",
      "radius": "[1.62566e-12 +/- 3.91e-18]",
      "upper": "[0.63735806105466461898959380790545256 +/- 4.48e-36]"
    },
    "residual_at_center": {
      "arb": "[2.2323e-42 +/- 6.08e-47]",
      "lower": "[2.2322392846941133705511605984112330e-42 +/- 4.72e-77]",
      "radius": "[4.05146e-47 +/- 1.99e-53]",
      "upper": "[2.2323203138543547359211014914051376e-42 +/- 2.25e-77]"
    },
    "willingness_slope_on_box": {
      "arb": "[0.37433611032 +/- 5.02e-12]",
      "lower": "[0.37433611031498933909894716132310870 +/- 9.37e-37]",
      "radius": "[1.58198e-12 +/- 1.62e-18]",
      "upper": "[0.37433611031815329586303984703427365 +/- 3.01e-36]"
    }
  },
  "item2_marginal_type": {
    "D_K_top_value": {
      "arb": "[-0.04064193895 +/- 4.67e-12]",
      "lower": "[-0.040641938948586708831678937254200530 +/- 2.88e-37]",
      "radius": "[1.62566e-12 +/- 3.92e-18]",
      "upper": "[-0.040641938945335381005323994411021633 +/- 4.94e-37]"
    },
    "b_k0": {
      "arb": "[0.79098918430 +/- 3.44e-12]",
      "lower": "[0.79098918430143322924068074795973599 +/- 3.95e-36]",
      "radius": "[1.00000e-12 +/- 2.9e-21]",
      "upper": "[0.79098918430343322924624166951630483 +/- 9.25e-37]"
    },
    "gamma_b_k0": {
      "arb": "[0.0030435821316 +/- 4.49e-14]",
      "lower": "[0.0030435821315574935919806046032608343 +/- 2.69e-38]",
      "radius": "[4.36855e-14 +/- 2.17e-20]",
      "upper": "[0.0030435821316448646351846204220530195 +/- 4.87e-38]"
    }
  },
  "item3_gate_margins": {
    "C_H_b_k0": {
      "arb": "[0.65040164318 +/- 7.48e-12]",
      "lower": "[0.65040164318180682799393484843236191 +/- 4.98e-36]",
      "radius": "[2.83331e-12 +/- 3.80e-18]",
      "upper": "[0.65040164318747344039622744492772978 +/- 4.89e-36]"
    },
    "C_L_b_k0": {
      "arb": "[0.63040164318 +/- 7.48e-12]",
      "lower": "[0.63040164318180682798715858485432751 +/- 2.27e-36]",
      "radius": "[2.83331e-12 +/- 3.80e-18]",
      "upper": "[0.63040164318747344040300370850576418 +/- 2.17e-36]"
    },
    "gate_i": {
      "arb": "[0.0030435821316 +/- 4.49e-14]",
      "lower": "[0.0030435821315574935918747254848540468 +/- 1.56e-38]",
      "radius": "[4.36855e-14 +/- 2.18e-20]",
      "upper": "[0.0030435821316448646352904995404598071 +/- 9.02e-39]"
    },
    "gate_ii": {
      "arb": "[0.01304358213 +/- 6.07e-12]",
      "lower": "[0.013043582127142209000952908737892149 +/- 1.48e-37]",
      "radius": "[4.45897e-12 +/- 1.13e-19]",
      "upper": "[0.013043582136060149226212316287421705 +/- 2.72e-37]"
    },
    "partial_branch_deterrence_sup": {
      "arb": "[-0.00152179107 +/- 6.43e-12]",
      "lower": "[-0.0015217910680300746300468170887968591 +/- 4.56e-38]",
      "radius": "[2.22949e-12 +/- 4.93e-18]",
      "upper": "[-0.0015217910635711044835357954238600678 +/- 7.79e-39]"
    }
  },
  "item4_survival_boundary": {
    "arb": "[0.0230435821316 +/- 4.49e-14]",
    "lower": "[0.023043582131557493591927665044057441 +/- 4.45e-37]",
    "radius": "[4.36855e-14 +/- 2.17e-20]",
    "upper": "[0.023043582131644864635237559981256413 +/- 3.20e-37]"
  },
  "item5_masses": {
    "knockout": {
      "arb": "[0.38446302914 +/- 7.66e-12]",
      "lower": "[0.38446302913569618875522467542331578 +/- 2.78e-36]",
      "radius": "[5.98040e-12 +/- 1.24e-18]",
      "upper": "[0.38446302914765698628775263682981683 +/- 1.95e-36]"
    },
    "waiting": {
      "arb": "[0.61553697086 +/- 7.66e-12]",
      "lower": "[0.61553697085234301371224736317018317 +/- 1.95e-36]",
      "radius": "[5.98040e-12 +/- 1.24e-18]",
      "upper": "[0.61553697086430381124477532457668422 +/- 2.78e-36]"
    }
  },
  "item6_variant": {
    "D_K_top_value_margin": {
      "arb": "[0.00570659344 +/- 3.69e-12]",
      "lower": "[0.0057065934363145785208397474208319853 +/- 2.45e-39]",
      "radius": "[1.00000e-12 +/- 8.0e-21]",
      "upper": "[0.0057065934383145785365650643444524324 +/- 1.76e-38]"
    },
    "derivative_box": {
      "arb": "[-0.2835323766 +/- 5.52e-11]",
      "lower": "[-0.28353237662923360745359756757582749 +/- 3.27e-36]",
      "radius": "[4.21862e-11 +/- 3.82e-17]",
      "upper": "[-0.28353237654486128376433544890250095 +/- 2.90e-36]"
    },
    "full_rejection_margin": {
      "arb": "[0.02429340656 +/- 3.69e-12]",
      "lower": "[0.024293406561685421466823067444564769 +/- 2.62e-38]",
      "radius": "[1.00000e-12 +/- 4.6e-21]",
      "upper": "[0.024293406563685421475772120790150813 +/- 3.47e-37]"
    },
    "gate_i_corner_form": {
      "arb": "[0.07429340656 +/- 3.69e-12]",
      "lower": "[0.074293406561685421461740869761038967 +/- 6.08e-38]",
      "radius": "[1.00000e-12 +/- 9.7e-21]",
      "upper": "[0.074293406563685421480854318473676615 +/- 3.81e-37]"
    },
    "gate_ii": {
      "arb": "[0.04429340656 +/- 3.69e-12]",
      "lower": "[0.044293406561685421466823067444564769 +/- 2.62e-38]",
      "radius": "[1.00000e-12 +/- 4.6e-21]",
      "upper": "[0.044293406563685421475772120790150813 +/- 3.47e-37]"
    },
    "knockout": {
      "arb": "[0.28357437642 +/- 5.12e-12]",
      "lower": "[0.28357437641944698245721626431170570 +/- 1.52e-37]",
      "radius": "[2.83624e-12 +/- 1.16e-18]",
      "upper": "[0.28357437642511946475717575164021689 +/- 2.51e-36]"
    },
    "krawczyk_image": {
      "arb": "[0.643706593437314578529 +/- 4.47e-22]",
      "lower": "[0.64370659343731457852855361806941036 +/- 8.88e-37]",
      "radius": "[1.48788e-22 +/- 1.87e-28]",
      "upper": "[0.64370659343731457852885119369587406 +/- 1.44e-36]"
    },
    "q_star_box": {
      "arb": "[0.64370659344 +/- 3.69e-12]",
      "lower": "[0.64370659343631457852592194510435779 +/- 2.67e-36]",
      "radius": "[1.00000e-12 +/- 2.9e-21]",
      "upper": "[0.64370659343831457853148286666092663 +/- 3.49e-37]"
    },
    "residual_at_center": {
      "arb": "[1.0042685e-40 +/- 1.25e-48]",
      "lower": "[1.0042684925332045080037491254736070e-40 +/- 2.52e-75]",
      "radius": "[9.95034e-49 +/- 1.29e-55]",
      "upper": "[1.0042685124338819330295505995103142e-40 +/- 4.65e-75]"
    },
    "waiting": {
      "arb": "[0.71642562358 +/- 5.12e-12]",
      "lower": "[0.71642562357488053524282424835978311 +/- 2.51e-36]",
      "radius": "[2.83624e-12 +/- 1.16e-18]",
      "upper": "[0.71642562358055301754278373568829430 +/- 1.53e-37]"
    }
  },
  "item7_failures": [
    {
      "d_S_L": "[0.02500000000 +/- 3e-16]",
      "killer_interval_width": {
        "arb": "[0.00195641787 +/- 6.07e-12]",
        "lower": "[0.0019564178639398507602351565565094898 +/- 4.67e-38]",
        "radius": "[4.45897e-12 +/- 1.27e-19]",
        "upper": "[0.0019564178728577910125996184181766563 +/- 2.21e-38]"
      },
      "midpoint_forced_acceptance_gain": {
        "arb": "[0.00048910447 +/- 4.83e-12]",
        "lower": "[0.00048910446517213071737642743050094182 +/- 8.24e-40]",
        "radius": "[1.92757e-12 +/- 4.51e-18]",
        "upper": "[0.00048910446902727972583226631317059471 +/- 3.14e-40]"
      },
      "raw_pbe_persistence_margin": {
        "arb": "[0.03564193895 +/- 4.67e-12]",
        "lower": "[0.035641938945335381003629928516513033 +/- 1.85e-37]",
        "radius": "[1.62566e-12 +/- 3.92e-18]",
        "upper": "[0.035641938948586708833373003148709131 +/- 3.44e-38]"
      }
    },
    {
      "d_S_L": "[0.03000000000 +/- 3e-16]",
      "killer_interval_width": {
        "arb": "[0.00695641787 +/- 6.07e-12]",
        "lower": "[0.0069564178639398507602351565565094898 +/- 4.67e-38]",
        "radius": "[4.45897e-12 +/- 1.27e-19]",
        "upper": "[0.0069564178728577910125996184181766563 +/- 2.21e-38]"
      },
      "midpoint_forced_acceptance_gain": {
        "arb": "[0.00173910447 +/- 4.83e-12]",
        "lower": "[0.0017391044651721307173764274305009418 +/- 2.09e-38]",
        "radius": "[1.92757e-12 +/- 4.51e-18]",
        "upper": "[0.0017391044690272797258322663131705947 +/- 1.04e-38]"
      },
      "raw_pbe_persistence_margin": {
        "arb": "[0.03064193895 +/- 4.67e-12]",
        "lower": "[0.030641938945335381003629928516513033 +/- 1.85e-37]",
        "radius": "[1.62566e-12 +/- 3.92e-18]",
        "upper": "[0.030641938948586708833373003148709131 +/- 3.44e-38]"
      }
    },
    {
      "d_S_L": "[0.05000000000 +/- 3e-16]",
      "killer_interval_width": {
        "arb": "[0.02695641787 +/- 6.07e-12]",
        "lower": "[0.026956417863939850760235156556509490 +/- 1.54e-37]",
        "radius": "[4.45897e-12 +/- 1.27e-19]",
        "upper": "[0.026956417872857791012599618418176656 +/- 2.78e-37]"
      },
      "midpoint_forced_acceptance_gain": {
        "arb": "[0.00673910447 +/- 4.83e-12]",
        "lower": "[0.0067391044651721307173764274305009418 +/- 2.09e-38]",
        "radius": "[1.92757e-12 +/- 4.51e-18]",
        "upper": "[0.0067391044690272797258322663131705947 +/- 1.04e-38]"
      },
      "raw_pbe_persistence_margin": {
        "arb": "[0.01064193895 +/- 4.67e-12]",
        "lower": "[0.010641938945335381003629928516513033 +/- 1.85e-37]",
        "radius": "[1.62566e-12 +/- 3.92e-18]",
        "upper": "[0.010641938948586708833373003148709131 +/- 3.44e-38]"
      }
    }
  ],
  "raw_pbe_bound": {
    "arb": "[0.06064193895 +/- 4.67e-12]",
    "lower": "[0.060641938945335381005323994411021633 +/- 4.94e-37]",
    "radius": "[1.62566e-12 +/- 3.92e-18]",
    "upper": "[0.060641938948586708831678937254200530 +/- 2.88e-37]"
  },
  "status": "PASS"
}
Urgency-only knockout-only D1 gate floating-point cross-check | floating_point_audit | pass

code/audit_urgency_only_knockout_only_d1.py

== A. validation: manuscript full-menu urgency-only Example ==
(q_L, q_H) = (0.586756515, 0.643707660)   [manuscript: (.586757, .643708)]
residuals (3.33e-15, 0.00e+00)
masses (M0, ML, MH) = (0.550185181, 0.185288486, 0.264526333)   [manuscript: (.550185181, .185288486, .264526333)]
outcome probabilities (0.550185, 0.092644, 0.357171)   [manuscript: (.550185, .092644, .357171)]

== B. knockout-only boundary fixed point, Example primitives ==
q* = 0.637358061052   residual 1.11e-16
masses: waiting 0.615536971, knockout 0.384463029 (sum 1.000000000000)
outcomes: (no offer, rejected, success) = (0.615537, 0, 0.384463)
on-path responses: patient indifferent at q* (boundary), urgent strict margin q* - E[C_L|pool] = 0.020000000 (= z_U - z_P)

== C. strict-gain contingent-plan D1 audit at q* ==
D_K(1) = -0.040641939 < 0, so the top of the tied marginal curve w(b)+d = q*+kappa is b_K^0 = 0.790989184300
Gamma(b_K^0) = 0.003043582   [(1-b)^3/3 = 0.003043582]
C_L(b_K^0) = 0.630401643,  C_H(b_K^0) = 0.650401643
gate (i):  z_U = 0.02 <= Gamma + kappa/A = 0.023043582   margin 0.003043582
gate (ii): q* <= C_H(b_K^0)   margin 0.013043582
full-rejection variant C_L(b_K^0) - q* = -0.006956418 (< 0: completion uses the two-branch table below)
completion: belief delta_(b_K^0, 0) at every p < q*;
  p <  C_L(b_K^0) = 0.630401643: both states reject; sup type gain = -kappa < 0
  p in [C_L(b_K^0), q*): urgent accepts, patient rejects; sup type gain = A(q*+kappa-p)-kappa <= -0.001521791  [= A(z_U - z_U*) = -0.001521791]
  grid sup gain, p = C_L(b_K^0), plan (1,0): -0.001522427 at (b, d) = (0.63000, 0.07938)
  grid sup gain, p mid-branch, plan (1,0): -0.003261532 at (b, d) = (0.63000, 0.07938)
  grid sup gain, p = q* - 1e-6, plan (1,0): -0.005000136 at (b, d) = (0.63000, 0.07938)
  grid sup gain, p just below C_L(b_K^0), plan (0,0): -0.010000000 at (b, d) = (0.00000, 0.00000)
  grid sup gain, p = 0.30, plan (0,0): -0.010000000 at (b, d) = (0.00000, 0.00000)
  grid sup gain, overcut p = q* + .02, plan (1,1): -0.020000000 at (b, d) = (0.76625, 1.00000)

== D. survival boundary and price bands ==
z_U* (D1 boundary)  = Gamma(b_K^0) + kappa/A = 0.023043582
z_U^raw (PBE bound) = w(1) - q* + pi*kappa/A = 0.060641939
Example z_U = 0.02: knockout-only SURVIVES D1 (margin 0.003043582)
D1-surviving knockout-only price band at z_U = 0.02: [q*, q_max] = [0.637358061, 0.678000000]
  (raw-PBE band upper endpoint w(1)-z_U+pi*kappa/A = 0.678000000; coincides at z_U = kappa/A)
  at z_U = 0.022 the band shrinks to [0.637358061, 0.646980728]
z_U = 0.025: killer undercuts (0.625402, 0.627358); every D1-permitted belief has E[C_L] <= C_L(b_K^0) = 0.625402 < p, urgent acceptance is forced, marginal-type gain >= 0.000489 > 0  ->  FAILS D1
z_U = 0.03: killer undercuts (0.620402, 0.627358); every D1-permitted belief has E[C_L] <= C_L(b_K^0) = 0.620402 < p, urgent acceptance is forced, marginal-type gain >= 0.001739 > 0  ->  FAILS D1
z_U = 0.05: killer undercuts (0.600402, 0.627358); every D1-permitted belief has E[C_L] <= C_L(b_K^0) = 0.600402 < p, urgent acceptance is forced, marginal-type gain >= 0.006739 > 0  ->  FAILS D1
z_P sensitivity (z_P = 0.005): q* = 0.631047391, b_K^0 = 0.774688490, gap gate z_U - z_P <= R(b_K^0) - E[R|pool] + pi*kappa/A = 0.018812667  [here z_U - z_P = 0.0150]

== E. kappa = 0.05 variant: full-rejection counterexample ==
q* = 0.643706593437   residual 2.22e-16
masses: waiting 0.716425624, knockout 0.283574376
on-path urgent strict margin 0.020000000
D_K(1) = 0.005706593 >= 0: the top-value type (1, D_K(1)) is itself marginal, b_K^0 = 1.0
C_L(1) - q* = 0.024293407 > 0: belief on (1, D_K(1)) makes BOTH seller states reject every undercut p < q*
gates: (i) margin 0.074293407, (ii) margin 0.044293407
  grid sup gain, p = q* - 1e-6, plan (0,0): -0.050000000 at (b, d) = (0.00000, 0.00000)
  grid sup gain, p = 0.55, plan (0,0): -0.050000000 at (b, d) = (0.00000, 0.00000)
  grid sup gain, overcut p = q* + .02, plan (1,1): -0.020000000 at (b, d) = (0.78187, 1.00000)
Private-seller-urgency-as-state audit | floating_point_audit | pass

code/audit_seller_urgency_only_refined_pbe.py

private seller urgency as sole seller state: full-menu audit
q_L=0.586756515152
q_H=0.643707659771
masses(wait,probe,knockout)=(0.550185181099,0.185288486193,0.264526332708)
outcomes(no early offer,rejected,successful)=(0.550185181099,0.092644243096,0.357170575804)
fixed_point_residual=1.643e-14
minimum_cutoff_gap=0.093902289238
cutoff_ranges=((-0.08124348484757395, 0.606756515152426), (0.012658804390186407, 0.7006588043901864))
posterior_continuations=((0.5867565151524424, 0.6067565151524423), (0.6237076597713086, 0.6437076597713086))
top_belief_thresholds=(0.6679999999999999, 0.688)
largest_pointwise_best_response_loss=0.000e+00
D1_probe_bmax=0.699522891097
D1_probe_slack=0.009043008127
D1_knockout_bmax=1.000000000000
D1_knockout_d_at_bmax=0.012658804390
D1_knockout_slack=0.044292340229
positive action masses: PASS
ordered cutoffs: PASS
fixed point: PASS
buyer best responses: PASS
probing D1 deterrence: PASS
knockout D1 deterrence: PASS
top belief makes deviations weakly dearer: PASS
Tables OA5.2–OA5.3: regenerated exactly from the fresh certificate.
Conditional-price calculationCertified lower boundCertified upper bound
Completed early-sale probability0.1858517730.185851774
Early-price numerator0.1276035120.127603513
Early conditional mean price0.6865875430.686587544
Completed bidding-round sale probability0.7714804240.771480425
Bidding-round price numerator0.4429251920.442925193
Bidding-round conditional mean price0.5741236950.574123696
Conditional mean-price difference0.1124638470.112463848

Each conditional mean divides its price numerator by the matching completed-sale probability. Waiting buyers and rejected probes enter the bidding-round denominator; no-sale histories are removed. The numerator enclosures above are products of the certified means and sale probabilities, so they can be slightly wider than the original integral enclosures. This untargeted calibration illustrates a selected conditional comparison, not an empirical estimate.

5. Disclosure, insurance and alternative bargaining protocols

The following checks accompany separate extensions; their assumptions are not imposed on the main model.

OA2: disclosure. The calculations examine verifiable participation information, including the opposite welfare rankings in Table OA2.1. They do not make deep preference parameters verifiable.

Show Python code
records(['demand_disclosure_floating', 'disclosure_welfare_examples_floating'])
import re
disclosure_text = (RUN / 'disclosure_welfare_examples_floating.stdout.txt').read_text(encoding='utf-8')
priors = re.findall(r'pi=([0-9.]+), n=', disclosure_text)
components = re.findall(r'state changed-sales values=\(([+-]?[0-9.]+), ([+-]?[0-9.]+)\)', disclosure_text)
if len(priors) != 2 or len(components) != 2:
    raise RuntimeError('Expected both disclosure-state decompositions.')
table(['High-state prior', 'Low-state sale-set effect', 'High-state sale-set effect'],
      [[prior, low, high] for prior, (low, high) in zip(priors, components)])
Committed demand-disclosure audit | floating_point_audit | pass

code/verify_continuous_demand_disclosure.py

private prices: q_L=0.609031541923, q_H=0.829183938170
disclosed prices: q_L=0.633695435821, q_H=0.829176788566
disclosed conditional offer masses: M_L=0.155658947575, M_H=0.090236868640
private incidence: attempt=0.059993929487, completed=0.046566704855, rejected=0.013427224631
disclosed incidence: attempt=completed=0.122947908107, rejected=0
cutoff shifts: L=-0.095336106, H=-0.100159546
private payoff changes versus auction: seller=0.002907851404, early=0.004652309923, late=-0.001923648048, total=0.005636513279
disclosed payoff changes versus auction: seller=0, early=0.012289829662, late=-0.005068184231, total=0.007221645431
disclosure welfare change versus opacity: total=0.001585132151, saved rejected-attempt resources=0.001611266956, changed-acceptance component=-0.000026134805
grid audit: 105 primitive configurations, 162 active state problems, 162 fixed points, 129 D1-compatible, 33 D1 failures, 0 multiple-root cases
boundary stress audit: 64 auction checks, 32 active checks, 33 explicit D1 witnesses
continuous demand-disclosure audit: passed
Opposite welfare effects of participation-state disclosure | floating_point_audit | pass

code/audit_disclosure_welfare_examples.py

kappa=0.0200, d_bar=1.2000, lambda=10.0000, ell=0.4000, pi=0.6500, n=(1,3), dS=0.0000: change=+0.001618271168, rejection saving=+0.003064309504, changed sales=-0.001446038335, completed 0.225328975275 -> 0.361031095365, rejected=0.153215475178, margin=0.00289308
  prices private=(0.525750222, 0.713846443), disclosed=(0.533664428, 0.710665919); private masses wait/probe/knockout=(0.621455550, 0.235716116, 0.142828335); disclosed L/H masses=(0.462179667, 0.306566480); state changed-sales values=(-0.000891410, -0.000554628); welfare private/disclosed=(+0.020792102, +0.022410373)
kappa=0.0200, d_bar=1.2000, lambda=10.0000, ell=0.4000, pi=0.7750, n=(1,3), dS=0.0000: change=-0.000335617244, rejection saving=+0.001947193841, changed sales=-0.002282811085, completed 0.242586146554 -> 0.341579446974, rejected=0.097359692054, margin=0.00348747
  prices private=(0.504758725, 0.713845089), disclosed=(0.533664428, 0.710665919); private masses wait/probe/knockout=(0.660054161, 0.125625409, 0.214320430); disclosed L/H masses=(0.462179667, 0.306566480); state changed-sales values=(-0.000675755, -0.001607057); welfare private/disclosed=(+0.021512287, +0.021176670)
High-state priorLow-state sale-set effectHigh-state sale-set effect
0.6500-0.000891410-0.000554628
0.7750-0.000675755-0.001607057

These floating-point contributions include the state probabilities. They sum to the sale-set effect up to display rounding; the .001607 high-state loss at prior .775 is a prior-weighted contribution.

OA3: risk aversion. The interval certificate verifies the binary heterogeneous-CARA calibration supporting Proposition OA3.1, including its equilibrium and D1 conditions over all buyer values and unused prices. The risk-aversion coefficient takes two values; the revised appendix makes no continuous-risk-aversion claim.

Show Python code
records(['binary_cara_interval'])
from generate_cara_certificate_table import DISPLAY_LABELS, parse_bounds, render as render_cara
cara_text = (RUN / 'binary_cara_interval.stdout.txt').read_text(encoding='utf-8')
cara_bounds = parse_bounds(cara_text)
cara_rows = []
with localcontext() as context:
    context.prec = 100
    for key, label in DISPLAY_LABELS:
        places = 21 if 'residual' in key else 9
        cara_rows.append([label, *[f'{value:f}' for value in bounds(cara_bounds[key], places)]])
table(['Binary-CARA certificate', 'Certified lower bound', 'Certified upper bound'], cara_rows)
generated_cara_table = render_cara(cara_text)
if generated_cara_table.encode('utf-8') != (ROOT / 'figures/cara_certificate_table.tex').read_bytes():
    raise RuntimeError('The distributed CARA table differs from the fresh certificate.')
print('Binary-CARA table: regenerated exactly from the fresh certificate.')
(RUN / 'binary_cara_bounds.json').write_text(json.dumps({
    'source_task': 'binary_cara_interval',
    'interval_encoding': 'Each lower/upper field retains the complete outward Arb ball, including printed uncertainty.',
    'bounds': cara_bounds,
}, indent=2) + '\n', encoding='utf-8')

certificate_ids = ['ban_welfare_examples_interval', 'aligned_composite_full_menu_interval', 'binary_cara_interval']
provenance = [{'task': task_id, 'source': specs[task_id]['script'],
               'source_sha256': hashlib.sha256((ROOT / specs[task_id]['script']).read_bytes()).hexdigest(),
               'output_sha256': hashlib.sha256((RUN / (task_id + '.stdout.txt')).read_bytes()).hexdigest()}
              for task_id in certificate_ids]
display(HTML('<details><summary>Certificate source and output identifiers</summary><pre>'
             + html.escape(json.dumps(provenance, indent=2)) + '</pre></details>'))
Binary heterogeneous-CARA probing interval certificate | interval_certificate | pass

code/risk_aversion_strong_binary_cara_certificate.py

BINARY PRIVATE-CARA REFINED PBE: ARB CERTIFICATE
  alpha_L (exact): [0.37000000000000000000000000000000000000000000000000000000000000000000000000000000 +/- 9.92e-82]
  q: [0.655960451221776724309094715318339960114959440578928729228823432076608210301 +/- 5.79e-76]
  beta: [0.81169993034278 +/- 3.01e-15]
  alpha_H: [2.788027980 +/- 4.37e-10]
ROOT AND REGULARITY
  low endpoint residual: [+/- 3.43e-76]
  beta lower residual: [-3.65315790905562741696352721586987293693069516457582287370440e-16 +/- 5.89e-76]
  beta upper residual: [6.5903897278778071056604351035504318221589333674787772636839e-17 +/- 3.66e-76]
  alpha_H lower residual: [-2.2e-11 +/- 5.42e-13]
  alpha_H upper residual: [2.2e-11 +/- 5.57e-13]
  dF_H/dalpha: [0.21671780 +/- 6.20e-9]
  IFT q diagonal: [-0.4733846978339628548208763319392614948821741823077144560811108704446088446273 +/- 8.70e-77]
  IFT beta diagonal: [0.10780492165502 +/- 5.82e-15]
BUYER SORTING AND LOW-PRICE D1
  single-crossing margin: [0.25744171366 +/- 4.28e-12]
  low-alpha analytic waiter margin: [0.28902641248860888022179844748291706244690237219179263386925997321913721171349384 +/- 8.03e-81]
  high-alpha waiter derivative numerator upper bound: [-0.17315679915869614837174417601507966142366385489818951690313457753113115645807607 +/- 1.35e-81]
  min normalized Gamma_L-Gamma_H: [7.8240857248575455629164588364662849737193185234380542344099404598203359510326104 +/- 6.44e-81]
  dF_top/dalpha at alpha_L: [0.01166207953272071657989175542456146171539249947115362035935722727100915022 +/- 5.74e-75]
  q-R_2(beta): [0.02029967425703 +/- 8.22e-15]
  thickening seller-map derivative: [-0.0005138999 +/- 4.42e-11]
SELLER AND HIGH-PRICE MARGINS
  R_2(1)-q: [0.010706215444889942357571951348326706551707226087737937437843234590058456366 +/- 4.79e-76]
  E[R_7|probe]-q: [0.1954402118990 +/- 2.93e-14]
  p_dagger: [0.79162646 +/- 6.62e-9]
  7/8-p_dagger: [0.08337354 +/- 6.62e-9]
  low-alpha all-state moment gap: [0.0532396533106266453387666361647550109773343794012725617156612836613803556 +/- 3.02e-74]
  high-alpha all-state moment gap: [2.3784788 +/- 8.10e-8]
OUTCOME PROBABILITIES (equal curvature masses)
  no offer: [0.90584996517139 +/- 1.51e-15]
  rejection: [0.047075017414305 +/- 7.51e-16]
  agreement: [0.047075017414305 +/- 7.51e-16]
Binary-CARA certificateCertified lower boundCertified upper bound
Price0.6559604510.655960452
High-risk-aversion value cutoff0.8116999300.811699931
High risk-aversion coefficient2.7880279792.788027981
Cutoff equation: lower-endpoint residual-0.000000000000000365316-0.000000000000000365315
Cutoff equation: upper-endpoint residual0.0000000000000000659030.000000000000000065904
Risk-aversion equation: lower-endpoint residual-0.000000000022542000000-0.000000000021458000000
Risk-aversion equation: upper-endpoint residual0.0000000000214430000000.000000000022557000000
Risk-aversion equation derivative0.2167177930.216717807
Cutoff equation derivative0.1078049210.107804922
Global match-value single-crossing margin0.2574417130.257441714
Low-curvature waiter-order margin0.2890264120.289026413
High-curvature waiter derivative numerator upper bound-0.173156800-0.173156799
Minimum normalized cross-curvature undercut gap7.8240857247.824085725
Low-state top-value rejection margin0.0107062150.010706216
High-state on-path rejection margin0.1954402110.195440212
High-price cutoff0.7916264530.791626467
High-price rejection margin0.0833735330.083373547
Low-curvature knockout moment gap0.0532396530.053239654
High-curvature knockout moment gap2.3784787192.378478881
Binary-CARA table: regenerated exactly from the fresh certificate.
Certificate source and output identifiers
[
  {
    "task": "ban_welfare_examples_interval",
    "source": "code/certify_ban_welfare_examples.py",
    "source_sha256": "92617dd8b41765269a0124137670b399ed8f2d3c776355c63e2b6c948d835c88",
    "output_sha256": "e8ccb783b0f9a57a47dde46aa523ff0cca3bdecf90cfac9c1d94e281a9934aaf"
  },
  {
    "task": "aligned_composite_full_menu_interval",
    "source": "code/certify_aligned_composite_full_menu.py",
    "source_sha256": "625aee375684cceb97beaa70bd04648bc68f58c5bcebd521fa5c177a231830e4",
    "output_sha256": "321b09f84cd3354b2eef5c9cfbb4bcb529f0b7aeaba87f047d0de1d65e5d45e6"
  },
  {
    "task": "binary_cara_interval",
    "source": "code/risk_aversion_strong_binary_cara_certificate.py",
    "source_sha256": "7c1b60c2aa1038480ae45be98231cfb52c4e78a146deb42d516efc7c0c7fda32",
    "output_sha256": "3e2a875539e6d3e38fe8f2ec7a38aa397647392b58af666b3bdb6af22ee5822f"
  }
]

The price solves its equation analytically. Strict sign brackets and positive derivatives enclose the other two root coordinates. The global comparisons combine analytical reductions with 512 interval subdivisions over the relevant value and undercut domains. The normalized undercut gap compares the two curvature classes' gain expressions divided by the price reduction, including its zero limit. Full residuals and margins remain in the expanded calculation record. Run All writes the parsed outward bounds to binary_cara_bounds.json in the same fresh results folder as the other machine-readable certificates; the notebook remains the only download. The collapsed source and output identifiers distinguish the exact calculation records.

OA4: alternative protocols. Exact arithmetic checks the continued pre-auction bargaining example and its tail, cost and welfare conditions. A separate interval calculation checks post-bidding seller counteroffers with action linkage. These are distinct protocol extensions, with their own assumptions and equilibrium claims.

Show Python code
records(['preemption_bargaining_equilibrium_exact', 'preemption_bargaining_tail_exact',
         'preemption_bargaining_cost_region_exact', 'patient_initiator_welfare_exact',
         'full_linkage_counteroffer_interval'])
Continued pre-emption-stage bargaining equilibrium audit | exact_arithmetic_audit | pass

code/audit_unit_urgency_renegotiation_independent.py

INDEPENDENT UNIT-URGENCY AUDIT: PASS
  raw PBE: PASS
  posterior-consistent recursive completion: PASS
  prices
    q: 1/2 (0.500000000000)
    p: 573/875 (0.654857142857)
    r: 3797/5000 (0.759400000000)
  seller values
    L: C(q)=0.530706470237, K(r)=0.718444327634, C(p)=0.476710052104
    H: C(q)=0.726823193702, K(r)=0.736250198311, C(p)=0.702641624076
  repaired tails
    q: tau=0.531206470237, active gap=0.124793529763, H gap=0.195616723466
    p: tau=0.477210052104, active gap=0.178789947896, H gap=0.225431571972
  outcomes
    no_attempt: 9639/40000 (0.240975000000)
    attempt_then_auction: 237581/2800000 (0.084850357143)
    early_agreement: 1887689/2800000 (0.674174642857)
  dynamic D1 / forward induction: not established
Posterior-consistent bargaining-tail audit | exact_arithmetic_audit | pass

code/audit_sequential_tail_repair.py

POSTERIOR-CONSISTENT TAIL REPAIR AUDIT: PASS
  epsilon=1/2000 (0.000500000000), strictly below c_S-c_B
  history q
    eta=0.000000000000: C_L=0.511569210097, tau=0.512069210097, C_H=0.718757489010, active gap=0.072597456570, H gap=0.206688278913
    eta=0.632862625876: C_L=0.558611865363, tau=0.559111865363, C_H=0.745603930214, active gap=0.025554801304, H gap=0.186492064851
  history p
    eta=0.000000000000: C_L=0.485351420346, tau=0.485851420346, C_H=0.706557424075, active gap=0.098815246321, H gap=0.220706003729
    eta=0.632862625876: C_L=0.583523809524, tau=0.584023809524, C_H=0.760842529079, active gap=0.000642857143, H gap=0.176818719556
  high-b recursive completion
    believed high type can pool: 1999/1000 (1.999000000000)
    H rejects high-b tail: 1/6 (0.166666666667)
    H auction exceeds high-b acceptance threshold: 497/3000 (0.165666666667)
    L counter remains below auction: 1/1000 (0.001000000000)
    H counter remains below auction: 1/500 (0.002000000000)
    tail is cheapest L-accepted buyer offer: 0 (0.000000000000)
  recursive seller counters are strictly dominated
  complete patient-atom interval endpoints: certified exactly
Canonical positive-cost bargaining region audit | exact_arithmetic_audit | pass

code/audit_canonical_cost_region.py

CANONICAL POSITIVE-COST REGION AUDIT: PASS
  note-71 slice: eta*=117204341/120480341 (0.972808841901)
  first binding condition: seller H: r versus auction
  certified multi-affine box:
    eta: [0, 9/10] = [0.000000000000, 0.900000000000]
    kappa: [1/10000, 1/1000] = [0.000100000000, 0.001000000000]
    c_B: [1/2000, 1/800] = [0.000500000000, 0.001250000000]
    c_S: [3/2000, 1/400] = [0.001500000000, 0.002500000000]
  smallest seller margin in box: seller H: r versus auction = 56186341/131040000000 (0.000428772444)
  smallest tail margin in box: tail: epsilon positive = 1/8000 (0.000125000000)
  patient private rent:
    top_rent: 203/30000 (0.006766666667)
    conditional_mean: 539/120000 (0.004491666667)
    population_per_unit_eta: 539/1200000 (0.000449166667)
  all calculations use exact rational arithmetic
Patient-initiator welfare accounting | exact_arithmetic_audit | pass

code/audit_patient_initiator_welfare.py

PASS: exact patient-initiator welfare accounting
proposal cost K (full-resource case): 7/2000
mean L-state allocative loss: 13/4000
mean ex-ante allocative loss: 91/40000
mean full loss per patient attempt: 231/40000
mean buyer private gain: 539/120000
mean seller private change: -161/20000
mean buyer-seller joint change: -427/120000
mean excluded-late-bidder loss: 133/60000
mean late-bidder payoff change: -133/60000
mean total payoff change: -231/40000
population full-loss coefficient (multiply by eta): 231/400000
Full-action-linkage one-counteroffer interval certificate | interval_certificate | pass

code/certify_full_linkage_counteroffer_equilibrium.py

full-linkage Arb existence and interim-D1 certificate: PASS
python-flint 0.9.0 precision 60 digits
root box q,r_probe,r_wait
  [0.738406414 +/- 1.06e-10]
  [0.780957223 +/- 2.74e-10]
  [0.661140320 +/- 1.61e-10]
Krawczyk image
  [0.7384064140054715 +/- 5.73e-17]
  [0.78095722317359113 +/- 9.23e-18]
  [0.6611403199398241 +/- 5.26e-17]
active revenue-curvature upper bounds [-0.3313248786398874 +/- 3.44e-17] [-0.2251168478879802 +/- 1.52e-17]
probe mass [0.13460217 +/- 6.07e-9]
outcomes no-offer,rejection,success [0.86539783 +/- 6.07e-9] [0.06730109 +/- 3.33e-9] [0.06730109 +/- 3.33e-9]
H rejection slack [0.02490920 +/- 2.15e-9]
top cutoff [0.040637366 +/- 4.96e-10]
p_dagger [0.865699572 +/- 5.47e-10]
top-belief rejected/accepted deviation upper bounds [-0.01000000000000000 +/- 3e-22] [-0.124300428 +/- 5.47e-10]
D1 endpoint margins q-pbar, K_L(.678)-q, xi, K_H(.85)-pdag, local-upper [0.01073454 +/- 2.61e-9] [0.000607146 +/- 3.32e-10] [0.003997983 +/- 5.46e-10] [0.002049650 +/- 1.37e-10] [-0.002644755 +/- 4.79e-10]
unrestricted high-price corner upper bounds both,L,H,reject [+/- 1.48e-10] [-0.03682852045569341 +/- 2.23e-18] [-0.03265182069957426 +/- 4.92e-20] [-0.008706110284631391 +/- 4.92e-19]

6. Figures and numerical inputs

The figure checks regenerate CSV and TikZ outputs in isolated folders and compare them byte for byte. They include the full-menu price geometry, the composite probing strip, and the distributions of values and resolution benefits. Some generated diagrams are retained from the longer paper. Schematic timing and payoff diagrams drawn directly in LaTeX are not additional numerical exercises.

Show Python code
records(['maintained_theory_figures_roundtrip', 'numerical_distribution_figures_roundtrip'])
table(['Reproduced figure data/source'], [[path] for task in specs.values()
                                        if task['kind'] == 'figure_roundtrip'
                                        for path in task['outputs']])
Maintained theory-figure round-trip check | figure_roundtrip | pass

code/generate_theory_figure_data.py, code/generate_probing_only_regime_figure.py

THEORY FIGURE DATA: PASS
  probing strip and three-outcome example reproduced
  renegotiation type thresholds and q-r-p path reproduced
  wrote six deterministic files under C:\Users\EmilMathiasStrømHals\Documents\GitHub\Pre-emptive-bids\code\reproduction_outputs\workbook-20261013T111656.819995Z\maintained_theory_figures_roundtrip_workspace\figures

ALIGNED-COMPOSITE PROBING FIGURE: PASS
  wrote C:\Users\EmilMathiasStrømHals\Documents\GitHub\Pre-emptive-bids\code\reproduction_outputs\workbook-20261013T111656.819995Z\maintained_theory_figures_roundtrip_workspace\figures\probing_only_regime_figure.tex
  no-early-offer boundary = 0.020000000
  probing theorem upper = 0.0928219067
  no numerical continuation row generated
Numerical-distribution figure round-trip check | figure_roundtrip | pass

code/generate_numerical_distribution_figures.py

Generated numerical-distribution CSV and TikZ files.
Reproduced figure data/source
figures/probing_only_regime_strip.csv
figures/probing_only_outcomes.csv
figures/renegotiation_thresholds.csv
figures/theory_figure_metadata.json
figures/full_menu_outcomes_figure.tex
figures/full_menu_price_geometry_figure.tex
figures/probing_only_regime_figure.tex
figures/ban_value_distributions.csv
figures/ban_value_distributions_figure.tex
figures/numerical_urgency_distributions.csv
figures/numerical_urgency_distributions_figure.tex

7. Research diagnostics

These four checks are retained for transparency and further work. They are not extra certified results in the revised paper. They examine the boundary of a simplified counteroffer rule, candidate continuous buyer-risk and local seller-risk calibrations, and an active post-bidding bargaining candidate. A diagnostic can pass by documenting a limitation; its status does not certify an equilibrium. Private offers during an ongoing auction belong to a separate archived research direction and are not part of the revised papers or this release.

Show Python code
records(['counteroffer_firewall_floating', 'continuous_cara_floating',
         'seller_cara_local_floating', 'active_postbidding_bargaining_diagnostic'])
if shown != set(tasks):
    raise RuntimeError('Workbook coverage differs from the executed task inventory.')
print(f'Coverage complete: all {len(tasks)} executed checks have an explanatory home above.')
print('Fresh results: ' + RUN.relative_to(ROOT).as_posix())
No-action-linkage one-counteroffer research audit | diagnostic | pass

code/audit_terminal_counteroffer_one_offer_plugin.py

terminal-counteroffer one-offer plug-in audit: PASS
{
  "physical_fallbacks": [
    0.4,
    0.4
  ],
  "counteroffer_thresholds": [
    0.7,
    0.7
  ],
  "reduced_form": {
    "minimum_continuation_gap": 0.013949999999999907,
    "minimum_willingness_gap": 0.0,
    "minimum_delta_w_increment": 0.0,
    "reserve_points": [
      0.6999999999999998,
      0.7,
      0.7000000000000001
    ],
    "c_l_reserve_sides": [
      0.552,
      0.699,
      0.6990000000000001
    ],
    "c_h_reserve_sides": [
      0.61005,
      0.71295,
      0.71295
    ],
    "continuation_jumps": [
      0.1469999999999999,
      0.10289999999999999
    ]
  },
  "probe": {
    "offer": {
      "kappa": 0.01,
      "d_bar": 0.019,
      "urgency_rate": 10.0
    },
    "q_l": 0.7688238405426777,
    "action_masses": [
      0.9600836987408944,
      0.039916301259105565
    ],
    "outcomes": [
      0.9600836987408944,
      0.019958150629552782,
      0.019958150629552782
    ],
    "fixed_point_residual": 0.0,
    "root_bracket_signs": [
      0.13277695936708656,
      -0.0017594806959073672
    ],
    "seller_h_rejection_slack": 0.0280809659603094,
    "knockout_deviation_gain": -0.0011005797286610663,
    "grid_knockout_deviation_gain": -0.0011005797286610663,
    "d1_marginal_b": 1.0,
    "d1_slack": 0.002176159457322191,
    "theorem_thresholds": [
      0.00999999999999988,
      0.014512499999999975,
      0.0045125000000000946,
      0.01902500000000007
    ],
    "inactive_price_audit": {
      "top_belief_thresholds": [
        0.7709999999999999,
        0.800025
      ],
      "price_rows": [
        [
          0.0,
          0,
          -0.01,
          0.0,
          0.0
        ],
        [
          0.7709999999999998,
          0,
          -0.01,
          0.0,
          0.0
        ],
        [
          0.7709999999999999,
          1,
          -0.0010880797286610955,
          0.8923500000000001,
          0.019
        ],
        [
          0.771,
          1,
          -0.001088079728661151,
          0.8923500000000001,
          0.019
        ],
        [
          0.7855125,
          1,
          -0.008344329728661115,
          0.8923500000000001,
          0.019
        ],
        [
          0.8000249999999999,
          1,
          -0.01560057972866108,
          0.8923500000000001,
          0.019
        ],
        [
          0.800025,
          2,
          -0.0011005797286610663,
          1.0,
          0.019
        ],
        [
          0.8000250000000001,
          2,
          -0.0011005797286611774,
          1.0,
          0.019
        ],
        [
          1.0,
          2,
          -0.20107557972866108,
          1.0,
          0.019
        ]
      ],
      "maximum_gain": [
        -0.0010880797286610955,
        0.7709999999999999,
        1,
        0.8923500000000001,
        0.019
      ],
      "continuum_reduction": "payoff decreases in price within each response region"
    }
  },
  "full_menu": {
    "offer": {
      "kappa": 0.05,
      "d_bar": 1.0,
      "urgency_rate": 10.0
    },
    "prices": [
      0.6855337741094059,
      0.7531664760864228
    ],
    "cutoff_ranges": [
      [
        0.004533774109405836,
        0.7855337741094058
      ],
      [
        0.007653976086422834,
        0.8031664760864229
      ],
      [
        0.010774178063439832,
        0.8207991780634398
      ]
    ],
    "sorting_gap": 0.003120201977016998,
    "action_masses": [
      0.7341536169721729,
      0.043363697777219934,
      0.22248268525060708
    ],
    "outcomes": [
      0.7341536169721729,
      0.021681848888609967,
      0.24416453413921704
    ],
    "fixed_point_residuals": [
      2.55351295663786e-15,
      8.881784197001252e-16
    ],
    "seller_slacks": [
      0.03144822134097114,
      0.027979454855610375
    ],
    "d1_slacks": [
      0.08546622589059405,
      0.046858523913577144
    ],
    "price_box_interior_margins": [
      0.004433774109405847,
      0.1789008219365602,
      0.00292020197701702
    ],
    "price_box_face_margins": [
      0.00010000000000198739,
      9.999999999787956e-05,
      9.994135362145773e-05,
      9.994117734424268e-05
    ],
    "inactive_price_audit": {
      "top_belief_thresholds": [
        0.7709999999999999,
        0.800025
      ],
      "price_rows": [
        [
          0.0,
          0,
          -0.05,
          0.0,
          0.0
        ],
        [
          0.7709999999999998,
          0,
          -0.05,
          0.0,
          0.0
        ],
        [
          0.7709999999999999,
          1,
          -0.042733112945297025,
          0.0126,
          0.7729337741094059
        ],
        [
          0.771,
          1,
          -0.04273311294529708,
          0.0126,
          0.7729337741094059
        ],
        [
          0.7855125,
          1,
          -0.049989362945297044,
          0.0126,
          0.7729337741094059
        ],
        [
          0.8000249999999999,
          1,
          -0.05724561294529701,
          0.0126,
          0.7729337741094059
        ],
        [
          0.800025,
          2,
          -0.04685852391357703,
          0.80605,
          1.0
        ],
        [
          0.8000250000000001,
          2,
          -0.046858523913577144,
          0.80605,
          1.0
        ],
        [
          1.0,
          2,
          -0.24683352391357705,
          0.80605,
          1.0
        ]
      ],
      "maximum_gain": [
        -0.042733112945297025,
        0.7709999999999999,
        1,
        0.0126,
        0.7729337741094059
      ],
      "continuum_reduction": "payoff decreases in price within each response region"
    }
  },
  "competition_wedge": {
    "L": {
      "minimum": -0.1379999999999998,
      "argmin": 0.6999999999999998,
      "reserve_sides": [
        -0.1379999999999998,
        0.009000000000000008,
        0.009000000000000119
      ],
      "negative_grid_interval": [
        0.56201,
        0.6999999999999998
      ]
    },
    "H": {
      "minimum": -0.07994999999999985,
      "argmin": 0.6999999999999998,
      "reserve_sides": [
        -0.07994999999999985,
        0.022950000000000026,
        0.022949999999999915
      ],
      "negative_grid_interval": [
        0.6200600000000001,
        0.6999999999999998
      ]
    }
  }
}
Continuous heterogeneous-buyer-CARA audit and welfare decomposition | floating_point_audit | pass

code/audit_heterogeneous_buyer_risk_aversion_refinement.py

CONTINUOUS HETEROGENEOUS-CARA CANDIDATE
  (n_L,n_H,pi,kappa): (2,7,0.5,0.01)
  alpha support: [0.369754026773,5.0]
  probing price q: 0.655954391463
  beta(alpha_min): 1.000000000000
  beta(alpha_max): 0.773349949657
  probe mass: 0.171264245296
  no-offer mass: 0.828735754704
  accepted mass: 0.085632122648
  rejected mass: 0.085632122648
QUADRATURE CONVERGENCE: |order 512 - order 256|
  price: 1.271e-10
  alpha_min: 5.160e-09
  probe_mass: 1.521e-09
  h_mean: 2.643e-10
RAW PBE
  analytic single-crossing margin: 0.117221594669
  H on-path rejection margin: 0.195891049930
  top-belief L rejection gap: 0.010712275204
  minimum all-state CE loss at R_H(1): 0.062568604740
  all-state loss minimizer (alpha,b): (5.000000000000,1.000000000000)
COMPLETE CONTINGENT-PLAN D1 AUDIT
  undercut normalized Gamma slope max: -1.472395888332
  undercut endpoint excess over grid minimum: 0.000e+00
  undercut grid-minimizer b range: [1.000000000000,1.000000000000]
  minimum L rejection gap: 0.010712275204
  high-price gain cutoff: 0.812431395260
  high-price threshold slope max: -0.055322517353
  high-price endpoint excess over grid minimum: 0.000e+00
  high-price grid-minimizer b range: [1.000000000000,1.000000000000]
  minimum H rejection gap on gain region: 0.062568604740
PRICE PARTITION
  p < R_L(0)=0.333333333333: both reject
  R_L(0) <= p < q=0.655954391463: only L can mix; D1 b=1 belief rejects
  q <= p <= R_L(1)=0.666666666667: no buyer gain
  R_L(1) < p < R_H(0)=0.750000000000: fixed (L accept,H reject), no gain
  R_H(0) <= p < 0.812431395260: only H can mix; D1 b=1 belief rejects
  0.812431395260 <= p < R_H(1)=0.875000000000: no buyer gain
  p = R_H(1)=0.875000000000: H may mix, no buyer gain
  p > R_H(1)=0.875000000000: both accept, no buyer gain
WELFARE AUDIT
  convention: unit weights; phi_alpha(0)=0, phi_alpha'(0)=1
  normalized buyer change: +0.001353220465
  seller change: -0.000000000000
  late-buyer change: -0.000917314864
  normalized total change: +0.000435905601
  interim buyer CE change: +0.002042533484
  interim summed CE change: +0.001125218620
  material attempt loss: -0.001712642453
  material allocation loss: -0.000967714085
  material total change: -0.002680356538
  alpha-conditional pre-b buyer CE change: +0.001500621167
  alpha-conditional pre-b summed CE change: +0.000583306303
WELFARE QUADRATURE CONVERGENCE: orders (512, 384) vs (256, 192)
  probe_mass: 1.705e-09
  normalized_buyer_change: 7.830e-16
  seller_change: 9.135e-12
  late_buyer_change: 3.804e-16
  normalized_total_change: 9.135e-12
  interim_buyer_ce_change: 8.487e-16
  interim_summed_ce_change: 9.135e-12
  material_attempt_loss: 1.705e-11
  material_allocation_loss: 3.789e-16
  material_total_change: 1.705e-11
  alpha_conditional_exante_buyer_ce_change: 7.999e-16
  alpha_conditional_exante_summed_ce_change: 9.135e-12
Local seller-CARA and no-sale robustness audit | floating_point_audit | pass

code/audit_heterogeneous_buyer_ra_seller_ra_nosale_local.py

BASELINE REPLICATION
  alpha_min=0.369754042957
  price=0.655954391862
  probe_mass=0.171264250067
FIXED-SUPPORT IFT
  d[CE_L(pool(q))-q]/dq=-0.838964674788
ONE-DIMENSIONAL LOCAL CONTINUATIONS
  seller RA only (alpha_min,q,probe_mass)=(0.369754042957,0.652879899546,0.179475983135)
  standing value only (alpha_min,q,probe_mass)=(0.369754042957,0.656004009746,0.171166421031)
LOCAL SELLER-RA / STANDING-VALUE AUDIT
  seller_gamma=0.1000
  standing_value=0.0500
  alpha_min=0.369754042957
  price=0.652933208672
  beta(alpha_min)=0.946934427605
  beta(alpha_max)=0.768455661463
  probe_mass=0.179377508408
  no_sale_probability_L=0.000125000000
  no_sale_probability_H=0.000000000039
RAW MARGINS
  sorting_violation=0.000000000000
  h_rejection_margin=0.197516627148
  top_l_rejection_gap=0.010987773330
  state_separation_margin=0.085044054905
  knockout_ce_loss=0.062642969764
  knockout_price=0.874387564050
D1 MARGINS
  l_endpoint_excess=0.034314526151
  l_minimizer_b_min=0.946666666667
  l_minimizer_b_max=0.947777777778
  l_minimizer_alpha_min=0.369754042957
  l_minimizer_alpha_max=0.369754042957
  l_rejection_margin=0.008435313566
  h_gain_cutoff=0.811744594285
  h_endpoint_excess=0.000000000000
  h_minimizer_b_min=1.000000000000
  h_minimizer_b_max=1.000000000000
  h_minimizer_alpha_min=5.000000000000
  h_minimizer_alpha_max=5.000000000000
  h_rejection_margin=0.062642979764
Active post-bidding bargaining raw-PBE diagnostic | diagnostic | pass

code/audit_active_postround_bargaining_pbe.py

{
  "status": "raw-pbe-dense-audit-not-refinement",
  "primitives": {
    "seller_prior_H": 0.5,
    "fallback_values": [
      0.2,
      0.6
    ],
    "proposal_costs": {
      "buyer": 0.003,
      "seller": 0.002
    },
    "total_bidders": 3,
    "values": "iid U[0,1]"
  },
  "selected_prices": {
    "low_clock_pool_demand_R": 0.7,
    "active_buyer_counter_P": 0.5,
    "clock_regime_switch_y": 0.3,
    "separating_demands": [
      0.6,
      0.8
    ]
  },
  "buyer_cutoffs_after_R": {
    "exit_to_counter": 0.506,
    "counter_to_accept": 0.8939999999999999
  },
  "buyer_cutoff_after_unused_low_clock_demand": 0.503,
  "seller_clock_cutoffs": {
    "L": 0.5706980566038298,
    "H": 0.7789750156054991
  },
  "low_clock_min_margins": {
    "pool_over_outside": {
      "L": 0.14000000000000007,
      "H": 0.008599999999999941
    },
    "pool_over_all_unused_prices": {
      "L": 0.01880900000000002,
      "H": 0.010599999999999943
    }
  },
  "separating_region_checks": {
    "selected_demand_minus_dense_price_max": {
      "L": 0.0,
      "H": 0.0
    },
    "demand_over_outside_away_from_cutoffs": {
      "L": 4.2806226360214694e-05,
      "H": 6.387634105031736e-05
    },
    "accept_x_over_all_demands_away_from_cutoffs": {
      "L": 1.5062982379410172e-05,
      "H": 1.5823903818934504e-05
    }
  },
  "post_P_recounter_margins": {
    "L_accept_P": 0.299,
    "H_exit": 0.0020000000000000018
  },
  "top_completion": {
    "cheapest_effective_expenditure": 1.001,
    "margin_above_value_support": 0.0009999999999998899,
    "history_rule": "P is special only as the first buyer response to R or to an unused low-clock initial demand; the same numeric P after a later/top-completion history is nonspecial"
  },
  "truthful_clock_sign_check": {
    "minimum_payoff_when_x_below_b": 0.0,
    "maximum_payoff_when_x_above_b": 0.0,
    "max_absolute_violation": 0.0
  },
  "positive_probability_low_clock_outcomes": {
    "low_clock_history": 0.21600000000000003,
    "active_buyer_counter": 0.10475999999999996,
    "counter_then_L_sale": 0.05237999999999998,
    "counter_then_H_breakdown": 0.05237999999999998,
    "accept_R": 0.028620000000000024,
    "exit_after_R": 0.08262000000000004
  },
  "classification": {
    "isolated_bidding_plus_postround_game": "raw pure PBE",
    "active_counter_on_path": true,
    "early_preemption_coupling": false,
    "interim_D1": "not established",
    "global_or_unique": false
  }
}
Coverage complete: all 22 executed checks have an explanatory home above.
Fresh results: code/reproduction_outputs/workbook-20261013T111656.819995Z

8. Inspect or extend the evidence

The downloadable notebook contains readable Python source cells, grouped with the calculations they support. Shared routines appear once and are linked from later uses. Long source files are split at Python definitions. Figure sources are regenerated and checked against recorded hashes, so their raw files need not be included in the download. Existing claim identifiers and some script docstrings retain the long manuscript's labels; the section references in this workbook refer to the revised pair.

To vary a calibration, edit its Python source cells in the notebook, rerun those cells, and rerun the calculation. A changed calibration may fail the maintained equilibrium or refinement conditions. New outputs should be interpreted using those conditions rather than compared only by their welfare sign. This workbook reproduces the paper's internal numerical exercises; empirical figures quoted from other studies remain evidence from those cited sources.

The notebook follows the explanations and results on this page. Its source cells reproduce the maintained Python routines exactly; the release checks both the original scripts and a complete standalone notebook execution.

Saved execution with reproducible source and full calculation records. See the companion papers for assumptions and analytical proofs.