summaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/compiler/check/abstract-operations/Nat.gf13
-rw-r--r--testsuite/compiler/check/abstract-operations/abstract-operations.gfs5
-rw-r--r--testsuite/compiler/check/abstract-operations/abstract-operations.gfs.gold13
3 files changed, 31 insertions, 0 deletions
diff --git a/testsuite/compiler/check/abstract-operations/Nat.gf b/testsuite/compiler/check/abstract-operations/Nat.gf
new file mode 100644
index 000000000..09dc0809a
--- /dev/null
+++ b/testsuite/compiler/check/abstract-operations/Nat.gf
@@ -0,0 +1,13 @@
+abstract Nat = {
+
+cat Nat ;
+data zero : Nat ;
+ succ : Nat -> Nat ;
+
+oper plus : Nat -> Nat -> Nat ;
+def plus zero y = y ;
+ plus (succ x) y = succ (plus x y) ;
+
+oper twice : Nat -> Nat = \x -> plus x x ;
+
+}
diff --git a/testsuite/compiler/check/abstract-operations/abstract-operations.gfs b/testsuite/compiler/check/abstract-operations/abstract-operations.gfs
new file mode 100644
index 000000000..da5cb71fe
--- /dev/null
+++ b/testsuite/compiler/check/abstract-operations/abstract-operations.gfs
@@ -0,0 +1,5 @@
+-- here we test that the abstract operations are not used for proof search
+
+i testsuite\compiler\check\abstract-operations\Nat.gf
+gt -cat=Nat -number=10 -depth=10
+pt -compute (twice (succ zero))
diff --git a/testsuite/compiler/check/abstract-operations/abstract-operations.gfs.gold b/testsuite/compiler/check/abstract-operations/abstract-operations.gfs.gold
new file mode 100644
index 000000000..c0a36cff0
--- /dev/null
+++ b/testsuite/compiler/check/abstract-operations/abstract-operations.gfs.gold
@@ -0,0 +1,13 @@
+zero
+succ zero
+succ (succ zero)
+succ (succ (succ zero))
+succ (succ (succ (succ zero)))
+succ (succ (succ (succ (succ zero))))
+succ (succ (succ (succ (succ (succ zero)))))
+succ (succ (succ (succ (succ (succ (succ zero))))))
+succ (succ (succ (succ (succ (succ (succ (succ zero)))))))
+succ (succ (succ (succ (succ (succ (succ (succ (succ zero))))))))
+
+succ (succ zero)
+