summaryrefslogtreecommitdiff
path: root/Jennisys/Jennisys/examples/oopsla12/IntSet.jen
diff options
context:
space:
mode:
Diffstat (limited to 'Jennisys/Jennisys/examples/oopsla12/IntSet.jen')
-rw-r--r--Jennisys/Jennisys/examples/oopsla12/IntSet.jen30
1 files changed, 0 insertions, 30 deletions
diff --git a/Jennisys/Jennisys/examples/oopsla12/IntSet.jen b/Jennisys/Jennisys/examples/oopsla12/IntSet.jen
deleted file mode 100644
index 4800371e..00000000
--- a/Jennisys/Jennisys/examples/oopsla12/IntSet.jen
+++ /dev/null
@@ -1,30 +0,0 @@
-interface IntSet {
- var elems: set[int]
-
- constructor Singleton(x: int)
- elems := {x}
-
- constructor Dupleton(x: int, y: int)
- requires x != y
- elems := {x y}
-
- method Find(x: int) returns (ret: bool)
- ret := x in elems
-}
-
-datamodel IntSet {
- var data: int
- var left: IntSet
- var right: IntSet
-
- frame left * right
-
- invariant
- elems = {data} +
- (left != null ? left.elems : {}) +
- (right != null ? right.elems : {})
- left != null ==>
- (forall e :: e in left.elems ==> e < data)
- right != null ==>
- (forall e :: e in right.elems ==> data < e)
-} \ No newline at end of file