equal
deleted
inserted
replaced
56 eval ( Z * M) Z.. |
56 eval ( Z * M) Z.. |
57 eval ((S N) * M) K :- eval (N * M) L & eval (L + M) K" |
57 eval ((S N) * M) K :- eval (N * M) L & eval (L + M) K" |
58 |
58 |
59 lemmas prog_Func = eval |
59 lemmas prog_Func = eval |
60 |
60 |
61 lemma "eval ((S (S Z)) + (S Z)) ?X" |
61 schematic_lemma "eval ((S (S Z)) + (S Z)) ?X" |
62 apply (prolog prog_Func) |
62 apply (prolog prog_Func) |
63 done |
63 done |
64 |
64 |
65 lemma "eval (app (fix (%fact. abs(%n. cond (n eq Z) (S Z) |
65 schematic_lemma "eval (app (fix (%fact. abs(%n. cond (n eq Z) (S Z) |
66 (n * (app fact (n - (S Z))))))) (S (S (S Z)))) ?X" |
66 (n * (app fact (n - (S Z))))))) (S (S (S Z)))) ?X" |
67 apply (prolog prog_Func) |
67 apply (prolog prog_Func) |
68 done |
68 done |
69 |
69 |
70 end |
70 end |