YES We show the termination of the TRS R: minus(n__0(),Y) -> |0|() minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) geq(X,n__0()) -> true() geq(n__0(),n__s(Y)) -> false() geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) div(|0|(),n__s(Y)) -> |0|() div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) if(true(),X,Y) -> activate(X) if(false(),X,Y) -> activate(Y) |0|() -> n__0() s(X) -> n__s(X) div(X1,X2) -> n__div(X1,X2) minus(X1,X2) -> n__minus(X1,X2) activate(n__0()) -> |0|() activate(n__s(X)) -> s(activate(X)) activate(n__div(X1,X2)) -> div(activate(X1),X2) activate(n__minus(X1,X2)) -> minus(X1,X2) activate(X) -> X -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__0(),Y) -> |0|#() p2: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p3: minus#(n__s(X),n__s(Y)) -> activate#(X) p4: minus#(n__s(X),n__s(Y)) -> activate#(Y) p5: geq#(n__s(X),n__s(Y)) -> geq#(activate(X),activate(Y)) p6: geq#(n__s(X),n__s(Y)) -> activate#(X) p7: geq#(n__s(X),n__s(Y)) -> activate#(Y) p8: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p9: div#(s(X),n__s(Y)) -> geq#(X,activate(Y)) p10: div#(s(X),n__s(Y)) -> activate#(Y) p11: if#(true(),X,Y) -> activate#(X) p12: if#(false(),X,Y) -> activate#(Y) p13: activate#(n__0()) -> |0|#() p14: activate#(n__s(X)) -> s#(activate(X)) p15: activate#(n__s(X)) -> activate#(X) p16: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p17: activate#(n__div(X1,X2)) -> activate#(X1) p18: activate#(n__minus(X1,X2)) -> minus#(X1,X2) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p2, p3, p4, p5, p6, p7, p8, p9, p10, p11, p12, p15, p16, p17, p18} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p4: minus#(n__s(X),n__s(Y)) -> activate#(X) p5: activate#(n__div(X1,X2)) -> activate#(X1) p6: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p7: div#(s(X),n__s(Y)) -> activate#(Y) p8: activate#(n__s(X)) -> activate#(X) p9: div#(s(X),n__s(Y)) -> geq#(X,activate(Y)) p10: geq#(n__s(X),n__s(Y)) -> activate#(Y) p11: geq#(n__s(X),n__s(Y)) -> activate#(X) p12: geq#(n__s(X),n__s(Y)) -> geq#(activate(X),activate(Y)) p13: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p14: if#(false(),X,Y) -> activate#(Y) p15: if#(true(),X,Y) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = max{1, x1, x2} n__s_A(x1) = max{15, x1} activate_A(x1) = max{5, x1} activate#_A(x1) = max{15, x1} n__minus_A(x1,x2) = max{x1, x2 + 4} n__div_A(x1,x2) = max{x1 + 28, x2 + 33} div#_A(x1,x2) = max{x1 + 28, x2 + 33} s_A(x1) = max{15, x1} geq#_A(x1,x2) = max{x1 + 16, x2 + 22} if#_A(x1,x2,x3) = max{15, x1 - 1, x2, x3} geq_A(x1,x2) = max{x1 + 29, x2 + 20} n__0_A = 2 false_A = 1 true_A = 1 if_A(x1,x2,x3) = max{x2, x3 + 46} minus_A(x1,x2) = max{x1, x2 + 4} |0|_A = 3 div_A(x1,x2) = max{x1 + 28, x2 + 33} precedence: minus# = activate# = div# = if# > n__div = div > activate = if = minus > s = geq# = geq > n__s = n__minus = n__0 = true = |0| > false partial status: pi(minus#) = [] pi(n__s) = [] pi(activate) = [1] pi(activate#) = [] pi(n__minus) = [2] pi(n__div) = [] pi(div#) = [] pi(s) = [] pi(geq#) = [] pi(if#) = [] pi(geq) = [] pi(n__0) = [] pi(false) = [] pi(true) = [] pi(if) = [2] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p9 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p4: minus#(n__s(X),n__s(Y)) -> activate#(X) p5: activate#(n__div(X1,X2)) -> activate#(X1) p6: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p7: div#(s(X),n__s(Y)) -> activate#(Y) p8: activate#(n__s(X)) -> activate#(X) p9: geq#(n__s(X),n__s(Y)) -> activate#(Y) p10: geq#(n__s(X),n__s(Y)) -> activate#(X) p11: geq#(n__s(X),n__s(Y)) -> geq#(activate(X),activate(Y)) p12: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p13: if#(false(),X,Y) -> activate#(Y) p14: if#(true(),X,Y) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p11} {p1, p2, p3, p4, p5, p6, p7, p8, p12, p13, p14} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: geq#(n__s(X),n__s(Y)) -> geq#(activate(X),activate(Y)) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: geq#_A(x1,x2) = max{24, x1 + 16, x2 - 8} n__s_A(x1) = max{108, x1 + 33} activate_A(x1) = x1 + 25 geq_A(x1,x2) = 8 n__0_A = 34 true_A = 0 false_A = 1 if_A(x1,x2,x3) = max{x1 + 163, x2 + 29, x3 + 26} minus_A(x1,x2) = 36 |0|_A = 35 div_A(x1,x2) = x1 + 62 s_A(x1) = max{109, x1 + 33} n__div_A(x1,x2) = x1 + 62 n__minus_A(x1,x2) = 11 precedence: geq# = n__s = activate = geq = n__0 = true = false = if = minus = |0| = div = s = n__div = n__minus partial status: pi(geq#) = [1] pi(n__s) = [] pi(activate) = [] pi(geq) = [] pi(n__0) = [] pi(true) = [] pi(false) = [] pi(if) = [] pi(minus) = [] pi(|0|) = [] pi(div) = [] pi(s) = [] pi(n__div) = [] pi(n__minus) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(X) p3: activate#(n__s(X)) -> activate#(X) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) p7: activate#(n__div(X1,X2)) -> activate#(X1) p8: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p9: minus#(n__s(X),n__s(Y)) -> activate#(Y) p10: if#(false(),X,Y) -> activate#(Y) p11: div#(s(X),n__s(Y)) -> activate#(Y) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = max{12, x1 - 1, x2 - 1} n__s_A(x1) = max{2, x1} activate_A(x1) = max{13, x1} activate#_A(x1) = max{0, x1 - 1} n__div_A(x1,x2) = max{22, x1 + 9, x2 + 9} div#_A(x1,x2) = max{x1 + 8, x2 + 8} s_A(x1) = max{13, x1} if#_A(x1,x2,x3) = max{1, x1 - 5, x2 - 1, x3 - 1} geq_A(x1,x2) = 12 n__minus_A(x1,x2) = max{13, x1, x2} n__0_A = 11 true_A = 6 false_A = 12 if_A(x1,x2,x3) = max{22, x1 - 19, x2, x3 + 11} minus_A(x1,x2) = max{13, x1, x2} |0|_A = 12 div_A(x1,x2) = max{22, x1 + 9, x2 + 9} precedence: n__div = div > geq = n__minus = true = if = minus > activate = |0| > n__s = s > n__0 > minus# = activate# = div# = if# = false partial status: pi(minus#) = [] pi(n__s) = [] pi(activate) = [1] pi(activate#) = [] pi(n__div) = [] pi(div#) = [] pi(s) = [] pi(if#) = [] pi(geq) = [] pi(n__minus) = [] pi(n__0) = [] pi(true) = [] pi(false) = [] pi(if) = [2, 3] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p11 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(X) p3: activate#(n__s(X)) -> activate#(X) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) p7: activate#(n__div(X1,X2)) -> activate#(X1) p8: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p9: minus#(n__s(X),n__s(Y)) -> activate#(Y) p10: if#(false(),X,Y) -> activate#(Y) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9, p10} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p4: minus#(n__s(X),n__s(Y)) -> activate#(X) p5: activate#(n__div(X1,X2)) -> activate#(X1) p6: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p7: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p8: if#(false(),X,Y) -> activate#(Y) p9: activate#(n__s(X)) -> activate#(X) p10: if#(true(),X,Y) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = max{39, x1 + 30, x2 + 30} n__s_A(x1) = max{4, x1} activate_A(x1) = max{9, x1} activate#_A(x1) = max{32, x1 + 30} n__minus_A(x1,x2) = max{9, x1, x2} n__div_A(x1,x2) = max{42, x1 + 33, x2 + 33} div#_A(x1,x2) = max{x1 + 63, x2 + 63} s_A(x1) = max{9, x1} if#_A(x1,x2,x3) = max{x1 + 30, x2 + 30, x3 + 32} geq_A(x1,x2) = max{23, x1 + 14, x2 + 4} n__0_A = 36 false_A = 3 true_A = 1 if_A(x1,x2,x3) = max{42, x2, x3 + 5} minus_A(x1,x2) = max{9, x1, x2} |0|_A = 36 div_A(x1,x2) = max{42, x1 + 33, x2 + 33} precedence: minus# = n__s = activate = activate# = n__minus = n__div = div# = s = if# = geq = n__0 = false = true = if = minus = |0| = div partial status: pi(minus#) = [] pi(n__s) = [] pi(activate) = [] pi(activate#) = [] pi(n__minus) = [] pi(n__div) = [] pi(div#) = [] pi(s) = [] pi(if#) = [] pi(geq) = [] pi(n__0) = [] pi(false) = [] pi(true) = [] pi(if) = [] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p8 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p4: minus#(n__s(X),n__s(Y)) -> activate#(X) p5: activate#(n__div(X1,X2)) -> activate#(X1) p6: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p7: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p8: activate#(n__s(X)) -> activate#(X) p9: if#(true(),X,Y) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8, p9} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(X) p3: activate#(n__s(X)) -> activate#(X) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) p7: activate#(n__div(X1,X2)) -> activate#(X1) p8: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p9: minus#(n__s(X),n__s(Y)) -> activate#(Y) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = max{x1 + 25, x2 + 28} n__s_A(x1) = max{10, x1} activate_A(x1) = max{2, x1} activate#_A(x1) = x1 + 25 n__div_A(x1,x2) = max{x1 + 24, x2 + 56} div#_A(x1,x2) = max{x1 + 49, x2 + 81} s_A(x1) = max{10, x1} if#_A(x1,x2,x3) = max{x1 - 1, x2 + 25, x3 + 18} geq_A(x1,x2) = x1 + 30 n__minus_A(x1,x2) = max{x1, x2 + 29} n__0_A = 0 true_A = 19 if_A(x1,x2,x3) = max{x1 - 6, x2, x3 + 66} false_A = 9 minus_A(x1,x2) = max{x1, x2 + 29} |0|_A = 1 div_A(x1,x2) = max{x1 + 24, x2 + 56} precedence: minus# = activate# = n__div = div# = if# = geq = true = false = div > if > n__s = activate = s > n__minus = minus > |0| > n__0 partial status: pi(minus#) = [] pi(n__s) = [] pi(activate) = [1] pi(activate#) = [] pi(n__div) = [] pi(div#) = [] pi(s) = [] pi(if#) = [] pi(geq) = [] pi(n__minus) = [] pi(n__0) = [] pi(true) = [] pi(if) = [2] pi(false) = [] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p7 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(X) p3: activate#(n__s(X)) -> activate#(X) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) p7: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p8: minus#(n__s(X),n__s(Y)) -> activate#(Y) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7, p8} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p4: minus#(n__s(X),n__s(Y)) -> activate#(X) p5: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p6: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p7: if#(true(),X,Y) -> activate#(X) p8: activate#(n__s(X)) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = max{x1 + 5, x2 + 6} n__s_A(x1) = max{17, x1} activate_A(x1) = x1 activate#_A(x1) = x1 + 2 n__minus_A(x1,x2) = max{x1 + 8, x2 + 7} n__div_A(x1,x2) = x2 + 16 div#_A(x1,x2) = x2 + 18 s_A(x1) = max{17, x1} if#_A(x1,x2,x3) = max{14, x1 + 3, x2 + 2, x3 + 2} geq_A(x1,x2) = max{2, x2 - 1} n__0_A = 5 true_A = 3 if_A(x1,x2,x3) = max{7, x1 - 2, x2, x3 + 6} false_A = 0 minus_A(x1,x2) = max{x1 + 8, x2 + 7} |0|_A = 5 div_A(x1,x2) = x2 + 16 precedence: activate = n__div = geq = if = div > n__s = s = minus > activate# = div# = if# = true > minus# = n__0 = |0| > n__minus > false partial status: pi(minus#) = [] pi(n__s) = [] pi(activate) = [] pi(activate#) = [] pi(n__minus) = [1, 2] pi(n__div) = [] pi(div#) = [] pi(s) = [] pi(if#) = [] pi(geq) = [] pi(n__0) = [] pi(true) = [] pi(if) = [] pi(false) = [] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__minus(X1,X2)) -> minus#(X1,X2) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) p7: activate#(n__s(X)) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1, p2, p3, p4, p5, p6, p7} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__s(X)) -> activate#(X) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) p7: activate#(n__minus(X1,X2)) -> minus#(X1,X2) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = x2 + 6 n__s_A(x1) = x1 activate_A(x1) = x1 activate#_A(x1) = max{0, x1 - 4} n__div_A(x1,x2) = x2 + 19 div#_A(x1,x2) = x2 + 15 s_A(x1) = x1 if#_A(x1,x2,x3) = max{15, x2 - 4, x3 + 11} geq_A(x1,x2) = max{x1 + 25, x2 + 25} n__minus_A(x1,x2) = max{x1 + 3, x2 + 11} n__0_A = 4 true_A = 1 if_A(x1,x2,x3) = max{19, x2, x3 + 15} false_A = 3 minus_A(x1,x2) = max{x1 + 3, x2 + 11} |0|_A = 4 div_A(x1,x2) = x2 + 19 precedence: n__div = div > if > minus# = activate = n__minus = n__0 = minus = |0| > n__s = activate# = div# = s = if# = geq = true = false partial status: pi(minus#) = [] pi(n__s) = [] pi(activate) = [1] pi(activate#) = [] pi(n__div) = [] pi(div#) = [] pi(s) = [] pi(if#) = [] pi(geq) = [] pi(n__minus) = [] pi(n__0) = [] pi(true) = [] pi(if) = [2] pi(false) = [] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p7 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) p2: minus#(n__s(X),n__s(Y)) -> activate#(Y) p3: activate#(n__s(X)) -> activate#(X) p4: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p5: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p6: if#(true(),X,Y) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1} {p3, p4, p5, p6} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: minus#(n__s(X),n__s(Y)) -> minus#(activate(X),activate(Y)) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: minus#_A(x1,x2) = max{x1 + 2, x2 + 2} n__s_A(x1) = max{100, x1 + 53} activate_A(x1) = max{54, x1 + 37} geq_A(x1,x2) = max{117, x1 + 47, x2 + 2} n__0_A = 2 true_A = 0 false_A = 1 if_A(x1,x2,x3) = max{71, x2 + 40, x3 + 68} minus_A(x1,x2) = 38 |0|_A = 37 div_A(x1,x2) = max{36, x1 + 18} s_A(x1) = max{137, x1 + 53} n__div_A(x1,x2) = max{35, x1 + 18} n__minus_A(x1,x2) = 0 precedence: activate = minus = n__minus > geq = true = false > n__s = s > minus# > div = n__div > n__0 = if = |0| partial status: pi(minus#) = [2] pi(n__s) = [] pi(activate) = [1] pi(geq) = [2] pi(n__0) = [] pi(true) = [] pi(false) = [] pi(if) = [2, 3] pi(minus) = [] pi(|0|) = [] pi(div) = [] pi(s) = [] pi(n__div) = [] pi(n__minus) = [] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains. -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: activate#(n__s(X)) -> activate#(X) p2: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p3: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) p4: if#(true(),X,Y) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, r12, r13, r14, r15, r16, r17, r18 Take the reduction pair: weighted path order base order: max/plus interpretations on natural numbers: activate#_A(x1) = x1 + 6 n__s_A(x1) = max{64, x1 + 6} n__div_A(x1,x2) = x1 + 95 div#_A(x1,x2) = x1 + 91 activate_A(x1) = x1 + 4 s_A(x1) = max{68, x1 + 6} if#_A(x1,x2,x3) = max{x2 + 7, x3 + 6} geq_A(x1,x2) = max{x1 + 77, x2 - 7} n__minus_A(x1,x2) = 25 n__0_A = 9 true_A = 1 if_A(x1,x2,x3) = max{x2 + 37, x3 + 14} false_A = 65 minus_A(x1,x2) = 26 |0|_A = 12 div_A(x1,x2) = x1 + 95 precedence: activate = |0| > n__div = s = if = false = div > div# = if# > n__s > activate# > n__minus = n__0 = minus > geq > true partial status: pi(activate#) = [1] pi(n__s) = [] pi(n__div) = [] pi(div#) = [] pi(activate) = [] pi(s) = [] pi(if#) = [] pi(geq) = [] pi(n__minus) = [] pi(n__0) = [] pi(true) = [] pi(if) = [] pi(false) = [] pi(minus) = [] pi(|0|) = [] pi(div) = [] The next rules are strictly ordered: p4 We remove them from the problem. -- SCC decomposition. Consider the dependency pair problem (P, R), where P consists of p1: activate#(n__s(X)) -> activate#(X) p2: activate#(n__div(X1,X2)) -> div#(activate(X1),X2) p3: div#(s(X),n__s(Y)) -> if#(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The estimated dependency graph contains the following SCCs: {p1} -- Reduction pair. Consider the dependency pair problem (P, R), where P consists of p1: activate#(n__s(X)) -> activate#(X) and R consists of: r1: minus(n__0(),Y) -> |0|() r2: minus(n__s(X),n__s(Y)) -> minus(activate(X),activate(Y)) r3: geq(X,n__0()) -> true() r4: geq(n__0(),n__s(Y)) -> false() r5: geq(n__s(X),n__s(Y)) -> geq(activate(X),activate(Y)) r6: div(|0|(),n__s(Y)) -> |0|() r7: div(s(X),n__s(Y)) -> if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0()) r8: if(true(),X,Y) -> activate(X) r9: if(false(),X,Y) -> activate(Y) r10: |0|() -> n__0() r11: s(X) -> n__s(X) r12: div(X1,X2) -> n__div(X1,X2) r13: minus(X1,X2) -> n__minus(X1,X2) r14: activate(n__0()) -> |0|() r15: activate(n__s(X)) -> s(activate(X)) r16: activate(n__div(X1,X2)) -> div(activate(X1),X2) r17: activate(n__minus(X1,X2)) -> minus(X1,X2) r18: activate(X) -> X The set of usable rules consists of (no rules) Take the monotone reduction pair: weighted path order base order: max/plus interpretations on natural numbers: activate#_A(x1) = x1 + 2 n__s_A(x1) = x1 + 2 precedence: activate# = n__s partial status: pi(activate#) = [1] pi(n__s) = [1] The next rules are strictly ordered: p1 We remove them from the problem. Then no dependency pair remains.