theorem
proved
was
show as:
view math explainer →
open explainer
Generate a durable explainer page for this declaration.
open lean source
IndisputableMonolith.GameTheory.MechanismDesignFromSigma on GitHub at line 12.
browse module
All declarations in this module, on Recognition.
explainer page
depends on
-
all -
all -
of -
or -
Constants -
Agent -
all -
has -
of -
A -
cost -
cost -
identity -
is -
of -
from -
is -
of -
for -
is -
winner -
of -
A -
is -
Cost -
Status -
A -
all -
total -
and -
that -
total -
identity
used by
-
off_target_not_ideal -
main_resolution -
homogeneous_minimizes_cost -
ParticleHorizon -
standardInflation -
ratio_more_robust_than_absolute -
T001_certificate -
complex_exp_mul_rearrange -
just_no_debt -
aggCoeff_rowMoves_aux_theorem -
eq_iff_toNat_eq -
Generator -
bilinear_family_reduction -
rcl_without_gate -
nonunity_positive_entropy -
l4DerivableCert_inhabited -
truthful_is_nash -
impulse_pinatubo_pos -
VacuumPersistence -
xi_derived -
depolarizing -
down_generation_ordering -
pi_transcendence -
modal_T_weak -
integral_radial_skew_identity -
phi_pow_residue_mu_bounds -
predicted_residue_tau_bounds -
Resolution -
loopholeFreeExperiment -
ryuTakayanagi -
ledger_explains_nonlocality -
SharedLedgerEntry -
quadratic_from_symmetry -
riemann_antisymmetric_last_two -
phi_pow_residue_mu_bounds -
predicted_residue_tau_bounds -
bec_ground_state_occupation -
CheegerMullerWitness
formal source
9file defined a stub `vcg_sigma_cost` and proved the
10"truth-telling-is-dominant" lemma only on the trivial branch
11`others_value = 0`, where every report gave `0 = 0`. The "σ-conservation"
12theorem was `agents.sum = agents.sum`. None of that encoded a mechanism.
13
14This file builds a real single-item VCG auction with `n` agents,
15defines the actual payment rule (winner pays the second-highest bid;
16losers pay zero), and proves **dominant-strategy incentive compatibility
17(DSIC)** over the full strategy space: for every agent, truthful
18reporting weakly dominates every other report, regardless of others'
19bids.
20
21## The auction
22
23There are `n ≥ 2` agents indexed by `Fin n`. Each agent `i` has a
24private valuation `v_i : ℝ≥0` (we use `ℝ` with explicit non-negativity
25where needed, to keep the algebra clean). Each agent submits a bid
26`b_i : ℝ` (allowed to differ from `v_i`).
27
28**Allocation rule.** Let `i* := argmax_i b_i` (ties broken by
29lowest index). The item is allocated to `i*`.
30
31**VCG payment rule.**
32
33- The winner `i*` pays `m := max_{j ≠ i*} b_j`, the highest competing bid.
34- All non-winners pay `0`.
35
36This is exactly the externality the winner imposes on the
37displaced agent: had `i*` been absent, the runner-up would have
38won with their own bid `m` (and zero payment in any winner-pays-zero
39counterfactual; this is the "Clarke pivot" formulation).
40
41**Utility.** Agent `i` with valuation `v_i` and payment `p_i` after
42the auction has utility: