  I prove an envelope theorem with a converse: the envelope formula is
equivalent to a first-order condition. Like Milgrom and Segal's (2002) envelope
theorem, my result requires no structure on the choice set. I use the converse
envelope theorem to extend to general outcomes and preferences the canonical
result in mechanism design that any increasing allocation is implementable, and
apply this to selling information.
