; @origtpdbfilename ./TRS/secret05/aprove2.trs
; @xtcfilename "./TRS_Standard/Secret_05_TRS/aprove2.xml"
(format TRS)
(fun ge 2)
(fun |0| 0)
(fun true 0)
(fun s 1)
(fun false 0)
(fun minus 2)
(fun div 2)
(fun ify 3)
(fun divByZeroError 0)
(fun if 3)
(rule (ge x |0|) true)
(rule (ge |0| (s x)) false)
(rule (ge (s x) (s y)) (ge x y))
(rule (minus x |0|) x)
(rule (minus (s x) (s y)) (minus x y))
(rule (div x y) (ify (ge y (s |0|)) x y))
(rule (ify false x y) divByZeroError)
(rule (ify true x y) (if (ge x y) x y))
(rule (if false x y) |0|)
(rule (if true x y) (s (div (minus x y) y)))