MAYBE Problem: f(true(),x,y) -> f(gt(x,y),x,round(s(y))) round(0()) -> 0() round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) Proof: DP Processor: DPs: f#(true(),x,y) -> round#(s(y)) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) round#(s(s(x))) -> round#(x) gt#(s(u),s(v)) -> gt#(u,v) TRS: f(true(),x,y) -> f(gt(x,y),x,round(s(y))) round(0()) -> 0() round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) Usable Rule Processor: DPs: f#(true(),x,y) -> round#(s(y)) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) round#(s(s(x))) -> round#(x) gt#(s(u),s(v)) -> gt#(u,v) TRS: f10(x,y) -> x f10(x,y) -> y round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) round(0()) -> 0() gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) TDG Processor: DPs: f#(true(),x,y) -> round#(s(y)) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) round#(s(s(x))) -> round#(x) gt#(s(u),s(v)) -> gt#(u,v) TRS: f10(x,y) -> x f10(x,y) -> y round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) round(0()) -> 0() gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) graph: gt#(s(u),s(v)) -> gt#(u,v) -> gt#(s(u),s(v)) -> gt#(u,v) round#(s(s(x))) -> round#(x) -> round#(s(s(x))) -> round#(x) f#(true(),x,y) -> gt#(x,y) -> gt#(s(u),s(v)) -> gt#(u,v) f#(true(),x,y) -> round#(s(y)) -> round#(s(s(x))) -> round#(x) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) -> f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) -> f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) -> f#(true(),x,y) -> round#(s(y)) Restore Modifier: DPs: f#(true(),x,y) -> round#(s(y)) f#(true(),x,y) -> gt#(x,y) f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) round#(s(s(x))) -> round#(x) gt#(s(u),s(v)) -> gt#(u,v) TRS: f(true(),x,y) -> f(gt(x,y),x,round(s(y))) round(0()) -> 0() round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) SCC Processor: #sccs: 3 #rules: 3 #arcs: 7/25 DPs: f#(true(),x,y) -> f#(gt(x,y),x,round(s(y))) TRS: f(true(),x,y) -> f(gt(x,y),x,round(s(y))) round(0()) -> 0() round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) Open DPs: round#(s(s(x))) -> round#(x) TRS: f(true(),x,y) -> f(gt(x,y),x,round(s(y))) round(0()) -> 0() round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) Open DPs: gt#(s(u),s(v)) -> gt#(u,v) TRS: f(true(),x,y) -> f(gt(x,y),x,round(s(y))) round(0()) -> 0() round(s(0())) -> s(s(0())) round(s(s(x))) -> s(s(round(x))) gt(0(),v) -> false() gt(s(u),0()) -> true() gt(s(u),s(v)) -> gt(u,v) Open