summaryrefslogtreecommitdiff
path: root/impl/systems/test.eqns
diff options
context:
space:
mode:
authorCarlo Zancanaro <carlo@pc-4w14-0.cs.usyd.edu.au>2012-10-15 17:11:14 +1100
committerCarlo Zancanaro <carlo@pc-4w14-0.cs.usyd.edu.au>2012-10-15 17:11:14 +1100
commit697c1c0cd3815eee72b3eedb874fe0e044a69432 (patch)
tree060ce9577a9651cbcb2f11c6444bc649efc4a468 /impl/systems/test.eqns
parentbe1de4be954c80875ad4108e0a33e8e131b2f2c0 (diff)
Some bug fixes for the solver.
Still doesn't work in clang, though.
Diffstat (limited to 'impl/systems/test.eqns')
-rw-r--r--impl/systems/test.eqns20
1 files changed, 16 insertions, 4 deletions
diff --git a/impl/systems/test.eqns b/impl/systems/test.eqns
index cc554d5..fb23f1e 100644
--- a/impl/systems/test.eqns
+++ b/impl/systems/test.eqns
@@ -1,4 +1,16 @@
-xup = max(0, min(xup + 1, 9 + 1))
-yup = max(0, min(xup + yup, 9 + yup))
-xlow = max(0, xlow-1)
-ylow = max(0, ylow + xlow)
+i-4[0] = max(-inf, 0)
+neg-i4[0] = max(-inf, 0)
+neg-i1-pre = max(-inf, guard(add(min(neg-i4[0], inf), min(i-4[0], inf)), 0, neg-i4[0]), guard(add(min(neg-i2-pre, inf), min(i-2-pre, inf)), 0, neg-i2-pre))
+i-1-pre = max(-inf, guard(add(min(neg-i4[0], inf), min(i-4[0], inf)), 0, i-4[0]), guard(add(min(neg-i2-pre, inf), min(i-2-pre, inf)), 0, i-2-pre))
+neg-i3-pre = max(-inf, guard(add(min(neg-i1-pre, inf), min(i-1-pre, 2)), 0, neg-i1-pre))
+i-3-pre = max(-inf, guard(add(min(neg-i1-pre, inf), min(i-1-pre, 2)), 0, min(2, i-1-pre)))
+neg-i0-pre = max(-inf, guard(add(min(neg-i1-pre, -3), min(i-1-pre, inf)), 0, min(-3, neg-i1-pre)))
+i-0-pre = max(-inf, guard(add(min(neg-i1-pre, -3), min(i-1-pre, inf)), 0, i-1-pre))
+i-3[0] = max(-inf, add(0, i-3-pre))
+neg-i3[0] = max(-inf, add(0, neg-i3-pre))
+neg-i2-pre = max(-inf, guard(add(min(neg-i3[0], inf), min(i-3[0], inf)), 0, neg-i3[0]))
+i-2-pre = max(-inf, guard(add(min(neg-i3[0], inf), min(i-3[0], inf)), 0, i-3[0]))
+x = max(-inf, 0)
+y = max(-inf, x, z)
+z = max(-inf, y)
+