Tool CaT
stdout:
MAYBE
Problem:
if(true(),x,y) -> x
if(false(),x,y) -> y
eq(0(),0()) -> true()
eq(0(),s(x)) -> false()
eq(s(x),0()) -> false()
eq(s(x),s(y)) -> eq(x,y)
app(nil(),l) -> l
app(cons(x,l1),l2) -> cons(x,app(l1,l2))
app(app(l1,l2),l3) -> app(l1,app(l2,l3))
mem(x,nil()) -> false()
mem(x,cons(y,l)) -> ifmem(eq(x,y),x,l)
ifmem(true(),x,l) -> true()
ifmem(false(),x,l) -> mem(x,l)
inter(x,nil()) -> nil()
inter(nil(),x) -> nil()
inter(app(l1,l2),l3) -> app(inter(l1,l3),inter(l2,l3))
inter(l1,app(l2,l3)) -> app(inter(l1,l2),inter(l1,l3))
inter(cons(x,l1),l2) -> ifinter(mem(x,l2),x,l1,l2)
inter(l1,cons(x,l2)) -> ifinter(mem(x,l1),x,l2,l1)
ifinter(true(),x,l1,l2) -> cons(x,inter(l1,l2))
ifinter(false(),x,l1,l2) -> inter(l1,l2)
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:
{ if(true(), x, y) -> x
, if(false(), x, y) -> y
, eq(0(), 0()) -> true()
, eq(0(), s(x)) -> false()
, eq(s(x), 0()) -> false()
, eq(s(x), s(y)) -> eq(x, y)
, app(nil(), l) -> l
, app(cons(x, l1), l2) -> cons(x, app(l1, l2))
, app(app(l1, l2), l3) -> app(l1, app(l2, l3))
, mem(x, nil()) -> false()
, mem(x, cons(y, l)) -> ifmem(eq(x, y), x, l)
, ifmem(true(), x, l) -> true()
, ifmem(false(), x, l) -> mem(x, l)
, inter(x, nil()) -> nil()
, inter(nil(), x) -> nil()
, inter(app(l1, l2), l3) -> app(inter(l1, l3), inter(l2, l3))
, inter(l1, app(l2, l3)) -> app(inter(l1, l2), inter(l1, l3))
, inter(cons(x, l1), l2) -> ifinter(mem(x, l2), x, l1, l2)
, inter(l1, cons(x, l2)) -> ifinter(mem(x, l1), x, l2, l1)
, ifinter(true(), x, l1, l2) -> cons(x, inter(l1, l2))
, ifinter(false(), x, l1, l2) -> inter(l1, l2)}
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:
{ if(true(), x, y) -> x
, if(false(), x, y) -> y
, eq(0(), 0()) -> true()
, eq(0(), s(x)) -> false()
, eq(s(x), 0()) -> false()
, eq(s(x), s(y)) -> eq(x, y)
, app(nil(), l) -> l
, app(cons(x, l1), l2) -> cons(x, app(l1, l2))
, app(app(l1, l2), l3) -> app(l1, app(l2, l3))
, mem(x, nil()) -> false()
, mem(x, cons(y, l)) -> ifmem(eq(x, y), x, l)
, ifmem(true(), x, l) -> true()
, ifmem(false(), x, l) -> mem(x, l)
, inter(x, nil()) -> nil()
, inter(nil(), x) -> nil()
, inter(app(l1, l2), l3) -> app(inter(l1, l3), inter(l2, l3))
, inter(l1, app(l2, l3)) -> app(inter(l1, l2), inter(l1, l3))
, inter(cons(x, l1), l2) -> ifinter(mem(x, l2), x, l1, l2)
, inter(l1, cons(x, l2)) -> ifinter(mem(x, l1), x, l2, l1)
, ifinter(true(), x, l1, l2) -> cons(x, inter(l1, l2))
, ifinter(false(), x, l1, l2) -> inter(l1, l2)}
Proof Output:
Computation stopped due to timeout after 60.0 seconds