diff options
Diffstat (limited to 'testsuite')
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)
+
|
