YES Problem: half(0()) -> 0() half(s(s(x))) -> s(half(x)) log(s(0())) -> 0() log(s(s(x))) -> s(log(s(half(x)))) Proof: DP Processor: DPs: half#(s(s(x))) -> half#(x) log#(s(s(x))) -> half#(x) log#(s(s(x))) -> log#(s(half(x))) TRS: half(0()) -> 0() half(s(s(x))) -> s(half(x)) log(s(0())) -> 0() log(s(s(x))) -> s(log(s(half(x)))) Usable Rule Processor: DPs: half#(s(s(x))) -> half#(x) log#(s(s(x))) -> half#(x) log#(s(s(x))) -> log#(s(half(x))) TRS: half(0()) -> 0() half(s(s(x))) -> s(half(x)) CDG Processor: DPs: half#(s(s(x))) -> half#(x) log#(s(s(x))) -> half#(x) log#(s(s(x))) -> log#(s(half(x))) TRS: half(0()) -> 0() half(s(s(x))) -> s(half(x)) graph: log#(s(s(x))) -> log#(s(half(x))) -> log#(s(s(x))) -> half#(x) log#(s(s(x))) -> log#(s(half(x))) -> log#(s(s(x))) -> log#(s(half(x))) Restore Modifier: DPs: half#(s(s(x))) -> half#(x) log#(s(s(x))) -> half#(x) log#(s(s(x))) -> log#(s(half(x))) TRS: half(0()) -> 0() half(s(s(x))) -> s(half(x)) log(s(0())) -> 0() log(s(s(x))) -> s(log(s(half(x)))) SCC Processor: #sccs: 1 #rules: 1 #arcs: 2/9 DPs: log#(s(s(x))) -> log#(s(half(x))) TRS: half(0()) -> 0() half(s(s(x))) -> s(half(x)) log(s(0())) -> 0() log(s(s(x))) -> s(log(s(half(x)))) Matrix Interpretation Processor: dimension: 1 interpretation: [log#](x0) = x0 + 1, [log](x0) = x0, [s](x0) = x0 + 1, [half](x0) = x0, [0] = 0 orientation: log#(s(s(x))) = x + 3 >= x + 2 = log#(s(half(x))) half(0()) = 0 >= 0 = 0() half(s(s(x))) = x + 2 >= x + 1 = s(half(x)) log(s(0())) = 1 >= 0 = 0() log(s(s(x))) = x + 2 >= x + 2 = s(log(s(half(x)))) problem: DPs: TRS: half(0()) -> 0() half(s(s(x))) -> s(half(x)) log(s(0())) -> 0() log(s(s(x))) -> s(log(s(half(x)))) Qed