diff options
author | Rustan Leino <unknown> | 2013-07-16 19:11:31 -0700 |
---|---|---|
committer | Rustan Leino <unknown> | 2013-07-16 19:11:31 -0700 |
commit | 8b69f963879696d40da0a1b845988e17fe9d29d2 (patch) | |
tree | 0638858c44528d9e14ff0b4d4d9db34c0fbbdb72 /Test/dafny0/MultiSets.dfy | |
parent | b0bb7bf96406d8695d5ec2377d9ce2b2acba44f0 (diff) |
Axioms that relate (multi)set cardinality with (multi)set difference.
Removed three redundant multiset axioms.
Diffstat (limited to 'Test/dafny0/MultiSets.dfy')
-rw-r--r-- | Test/dafny0/MultiSets.dfy | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Test/dafny0/MultiSets.dfy b/Test/dafny0/MultiSets.dfy index ff03bb7a..b9817ac9 100644 --- a/Test/dafny0/MultiSets.dfy +++ b/Test/dafny0/MultiSets.dfy @@ -248,3 +248,22 @@ method LetSuchThatExpression(s: multiset<int>) ensures |s| != 0 ==> var x :| x in s; true;
{
}
+
+// ----------- things that at one point were axioms -------------
+
+method MultiSetProperty0(s: multiset<object>, t: multiset<object>, p: object)
+{
+ if 0 < s[p] {
+ assert 0 < (s + t)[p];
+ }
+ if 0 < t[p] {
+ assert 0 < (s + t)[p];
+ }
+ if * {
+ assert s + t - s == t;
+ } else if * {
+ assert s + t - t == s;
+ } else {
+ assert s + (t - s) == t; // error
+ }
+}
|