; @origtpdbfilename ./TRS/SchneiderKamp/trs/thiemann16.trs ; @xtcfilename "./TRS_Standard/AProVE_07/thiemann16.xml" (format TRS) (fun check 1) (fun |0| 0) (fun zero 0) (fun s 1) (fun odd 0) (fun even 0) (fun half 1) (fun plus 2) (fun times 2) (fun timesIter 3) (fun if 5) (fun p 1) (rule (check |0|) zero) (rule (check (s |0|)) odd) (rule (check (s (s |0|))) even) (rule (check (s (s (s x)))) (check (s x))) (rule (half |0|) |0|) (rule (half (s |0|)) |0|) (rule (half (s (s x))) (s (half x))) (rule (plus |0| y) y) (rule (plus (s x) y) (s (plus x y))) (rule (times x y) (timesIter x y |0|)) (rule (timesIter x y z) (if (check x) x y z (plus z y))) (rule (p (s x)) x) (rule (p |0|) |0|) (rule (if zero x y z u) z) (rule (if odd x y z u) (timesIter (p x) y u)) (rule (if even x y z u) (plus (timesIter (half x) y (half z)) (timesIter (half x) y (half (s z)))))