Tool CaT
stdout:
MAYBE
Problem:
ge(0(),0()) -> true()
ge(s(x),0()) -> ge(x,0())
ge(0(),s(0())) -> false()
ge(0(),s(s(x))) -> ge(0(),s(x))
ge(s(x),s(y)) -> ge(x,y)
minus(0(),0()) -> 0()
minus(0(),s(x)) -> minus(0(),x)
minus(s(x),0()) -> s(minus(x,0()))
minus(s(x),s(y)) -> minus(x,y)
plus(0(),0()) -> 0()
plus(0(),s(x)) -> s(plus(0(),x))
plus(s(x),y) -> s(plus(x,y))
div(x,y) -> ify(ge(y,s(0())),x,y)
ify(false(),x,y) -> divByZeroError()
ify(true(),x,y) -> if(ge(x,y),x,y)
if(false(),x,y) -> 0()
if(true(),x,y) -> s(div(minus(x,y),y))
div(plus(x,y),z) -> plus(div(x,z),div(y,z))
Proof:
OpenTool IRC1
stdout:
MAYBE
Tool IRC2
stdout:
TIMEOUT
'Fastest (timeout of 60.0 seconds)'
-----------------------------------
Answer: TIMEOUT
Input Problem: innermost runtime-complexity with respect to
Rules:
{ ge(0(), 0()) -> true()
, ge(s(x), 0()) -> ge(x, 0())
, ge(0(), s(0())) -> false()
, ge(0(), s(s(x))) -> ge(0(), s(x))
, ge(s(x), s(y)) -> ge(x, y)
, minus(0(), 0()) -> 0()
, minus(0(), s(x)) -> minus(0(), x)
, minus(s(x), 0()) -> s(minus(x, 0()))
, minus(s(x), s(y)) -> minus(x, y)
, plus(0(), 0()) -> 0()
, plus(0(), s(x)) -> s(plus(0(), x))
, plus(s(x), y) -> s(plus(x, y))
, div(x, y) -> ify(ge(y, s(0())), x, y)
, ify(false(), x, y) -> divByZeroError()
, ify(true(), x, y) -> if(ge(x, y), x, y)
, if(false(), x, y) -> 0()
, if(true(), x, y) -> s(div(minus(x, y), y))
, div(plus(x, y), z) -> plus(div(x, z), div(y, z))}
Proof Output:
Computation stopped due to timeout after 60.0 secondsTool RC1
stdout:
MAYBE
Tool RC2
stdout:
TIMEOUT
'Fastest (timeout of 60.0 seconds)'
-----------------------------------
Answer: TIMEOUT
Input Problem: runtime-complexity with respect to
Rules:
{ ge(0(), 0()) -> true()
, ge(s(x), 0()) -> ge(x, 0())
, ge(0(), s(0())) -> false()
, ge(0(), s(s(x))) -> ge(0(), s(x))
, ge(s(x), s(y)) -> ge(x, y)
, minus(0(), 0()) -> 0()
, minus(0(), s(x)) -> minus(0(), x)
, minus(s(x), 0()) -> s(minus(x, 0()))
, minus(s(x), s(y)) -> minus(x, y)
, plus(0(), 0()) -> 0()
, plus(0(), s(x)) -> s(plus(0(), x))
, plus(s(x), y) -> s(plus(x, y))
, div(x, y) -> ify(ge(y, s(0())), x, y)
, ify(false(), x, y) -> divByZeroError()
, ify(true(), x, y) -> if(ge(x, y), x, y)
, if(false(), x, y) -> 0()
, if(true(), x, y) -> s(div(minus(x, y), y))
, div(plus(x, y), z) -> plus(div(x, z), div(y, z))}
Proof Output:
Computation stopped due to timeout after 60.0 seconds