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

(rule (v n i a) (return a) :guard (not (<= i n)) :vars ((n Int) (i Int) (a Int)))
(rule (v n i a) (v n (+ i 1) (+ a i)) :guard (<= i n) :vars ((n Int) (i Int) (a Int)))
(rule (u n i a) (v n 0 a) :guard (not (<= n 0)) :vars ((n Int) (i Int) (a Int)))
(rule (u n i a) (return 0) :guard (<= n 0) :vars ((n Int) (i Int) (a Int)))
(rule (sum1 n) (u n rnd 0) :vars ((n Int) (rnd Int)))
