Skip to content

DominikPeters/ABCVotingLean

Repository files navigation

Formalizing the Theory of Approval-Based Committee Voting in Lean 4

This repository contains a formalization of the theory of approval-based committee voting (ABC voting) in the Lean 4 proof assistant. It includes definitions and proofs of various voting rules, axioms, and their relationships.

Axioms

  • JR, PJR, EJR, EJR+, FJR, FPJR
  • Priceability, weak and Lindahl priceability
  • Core, disjoint core, sub-core
  • Pareto-optimality
  • Strategyproofness
  • Committee monotonicity
  • Implications between axioms (e.g., Core implies FJR, EJR+ implies EJR, Priceability implies PJR+)

Voting Rules

  • Proportional Approval Voting (PAV)
    • satisfies EJR+
    • satisfies disjoint core
    • satisfies core up to k=7
    • may fail core for k=8
    • fails priceability
    • satisfies Pareto-optimality
  • Method of Equal Shares (MES), uncompleted
    • satisfies EJR+
  • Sequential Phragmén
    • satisfies priceability, therefore PJR+
    • satisfies committee monotonicity
  • Greedy Cohesive Rule (GCR)
    • satisfies FJR, therefore FJR always exists

Impossibility Results

Future Work

  • Formalize various counterexamples (MES failing core; Phragmen failing EJR, PO-failures for MES and Phragmen)
  • GJCR?
  • Stuff from Janson (e.g. monotonicity properties)
  • perhaps: PAV intersects core for k = 8
  • Proportionality degree (definition, EJR => 1/2, l-1 => EJR, extreme stretch goal: prop degree of Phragmen, and seqPav results)
  • CC and utilitarian approximations?
  • Approximations to the core, disjoint core => 2-utility approximation, extreme stretch goal: show 32-Kamesh result
  • Peters-Skowron welfarism impossibilities, Pigou-Dalton lower bound on core approximation
  • log k core approximation by MES

About

Approval-based committee voting results in Lean

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages