The rewrite relation of the following TRS is considered.
p(0) | → | 0 | (1) |
p(s(x)) | → | x | (2) |
plus(x,0) | → | x | (3) |
plus(0,y) | → | y | (4) |
plus(s(x),y) | → | s(plus(x,y)) | (5) |
plus(s(x),y) | → | s(plus(p(s(x)),y)) | (6) |
plus(x,s(y)) | → | s(plus(x,p(s(y)))) | (7) |
times(0,y) | → | 0 | (8) |
times(s(0),y) | → | y | (9) |
times(s(x),y) | → | plus(y,times(x,y)) | (10) |
div(0,y) | → | 0 | (11) |
div(x,y) | → | quot(x,y,y) | (12) |
quot(0,s(y),z) | → | 0 | (13) |
quot(s(x),s(y),z) | → | quot(x,y,z) | (14) |
quot(x,0,s(z)) | → | s(div(x,s(z))) | (15) |
div(div(x,y),z) | → | div(x,times(y,z)) | (16) |
eq(0,0) | → | true | (17) |
eq(s(x),0) | → | false | (18) |
eq(0,s(y)) | → | false | (19) |
eq(s(x),s(y)) | → | eq(x,y) | (20) |
divides(y,x) | → | eq(x,times(div(x,y),y)) | (21) |
prime(s(s(x))) | → | pr(s(s(x)),s(x)) | (22) |
pr(x,s(0)) | → | true | (23) |
pr(x,s(s(y))) | → | if(divides(s(s(y)),x),x,s(y)) | (24) |
if(true,x,y) | → | false | (25) |
if(false,x,y) | → | pr(x,y) | (26) |
plus#(s(x),y) | → | p#(s(x)) | (27) |
quot#(s(x),s(y),z) | → | quot#(x,y,z) | (28) |
prime#(s(s(x))) | → | pr#(s(s(x)),s(x)) | (29) |
plus#(x,s(y)) | → | p#(s(y)) | (30) |
times#(s(x),y) | → | times#(x,y) | (31) |
plus#(s(x),y) | → | plus#(x,y) | (32) |
if#(false,x,y) | → | pr#(x,y) | (33) |
quot#(x,0,s(z)) | → | div#(x,s(z)) | (34) |
eq#(s(x),s(y)) | → | eq#(x,y) | (35) |
times#(s(x),y) | → | plus#(y,times(x,y)) | (36) |
div#(x,y) | → | quot#(x,y,y) | (37) |
divides#(y,x) | → | div#(x,y) | (38) |
div#(div(x,y),z) | → | times#(y,z) | (39) |
divides#(y,x) | → | times#(div(x,y),y) | (40) |
pr#(x,s(s(y))) | → | if#(divides(s(s(y)),x),x,s(y)) | (41) |
plus#(s(x),y) | → | plus#(p(s(x)),y) | (42) |
plus#(x,s(y)) | → | plus#(x,p(s(y))) | (43) |
divides#(y,x) | → | eq#(x,times(div(x,y),y)) | (44) |
pr#(x,s(s(y))) | → | divides#(s(s(y)),x) | (45) |
div#(div(x,y),z) | → | div#(x,times(y,z)) | (46) |
The dependency pairs are split into 5 components.
if#(false,x,y) | → | pr#(x,y) | (33) |
pr#(x,s(s(y))) | → | if#(divides(s(s(y)),x),x,s(y)) | (41) |
[div#(x1, x2)] | = | 0 |
[s(x1)] | = | x1 + 9727 |
[prime(x1)] | = | 0 |
[plus#(x1, x2)] | = | 0 |
[pr#(x1, x2)] | = | x1 + x2 + 0 |
[eq(x1, x2)] | = | x1 + x2 + 1 |
[false] | = | 9732 |
[div(x1, x2)] | = | x1 + 1 |
[p#(x1)] | = | 0 |
[true] | = | 8 |
[eq#(x1, x2)] | = | 0 |
[prime#(x1)] | = | 0 |
[p(x1)] | = | x1 + 2240 |
[times#(x1, x2)] | = | 0 |
[0] | = | 3 |
[if(x1, x2, x3)] | = | 0 |
[quot(x1, x2, x3)] | = | x3 + 2 |
[times(x1, x2)] | = | x1 + x2 + 47339 |
[pr(x1, x2)] | = | 0 |
[divides#(x1, x2)] | = | 0 |
[plus(x1, x2)] | = | x2 + 11051 |
[if#(x1, x2, x3)] | = | x2 + x3 + 1 |
[quot#(x1, x2, x3)] | = | 0 |
[divides(x1, x2)] | = | 47340 |
if#(false,x,y) | → | pr#(x,y) | (33) |
pr#(x,s(s(y))) | → | if#(divides(s(s(y)),x),x,s(y)) | (41) |
The dependency pairs are split into 0 components.
eq#(s(x),s(y)) | → | eq#(x,y) | (35) |
[div#(x1, x2)] | = | 0 |
[s(x1)] | = | x1 + 1 |
[prime(x1)] | = | 0 |
[plus#(x1, x2)] | = | 0 |
[pr#(x1, x2)] | = | 0 |
[eq(x1, x2)] | = | x1 + x2 + 1 |
[false] | = | 33860 |
[div(x1, x2)] | = | x1 + 33855 |
[p#(x1)] | = | 0 |
[true] | = | 67716 |
[eq#(x1, x2)] | = | x1 + 0 |
[prime#(x1)] | = | 0 |
[p(x1)] | = | x1 + 11966 |
[times#(x1, x2)] | = | 0 |
[0] | = | 33857 |
[if(x1, x2, x3)] | = | 0 |
[quot(x1, x2, x3)] | = | x3 + 33856 |
[times(x1, x2)] | = | x1 + x2 + 23612 |
[pr(x1, x2)] | = | 0 |
[divides#(x1, x2)] | = | 0 |
[plus(x1, x2)] | = | x2 + 11051 |
[if#(x1, x2, x3)] | = | 1 |
[quot#(x1, x2, x3)] | = | 0 |
[divides(x1, x2)] | = | 57467 |
eq#(s(x),s(y)) | → | eq#(x,y) | (35) |
The dependency pairs are split into 0 components.
div#(div(x,y),z) | → | div#(x,times(y,z)) | (46) |
quot#(s(x),s(y),z) | → | quot#(x,y,z) | (28) |
div#(x,y) | → | quot#(x,y,y) | (37) |
quot#(x,0,s(z)) | → | div#(x,s(z)) | (34) |
[div#(x1, x2)] | = | x1 + 0 |
[s(x1)] | = | x1 + 1 |
[prime(x1)] | = | 0 |
[plus#(x1, x2)] | = | 0 |
[pr#(x1, x2)] | = | 0 |
[eq(x1, x2)] | = | x1 + x2 + 1 |
[false] | = | 6 |
[div(x1, x2)] | = | x1 + 1 |
[p#(x1)] | = | 0 |
[true] | = | 8 |
[eq#(x1, x2)] | = | 0 |
[prime#(x1)] | = | 0 |
[p(x1)] | = | x1 + 7578 |
[times#(x1, x2)] | = | 0 |
[0] | = | 3 |
[if(x1, x2, x3)] | = | 0 |
[quot(x1, x2, x3)] | = | x3 + 2 |
[times(x1, x2)] | = | x1 + x2 + 43324 |
[pr(x1, x2)] | = | 0 |
[divides#(x1, x2)] | = | 0 |
[plus(x1, x2)] | = | x2 + 17068 |
[if#(x1, x2, x3)] | = | 1 |
[quot#(x1, x2, x3)] | = | x1 + 0 |
[divides(x1, x2)] | = | 43325 |
div#(div(x,y),z) | → | div#(x,times(y,z)) | (46) |
quot#(s(x),s(y),z) | → | quot#(x,y,z) | (28) |
The dependency pairs are split into 1 component.
quot#(x,0,s(z)) | → | div#(x,s(z)) | (34) |
div#(x,y) | → | quot#(x,y,y) | (37) |
[div#(x1, x2)] | = | max(x2 + 0, 0) |
[s(x1)] | = | 0 |
[prime(x1)] | = | 0 |
[plus#(x1, x2)] | = | max(0) |
[pr#(x1, x2)] | = | max(0) |
[eq(x1, x2)] | = | max(0) |
[false] | = | 0 |
[div(x1, x2)] | = | max(0) |
[p#(x1)] | = | 0 |
[true] | = | 0 |
[eq#(x1, x2)] | = | max(0) |
[prime#(x1)] | = | 0 |
[p(x1)] | = | 0 |
[times#(x1, x2)] | = | max(0) |
[0] | = | 1 |
[if(x1, x2, x3)] | = | max(0) |
[quot(x1, x2, x3)] | = | max(0) |
[times(x1, x2)] | = | max(0) |
[pr(x1, x2)] | = | max(0) |
[divides#(x1, x2)] | = | max(0) |
[plus(x1, x2)] | = | max(0) |
[if#(x1, x2, x3)] | = | max(0) |
[quot#(x1, x2, x3)] | = | max(x2 + 0, 0) |
[divides(x1, x2)] | = | max(0) |
quot#(x,0,s(z)) | → | div#(x,s(z)) | (34) |
The dependency pairs are split into 0 components.
times#(s(x),y) | → | times#(x,y) | (31) |
[div#(x1, x2)] | = | 0 |
[s(x1)] | = | x1 + 1 |
[prime(x1)] | = | 0 |
[plus#(x1, x2)] | = | 0 |
[pr#(x1, x2)] | = | 0 |
[eq(x1, x2)] | = | x1 + x2 + 1 |
[false] | = | 36723 |
[div(x1, x2)] | = | x1 + 36718 |
[p#(x1)] | = | 0 |
[true] | = | 73442 |
[eq#(x1, x2)] | = | 0 |
[prime#(x1)] | = | 0 |
[p(x1)] | = | x1 + 7578 |
[times#(x1, x2)] | = | x1 + 0 |
[0] | = | 36720 |
[if(x1, x2, x3)] | = | 0 |
[quot(x1, x2, x3)] | = | x3 + 36719 |
[times(x1, x2)] | = | x1 + 1 |
[pr(x1, x2)] | = | 0 |
[divides#(x1, x2)] | = | 0 |
[plus(x1, x2)] | = | 11652 |
[if#(x1, x2, x3)] | = | 1 |
[quot#(x1, x2, x3)] | = | 0 |
[divides(x1, x2)] | = | 36719 |
times#(s(x),y) | → | times#(x,y) | (31) |
The dependency pairs are split into 0 components.
plus#(s(x),y) | → | plus#(x,y) | (32) |
plus#(x,s(y)) | → | plus#(x,p(s(y))) | (43) |
plus#(s(x),y) | → | plus#(p(s(x)),y) | (42) |
[div#(x1, x2)] | = | 0 |
[s(x1)] | = | x1 + 1 |
[prime(x1)] | = | 0 |
[plus#(x1, x2)] | = | x1 + 0 |
[pr#(x1, x2)] | = | 0 |
[eq(x1, x2)] | = | x1 + x2 + 1 |
[false] | = | 28036 |
[div(x1, x2)] | = | x1 + 28031 |
[p#(x1)] | = | 0 |
[true] | = | 56068 |
[eq#(x1, x2)] | = | 0 |
[prime#(x1)] | = | 0 |
[p(x1)] | = | x1 + 0 |
[times#(x1, x2)] | = | 0 |
[0] | = | 28033 |
[if(x1, x2, x3)] | = | 0 |
[quot(x1, x2, x3)] | = | x3 + 28032 |
[times(x1, x2)] | = | x1 + 1 |
[pr(x1, x2)] | = | 0 |
[divides#(x1, x2)] | = | 0 |
[plus(x1, x2)] | = | 33304 |
[if#(x1, x2, x3)] | = | 1 |
[quot#(x1, x2, x3)] | = | 0 |
[divides(x1, x2)] | = | 28032 |
p(0) | → | 0 | (1) |
p(s(x)) | → | x | (2) |
plus#(s(x),y) | → | plus#(x,y) | (32) |
The dependency pairs are split into 1 component.
plus#(x,s(y)) | → | plus#(x,p(s(y))) | (43) |
plus#(s(x),y) | → | plus#(p(s(x)),y) | (42) |
π(plus#) | = | 1 |
π(times#) | = | 1 |
π(if) | = | 3 |
prec(div#) | = | 0 | status(div#) | = | [2] | list-extension(div#) | = | Lex | ||
prec(s) | = | 1 | status(s) | = | [] | list-extension(s) | = | Lex | ||
prec(prime) | = | 0 | status(prime) | = | [] | list-extension(prime) | = | Lex | ||
prec(pr#) | = | 0 | status(pr#) | = | [2, 1] | list-extension(pr#) | = | Lex | ||
prec(eq) | = | 0 | status(eq) | = | [2] | list-extension(eq) | = | Lex | ||
prec(false) | = | 0 | status(false) | = | [] | list-extension(false) | = | Lex | ||
prec(div) | = | 0 | status(div) | = | [1, 2] | list-extension(div) | = | Lex | ||
prec(p#) | = | 0 | status(p#) | = | [] | list-extension(p#) | = | Lex | ||
prec(true) | = | 0 | status(true) | = | [] | list-extension(true) | = | Lex | ||
prec(eq#) | = | 0 | status(eq#) | = | [] | list-extension(eq#) | = | Lex | ||
prec(prime#) | = | 0 | status(prime#) | = | [] | list-extension(prime#) | = | Lex | ||
prec(p) | = | 0 | status(p) | = | [] | list-extension(p) | = | Lex | ||
prec(0) | = | 0 | status(0) | = | [] | list-extension(0) | = | Lex | ||
prec(quot) | = | 0 | status(quot) | = | [3, 2, 1] | list-extension(quot) | = | Lex | ||
prec(times) | = | 0 | status(times) | = | [2, 1] | list-extension(times) | = | Lex | ||
prec(pr) | = | 0 | status(pr) | = | [1] | list-extension(pr) | = | Lex | ||
prec(divides#) | = | 0 | status(divides#) | = | [1, 2] | list-extension(divides#) | = | Lex | ||
prec(plus) | = | 0 | status(plus) | = | [] | list-extension(plus) | = | Lex | ||
prec(if#) | = | 0 | status(if#) | = | [1, 2, 3] | list-extension(if#) | = | Lex | ||
prec(quot#) | = | 0 | status(quot#) | = | [3, 2, 1] | list-extension(quot#) | = | Lex | ||
prec(divides) | = | 0 | status(divides) | = | [1, 2] | list-extension(divides) | = | Lex |
[div#(x1, x2)] | = | max(x2 + 1, 0) |
[s(x1)] | = | x1 + 1 |
[prime(x1)] | = | 1 |
[pr#(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[eq(x1, x2)] | = | max(x2 + 1, 0) |
[false] | = | 0 |
[div(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[p#(x1)] | = | 1 |
[true] | = | 0 |
[eq#(x1, x2)] | = | max(x2 + 1, 0) |
[prime#(x1)] | = | 1 |
[p(x1)] | = | x1 + 0 |
[0] | = | 23676 |
[quot(x1, x2, x3)] | = | max(x1 + 1, x2 + 1, x3 + 1, 0) |
[times(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[pr(x1, x2)] | = | x1 + 1 |
[divides#(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[plus(x1, x2)] | = | max(x2 + 1, 0) |
[if#(x1, x2, x3)] | = | x1 + x2 + x3 + 1 |
[quot#(x1, x2, x3)] | = | max(x1 + 1, x2 + 1, x3 + 1, 0) |
[divides(x1, x2)] | = | x1 + x2 + 1 |
p(0) | → | 0 | (1) |
p(s(x)) | → | x | (2) |
plus#(s(x),y) | → | plus#(p(s(x)),y) | (42) |
The dependency pairs are split into 1 component.
plus#(x,s(y)) | → | plus#(x,p(s(y))) | (43) |
π(plus#) | = | 2 |
π(times#) | = | 1 |
π(if) | = | 3 |
prec(div#) | = | 0 | status(div#) | = | [2] | list-extension(div#) | = | Lex | ||
prec(s) | = | 2 | status(s) | = | [] | list-extension(s) | = | Lex | ||
prec(prime) | = | 0 | status(prime) | = | [] | list-extension(prime) | = | Lex | ||
prec(pr#) | = | 0 | status(pr#) | = | [2, 1] | list-extension(pr#) | = | Lex | ||
prec(eq) | = | 0 | status(eq) | = | [2] | list-extension(eq) | = | Lex | ||
prec(false) | = | 0 | status(false) | = | [] | list-extension(false) | = | Lex | ||
prec(div) | = | 0 | status(div) | = | [1, 2] | list-extension(div) | = | Lex | ||
prec(p#) | = | 0 | status(p#) | = | [] | list-extension(p#) | = | Lex | ||
prec(true) | = | 0 | status(true) | = | [] | list-extension(true) | = | Lex | ||
prec(eq#) | = | 0 | status(eq#) | = | [] | list-extension(eq#) | = | Lex | ||
prec(prime#) | = | 0 | status(prime#) | = | [] | list-extension(prime#) | = | Lex | ||
prec(p) | = | 1 | status(p) | = | [] | list-extension(p) | = | Lex | ||
prec(0) | = | 1 | status(0) | = | [] | list-extension(0) | = | Lex | ||
prec(quot) | = | 0 | status(quot) | = | [3, 2, 1] | list-extension(quot) | = | Lex | ||
prec(times) | = | 0 | status(times) | = | [2, 1] | list-extension(times) | = | Lex | ||
prec(pr) | = | 0 | status(pr) | = | [1] | list-extension(pr) | = | Lex | ||
prec(divides#) | = | 0 | status(divides#) | = | [1, 2] | list-extension(divides#) | = | Lex | ||
prec(plus) | = | 0 | status(plus) | = | [] | list-extension(plus) | = | Lex | ||
prec(if#) | = | 0 | status(if#) | = | [1, 2, 3] | list-extension(if#) | = | Lex | ||
prec(quot#) | = | 0 | status(quot#) | = | [3, 2, 1] | list-extension(quot#) | = | Lex | ||
prec(divides) | = | 0 | status(divides) | = | [1, 2] | list-extension(divides) | = | Lex |
[div#(x1, x2)] | = | max(x2 + 1, 0) |
[s(x1)] | = | x1 + 1 |
[prime(x1)] | = | 1 |
[pr#(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[eq(x1, x2)] | = | max(x2 + 1, 0) |
[false] | = | 0 |
[div(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[p#(x1)] | = | 1 |
[true] | = | 0 |
[eq#(x1, x2)] | = | max(x2 + 1, 0) |
[prime#(x1)] | = | 1 |
[p(x1)] | = | x1 + 0 |
[0] | = | 23676 |
[quot(x1, x2, x3)] | = | max(x1 + 1, x2 + 1, x3 + 1, 0) |
[times(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[pr(x1, x2)] | = | x1 + 1 |
[divides#(x1, x2)] | = | max(x1 + 1, x2 + 1, 0) |
[plus(x1, x2)] | = | max(x2 + 1, 0) |
[if#(x1, x2, x3)] | = | x1 + x2 + x3 + 1 |
[quot#(x1, x2, x3)] | = | max(x1 + 1, x2 + 1, x3 + 1, 0) |
[divides(x1, x2)] | = | x1 + x2 + 1 |
p(0) | → | 0 | (1) |
p(s(x)) | → | x | (2) |
plus#(x,s(y)) | → | plus#(x,p(s(y))) | (43) |
The dependency pairs are split into 0 components.