Skip to content

Proving incentive (in)compatibility for our auction implementation #44

@davidrpugh

Description

@davidrpugh

The incentive compatibility (or lack thereof) of a particular auction mechanism is a critical property of a particular auction mechanism. Whilst certain classes of mechanisms are provably incentive compatible, in many such cases computing the optimal, incentive compatible allocation is an NP-hard problem. Common "greedy" heuristics that are applied to solve these auction problems in practice often result in allocations that are provably not incentive compatible.

Are there any conditions for which we can guarantee that the approximate result computed using a particular heuristic is incentive compatible? Quoting @bherd-rb from #39 ...

the author of this paper -- are sufficient for truthfulness for both efficient and non-efficient allocations in combinatorial auctions. They might be useful for showing incentive compatibility at some point. The summary below is taken from this report.

  • Exactness postulates that a single minded bidder receives exactly the set of goods it
    desires or nothing. In single-item auctions this means that the bidder will get the item it
    bidded for or nothing.
  • Participation requests that unsatisfied bidders pay zero and their utility is zero. In other
    words, a non-participating or non-winning bidder neither pays nor receives any money.
  • Monotonicity requires that if a bidder increases its bid (decreases in reverse auctions) the
    bidder still wins the auction.
  • Criticality claims that each winning bidder pays (receives in reverse auctions) the lowest
    value it could have declared and still be allocated the good it requested.

Formal verification of contracts and algorithms, such as auctions and markets, that process them is of huge practical relevance. The lack of formal verification of contracts developed using Ethereum's Solidity contract language has already led to the theft of millions of dollars and continues to lead to buggy contracts that limit the progress of development of Blockchain-based smart contracting solutions.

@bherd-rb As a long term project goal, could we use formal verification techniques to prove important properties, such as incentive compatibility, of the auction mechanisms that we are developing?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions