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.
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"],
])| Execution | Recorded value |
|---|---|
| Completed (UTC) | 2026-10-13T11:18:54.464622+00:00 |
| Checks passed | 22 / 22 |
| Python | 3.12.10 |
| Numerical packages | numpy 2.3.5; python-flint 0.9.0 |
| Compute time | 116.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'])| Quantity | Exact fraction | Decimal |
|---|---|---|
| C_L(0) | 59/125 | 0.472000000000 |
| Delta_D | 70753/1093750 | 0.064688457143 |
| bar_D_H | 114503/1093750 | 0.104688457143 |
| bar_D_L | 1/25 | 0.040000000000 |
| lower_type_condition | 64/125 | 0.512000000000 |
| probing_window_upper | 92628/546875 | 0.169376914286 |
| w_H(1)=C_H(1) | 468878/546875 | 0.857376914286 |
| w_L(1)=C_L(1) | 86/125 | 0.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 calculation | Concentrated values | Upper-tail mixture |
|---|---|---|
| Probing price | 0.510980593208 | 0.515613314494 |
| Knockout price | 0.554378791664 | 0.640626332049 |
| Rejected attempt | 0.056313655095 | 0.066739617301 |
| Completed early-sale probability (denominator) | 0.154353208514 | 0.068388497142 |
| Excluded late-buyer surplus (unconditional numerator) | 0.002946632683 | 0.002523097711 |
| Excluded late-buyer surplus per completed early sale | 0.019090193923 | 0.036893597842 |
| Avoided offer costs | 0.004213337272 | 0.002702562289 |
| Allocative gain | 0.003883522055 | 0.002757306596 |
| Forgone resolution gains | 0.011624510881 | 0.005156517170 |
| Welfare effect of a ban | -0.003527651553 | 0.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'])| Calibration | Certified lower bound | Certified upper bound |
|---|---|---|
| symmetric | -0.003662070 | -0.003393114 |
| upper_tail | 0.000261675 | 0.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 calculation | Certified lower bound | Certified upper bound |
|---|---|---|
| Completed early-sale probability | 0.185851773 | 0.185851774 |
| Early-price numerator | 0.127603512 | 0.127603513 |
| Early conditional mean price | 0.686587543 | 0.686587544 |
| Completed bidding-round sale probability | 0.771480424 | 0.771480425 |
| Bidding-round price numerator | 0.442925192 | 0.442925193 |
| Bidding-round conditional mean price | 0.574123695 | 0.574123696 |
| Conditional mean-price difference | 0.112463847 | 0.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 prior | Low-state sale-set effect | High-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 certificate | Certified lower bound | Certified upper bound |
|---|---|---|
| Price | 0.655960451 | 0.655960452 |
| High-risk-aversion value cutoff | 0.811699930 | 0.811699931 |
| High risk-aversion coefficient | 2.788027979 | 2.788027981 |
| Cutoff equation: lower-endpoint residual | -0.000000000000000365316 | -0.000000000000000365315 |
| Cutoff equation: upper-endpoint residual | 0.000000000000000065903 | 0.000000000000000065904 |
| Risk-aversion equation: lower-endpoint residual | -0.000000000022542000000 | -0.000000000021458000000 |
| Risk-aversion equation: upper-endpoint residual | 0.000000000021443000000 | 0.000000000022557000000 |
| Risk-aversion equation derivative | 0.216717793 | 0.216717807 |
| Cutoff equation derivative | 0.107804921 | 0.107804922 |
| Global match-value single-crossing margin | 0.257441713 | 0.257441714 |
| Low-curvature waiter-order margin | 0.289026412 | 0.289026413 |
| High-curvature waiter derivative numerator upper bound | -0.173156800 | -0.173156799 |
| Minimum normalized cross-curvature undercut gap | 7.824085724 | 7.824085725 |
| Low-state top-value rejection margin | 0.010706215 | 0.010706216 |
| High-state on-path rejection margin | 0.195440211 | 0.195440212 |
| High-price cutoff | 0.791626453 | 0.791626467 |
| High-price rejection margin | 0.083373533 | 0.083373547 |
| Low-curvature knockout moment gap | 0.053239653 | 0.053239654 |
| High-curvature knockout moment gap | 2.378478719 | 2.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.