Encouraging Effective Contract Specifications
Todd Schiller, Kellen Donohue, Forrest Coward, Michael Ernst University of Washington
Contract.Requires(amount > 0.0); Contract.Ensures(Balance == Contract.OldValue(Balance) + amount); Contract.Invariant(Balance > 0.0);