diff options
Diffstat (limited to 'program')
-rw-r--r-- | program/exp.prim | 3 | ||||
-rw-r--r-- | program/exp.pty | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/program/exp.prim b/program/exp.prim new file mode 100644 index 0000000..3c07ec1 --- /dev/null +++ b/program/exp.prim @@ -0,0 +1,3 @@ +let add (x : Nat) (y : Nat) : Nat = foldcase x by {Z u => y; S k => ~(S k)} in +let mul (x : Nat) (y : Nat) : Nat = foldcase x by {Z u => 0; S k => add y k} in +\x, y => foldcase y by {Z u => 1; S k => mul x k} diff --git a/program/exp.pty b/program/exp.pty new file mode 100644 index 0000000..9e7f5e3 --- /dev/null +++ b/program/exp.pty @@ -0,0 +1 @@ +Nat -> Nat -> Nat |