Prove2Me
Navigate
DiscoverFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

A terminal state with impossible rejections is applicant-optimal

Proved
GS62CollegeAdmissions.ExactCollegeBatchedProcedure.sourceAssignmentFromState_applicant_optimal_of_terminated_rejections

by nkgarg · Sep 15, 2026 · Mathlib c5ea003 (Lean v4.30.0)

aml-gs62-stable-marriage-20260915college-admissionsgame-theorystable-matching

Let applicants AAA and colleges CCC be finite with decidable equality, quotas q:C→Nq:C\to\mathbb Nq:C→N, and real values that are injective within each participant's ranking and never zero. A pair is eligible when both values are positive. In a state of accumulated applications HcH_cHc​, college ccc retains its best quota-many applicants. Suppose its waiting lists are disjoint, every application is eligible, and each applicant weakly prefers every previously tried college to every still-untried eligible college. Suppose no unassigned applicant has an untried eligible college. Finally, suppose that if a∈Hca\in H_ca∈Hc​ but aaa is not retained by ccc, no stable assignment matches aaa to ccc.

The assignment μ\muμ formed from these waiting lists is stable, and

∀ν stable,∀a,Ua(ν(a))≤Ua(μ(a)).\forall\nu\text{ stable},\quad\forall a,\qquad U_a(\nu(a))\le U_a(\mu(a)).∀ν stable,∀a,Ua​(ν(a))≤Ua​(μ(a)).

Here stability includes quotas, individual rationality and absence of replacement or vacancy blocks, and Ua(⊥)=0U_a(\bot)=0Ua​(⊥)=0. The state need only satisfy the stated conditions; it need not be supplied with an algorithmic history.

Preamble
import Mathlib.Algebra.BigOperators.Ring.Finset
import Mathlib.Algebra.Order.BigOperators.Group.Finset
import Mathlib.Data.Fin.VecNotation
import Mathlib.Data.Finset.Basic
import Mathlib.Data.Finset.Card
import Mathlib.Data.Finset.Lattice.Basic
import Mathlib.Data.Finset.Max
import Mathlib.Data.Finset.Sort
import Mathlib.Data.Fintype.Basic
import Mathlib.Data.Fintype.Card
import Mathlib.Data.Fintype.EquivFin
import Mathlib.Data.Fintype.Option
import Mathlib.Data.Fintype.Perm
import Mathlib.Data.Fintype.Sigma
import Mathlib.Data.Fintype.Sort
import Mathlib.Data.Prod.Lex
import Mathlib.Data.Real.Basic
import Mathlib.Tactic
import Mathlib.Tactic.FinCases
import Mathlib.Tactic.Linarith
import Definitions.Def_AMLGS62_AppliedModelingLib_Markets_Matching_Basic
import Definitions.Def_AMLGS62_AppliedModelingLib_Markets_Matching_DeferredAcceptance
import Definitions.Def_AMLGS62_AppliedModelingLib_Markets_Matching_ManyToOne
import Definitions.Def_AMLGS62_GS62CollegeAdmissions_MainTheorems
import Definitions.Def_AMLGS62Rest_AppliedModelingLib_Foundations_Math_FiniteChoice
import Definitions.Def_AMLGS62Rest_AppliedModelingLib_Markets_Matching_ManyToOne
import Definitions.Def_AMLGS62Rest_GS62CollegeAdmissions_ExactCollegeBatchedProcedure
import Definitions.Def_AMLGS62Rest_GS62CollegeAdmissions_PaperInterface
import Definitions.Def_AMLGS62Rest_GS62CollegeAdmissions_SourceCompletion
import Definitions.Def_AMLGS62Rest_GS62CollegeAdmissions_SourceModel

open GS62CollegeAdmissions
open GS62CollegeAdmissions.ExactCollegeBatchedProcedure

open AppliedModelingLib.Matching
open AppliedModelingLib.FiniteChoice

variable {Applicants Colleges : Type*}
  [Fintype Applicants] [Fintype Colleges]
  [DecidableEq Applicants] [DecidableEq Colleges]

Formal statement
theorem GS62CollegeAdmissions.ExactCollegeBatchedProcedure.sourceAssignmentFromState_applicant_optimal_of_terminated_rejections
    (quota : Colleges -> Nat)
    (val_applicant : Applicants -> Colleges -> Real)
    (val_college : Colleges -> Applicants -> Real)
    (hdomain : gs_strict_college_admissions_domain
      val_applicant val_college)
    (s : SourceWaitingListState Applicants Colleges)
    (hinv : SourceStateInvariant quota val_applicant val_college
      hdomain.2.1 s)
    (hterm : ¬ (exists a, SourceActive quota val_applicant val_college
      hdomain.2.1 s a))
    (hrejected : SourceRejectedPairImpossible quota val_applicant val_college
      hdomain.2.1 s) :
    gs_applicant_optimal_college_assignment quota val_applicant val_college
      (sourceAssignmentFromState quota val_applicant val_college
        hdomain.2.1 s hinv) := by sorry
Source
https://github.com/nikhgarg/AppliedModelingLib/blob/e952266be81e96bbeecea6af83d639af324a4438/papers/GS62CollegeAdmissions/ExactCollegeBatchedProcedure.lean#L1401-L1468

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me