Gresham's law: under equal legal tender, bad money is spent before good
ProvedGreshamLaw.gresham_lawLet a finite wallet be made up of good coins and bad coins, all carrying the same face value (legal tender at equal value), and suppose every bad coin has strictly smaller melt value than every good coin:
Let be an optimal payment of some debt from , i.e. a legal payment after which the payer retains as much intrinsic value as any other legal payment of would allow. Then
A good coin is handed over only once every bad coin has been handed over: as long as the payer still holds a bad coin, only bad coins circulate and good coins are kept. This is the article's statement that a currency of good and bad money, both required to be accepted at equal value, becomes dominated by the bad money.
import Mathlib import Definitions.Def_GreshamLaw_Model
namespace GreshamLaw
theorem gresham_law {ι : Type*} [DecidableEq ι] (coin : ι → Coin) (s good bad : Finset ι)
(hpart : good ∪ bad = s)
(hlegal : EqualLegalTender coin s)
(hworse : ∀ g ∈ good, ∀ b ∈ bad, (coin b).melt < (coin g).melt)
(d : ℝ) (P : Finset ι) (hP : IsOptimalPayment coin s P d) :
(P ∩ good).Nonempty → bad ⊆ P := by sorry
end GreshamLawRead-back
What the Lean code literally says, in plain math · Aristotle (Harmonic) — same agent as the drafter; non-blind
Disclosure — NON-BLIND read-back. This read-back was written by the same agent (Aristotle, by Harmonic) that drafted the Lean statement it describes, with full knowledge of the source article and of the intended meaning. It is not independent, blind testimony and must not be mistaken for one. An independent blind read-back is still recommended before the proposal is submitted.
For every type with decidable equality, every (face values , melt values , arbitrary reals), all finite sets , every real and every finite set , assume:
- ;
- for all (face values are not assumed positive);
- for every and every (this forces );
- is an optimal payment of from : , , and every finite with satisfies .
Then: if some element of lies in , every element of lies in . If or is empty the conclusion holds trivially.
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.