Documentation

EconCSLib.SocialChoice.FairDivision.Basic

EconCSLib.SocialChoice.FairDivision.Basic #

Generic fair-division vocabulary as a structured special case of social choice.

This file introduces:

@[reducible, inline]
abbrev SocialChoice.FairDivision.Allocation (N : Type u_1) (S : Type u_2) :
Type (max u_1 u_2)

A fair-division allocation assigns each agent a share.

Equations
Instances For
    structure SocialChoice.FairDivision.Instance (N : Type u_1) (R : Type u_2) (S : Type u_3) :
    Type (max (max u_1 u_2) u_3)

    A fully general fair-division instance.

    This allows preferences over complete allocations, so it can express externalities or other global allocation comparisons.

    • resource : R

      Resource-side data for the instance.

    • feasible : Allocation N SProp

      Feasible allocations for the given resource data.

    • pref : NPref (Allocation N S)

      Each agent's preference over complete allocations.

    Instances For
      structure SocialChoice.FairDivision.ShareInstance (N : Type u_1) (R : Type u_2) (S : Type u_3) :
      Type (max (max u_1 u_2) u_3)

      A no-externality fair-division instance where each agent ranks only the share they personally receive.

      • resource : R

        Resource-side data for the instance.

      • feasible : Allocation N SProp

        Feasible allocations for the given resource data.

      • sharePref : NPref S

        Each agent's preference over individual shares.

      Instances For
        def SocialChoice.FairDivision.ShareInstance.toInstance {N : Type u_1} {R : Type u_2} {S : Type u_3} (I : ShareInstance N R S) :
        Instance N R S

        Lift a no-externality fair-division instance to a fully general allocation-preference instance by comparing allocations pointwise through the share assigned to the evaluating agent.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def SocialChoice.FairDivision.SolutionConcept (N : Type u_1) (R : Type u_2) (S : Type u_3) :
          Type (max (max (max (max u_3 u_2) u_1) u_3) u_1)

          A fair-division solution concept is a predicate selecting acceptable allocations relative to a fully general instance.

          Equations
          Instances For
            def SocialChoice.FairDivision.Rule (N : Type u_1) (R : Type u_2) (S : Type u_3) :
            Type (max (max (max u_3 u_2) u_1) u_1 u_3)

            A fair-division rule returns a feasible allocation for every instance.

            Equations
            Instances For