summaryrefslogtreecommitdiff
path: root/Test/dafny0/MultiSets.dfy
diff options
context:
space:
mode:
authorGravatar Rustan Leino <unknown>2013-07-16 19:11:31 -0700
committerGravatar Rustan Leino <unknown>2013-07-16 19:11:31 -0700
commit8b69f963879696d40da0a1b845988e17fe9d29d2 (patch)
tree0638858c44528d9e14ff0b4d4d9db34c0fbbdb72 /Test/dafny0/MultiSets.dfy
parentb0bb7bf96406d8695d5ec2377d9ce2b2acba44f0 (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.dfy19
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
+ }
+}