; @author Jonas Schöpf ; Ctrl example from examples/student/sum07.ctrs (format LCTRS :smtlib 2.6) (theory Ints) (sort Unit) (fun v (-> Int Int Unit)) (fun return (-> Int Unit)) (fun u (-> Int Int Unit)) (fun sum1 (-> Int Unit)) (rule (v n s) (return s) :guard (not (>= n 0)) :var ((n Int) (s Int))) (rule (v n s) (v (- n 1) (+ s n)) :guard (>= n 0) :var ((n Int) (s Int))) (rule (u n s) (v n s) :guard (not (< n 0)) :var ((n Int) (s Int))) (rule (u n s) (return 0) :guard (< n 0) :var ((n Int) (s Int))) (rule (sum1 n) (u n 0) :var ((n Int)))