PyTESK Models Contract specification: obligations between caller and callee @Requires(Arguments.sum > 0) @Ensures(If(Pre.balance - Args.sum < -Self.limit).Then(Result == 0)) @Ensures(If(Pre.balance - Args.sum >= -Self.limit).Then(Result == Args.sum)) @Ensures(Pre.balance - Result == Self.balance) @Save(balance = Self.balance) def withdraw(self, sum): … 10.05.201213Information Technologies and Management, Almaty