(meta-info (comment "Ctrl example from examples-transformed/student/sum09.ctrs"))
(format LCTRS :logic QF_LIA)
(fun v 2 :sort (Int Int Result))
(fun return 1 :sort (Int Result))
(fun u 2 :sort (Int Int Result))
(fun sum1 1 :sort (Int Result))

(rule (v n s) (return s) :guard (not (> n 0)) :vars ((n Int) (s Int)))
(rule (v n s) (v (- n 1) (+ s n)) :guard (> n 0) :vars ((n Int) (s Int)))
(rule (u n s) (v n 0) :guard (not (< n 0)) :vars ((n Int) (s Int)))
(rule (u n s) (return 0) :guard (< n 0) :vars ((n Int) (s Int)))
(rule (sum1 n) (u n rnd) :vars ((n Int) (rnd Int)))
