diff options
author | Braxton Hall | 2022-10-24 07:06:33 +0000 |
---|---|---|
committer | GitHub | 2022-10-24 07:06:33 +0000 |
commit | bb4dd5b33e782d2c385c3393af783a8dd36770c4 (patch) | |
tree | 0fba8615c9c3f8f9de3853f074b7bc83fbf14008 /entries/lizard-business/fib.maude | |
parent | 15c8967ec8074f3c7272ac7107847e3bb4539e99 (diff) | |
parent | dcf99fd7ebf54474ea6d81ced6e00c28fba614fa (diff) |
Merge pull request #18 from lizard-business/maude-ats
add maude & ATS
Diffstat (limited to 'entries/lizard-business/fib.maude')
-rw-r--r-- | entries/lizard-business/fib.maude | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/entries/lizard-business/fib.maude b/entries/lizard-business/fib.maude new file mode 100644 index 0000000..20bc428 --- /dev/null +++ b/entries/lizard-business/fib.maude @@ -0,0 +1,27 @@ +smod FIB is + pr LIST{Nat} . + + vars M N : Nat . + var Ns : List{Nat} . + + rl [start]: nil => 0 1 . + rl [next]: Ns M N => Ns M N (M + N) . + rl [drop] : Ns N => N . + + strats fib fibgo : Nat @ List{Nat} . + sd fib(N) := start ; fibgo(N) . + sd fibgo(0) := top(drop) . + sd fibgo(s(N)) := top(next) ; fibgo(N) . +endsm + +***( + Maude> srew nil using fib(10) . + srewrite in FIB : nil using fib(10) . + + Solution 1 + rewrites: 8330 in 12ms cpu (12ms real) (694166 rewrites/second) + result NzNat: 89 + + No more solutions. + rewrites: 8469 in 12ms cpu (13ms real) (705750 rewrites/second) +) |