(0) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

-(x, 0) → x
-(s(x), s(y)) → -(x, y)
<=(0, y) → true
<=(s(x), 0) → false
<=(s(x), s(y)) → <=(x, y)
if(true, x, y) → x
if(false, x, y) → y
perfectp(0) → false
perfectp(s(x)) → f(x, s(0), s(x), s(x))
f(0, y, 0, u) → true
f(0, y, s(z), u) → false
f(s(x), 0, z, u) → f(x, u, -(z, s(x)), u)
f(s(x), s(y), z, u) → if(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))

Q is empty.

(1) Overlay + Local Confluence (EQUIVALENT transformation)

The TRS is overlay and locally confluent. By [NOC] we can switch to innermost.

(2) Obligation:

Q restricted rewrite system:
The TRS R consists of the following rules:

-(x, 0) → x
-(s(x), s(y)) → -(x, y)
<=(0, y) → true
<=(s(x), 0) → false
<=(s(x), s(y)) → <=(x, y)
if(true, x, y) → x
if(false, x, y) → y
perfectp(0) → false
perfectp(s(x)) → f(x, s(0), s(x), s(x))
f(0, y, 0, u) → true
f(0, y, s(z), u) → false
f(s(x), 0, z, u) → f(x, u, -(z, s(x)), u)
f(s(x), s(y), z, u) → if(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))

The set Q consists of the following terms:

-(x0, 0)
-(s(x0), s(x1))
<=(0, x0)
<=(s(x0), 0)
<=(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
perfectp(0)
perfectp(s(x0))
f(0, x0, 0, x1)
f(0, x0, s(x1), x2)
f(s(x0), 0, x1, x2)
f(s(x0), s(x1), x2, x3)

(3) DependencyPairsProof (EQUIVALENT transformation)

Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.

(4) Obligation:

Q DP problem:
The TRS P consists of the following rules:

-1(s(x), s(y)) → -1(x, y)
<=1(s(x), s(y)) → <=1(x, y)
PERFECTP(s(x)) → F(x, s(0), s(x), s(x))
F(s(x), 0, z, u) → F(x, u, -(z, s(x)), u)
F(s(x), 0, z, u) → -1(z, s(x))
F(s(x), s(y), z, u) → IF(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))
F(s(x), s(y), z, u) → <=1(x, y)
F(s(x), s(y), z, u) → F(s(x), -(y, x), z, u)
F(s(x), s(y), z, u) → -1(y, x)
F(s(x), s(y), z, u) → F(x, u, z, u)

The TRS R consists of the following rules:

-(x, 0) → x
-(s(x), s(y)) → -(x, y)
<=(0, y) → true
<=(s(x), 0) → false
<=(s(x), s(y)) → <=(x, y)
if(true, x, y) → x
if(false, x, y) → y
perfectp(0) → false
perfectp(s(x)) → f(x, s(0), s(x), s(x))
f(0, y, 0, u) → true
f(0, y, s(z), u) → false
f(s(x), 0, z, u) → f(x, u, -(z, s(x)), u)
f(s(x), s(y), z, u) → if(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))

The set Q consists of the following terms:

-(x0, 0)
-(s(x0), s(x1))
<=(0, x0)
<=(s(x0), 0)
<=(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
perfectp(0)
perfectp(s(x0))
f(0, x0, 0, x1)
f(0, x0, s(x1), x2)
f(s(x0), 0, x1, x2)
f(s(x0), s(x1), x2, x3)

We have to consider all minimal (P,Q,R)-chains.

(5) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 3 SCCs with 5 less nodes.

(6) Complex Obligation (AND)

(7) Obligation:

Q DP problem:
The TRS P consists of the following rules:

<=1(s(x), s(y)) → <=1(x, y)

The TRS R consists of the following rules:

-(x, 0) → x
-(s(x), s(y)) → -(x, y)
<=(0, y) → true
<=(s(x), 0) → false
<=(s(x), s(y)) → <=(x, y)
if(true, x, y) → x
if(false, x, y) → y
perfectp(0) → false
perfectp(s(x)) → f(x, s(0), s(x), s(x))
f(0, y, 0, u) → true
f(0, y, s(z), u) → false
f(s(x), 0, z, u) → f(x, u, -(z, s(x)), u)
f(s(x), s(y), z, u) → if(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))

The set Q consists of the following terms:

-(x0, 0)
-(s(x0), s(x1))
<=(0, x0)
<=(s(x0), 0)
<=(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
perfectp(0)
perfectp(s(x0))
f(0, x0, 0, x1)
f(0, x0, s(x1), x2)
f(s(x0), 0, x1, x2)
f(s(x0), s(x1), x2, x3)

We have to consider all minimal (P,Q,R)-chains.

(8) Obligation:

Q DP problem:
The TRS P consists of the following rules:

-1(s(x), s(y)) → -1(x, y)

The TRS R consists of the following rules:

-(x, 0) → x
-(s(x), s(y)) → -(x, y)
<=(0, y) → true
<=(s(x), 0) → false
<=(s(x), s(y)) → <=(x, y)
if(true, x, y) → x
if(false, x, y) → y
perfectp(0) → false
perfectp(s(x)) → f(x, s(0), s(x), s(x))
f(0, y, 0, u) → true
f(0, y, s(z), u) → false
f(s(x), 0, z, u) → f(x, u, -(z, s(x)), u)
f(s(x), s(y), z, u) → if(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))

The set Q consists of the following terms:

-(x0, 0)
-(s(x0), s(x1))
<=(0, x0)
<=(s(x0), 0)
<=(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
perfectp(0)
perfectp(s(x0))
f(0, x0, 0, x1)
f(0, x0, s(x1), x2)
f(s(x0), 0, x1, x2)
f(s(x0), s(x1), x2, x3)

We have to consider all minimal (P,Q,R)-chains.

(9) Obligation:

Q DP problem:
The TRS P consists of the following rules:

F(s(x), s(y), z, u) → F(s(x), -(y, x), z, u)
F(s(x), 0, z, u) → F(x, u, -(z, s(x)), u)
F(s(x), s(y), z, u) → F(x, u, z, u)

The TRS R consists of the following rules:

-(x, 0) → x
-(s(x), s(y)) → -(x, y)
<=(0, y) → true
<=(s(x), 0) → false
<=(s(x), s(y)) → <=(x, y)
if(true, x, y) → x
if(false, x, y) → y
perfectp(0) → false
perfectp(s(x)) → f(x, s(0), s(x), s(x))
f(0, y, 0, u) → true
f(0, y, s(z), u) → false
f(s(x), 0, z, u) → f(x, u, -(z, s(x)), u)
f(s(x), s(y), z, u) → if(<=(x, y), f(s(x), -(y, x), z, u), f(x, u, z, u))

The set Q consists of the following terms:

-(x0, 0)
-(s(x0), s(x1))
<=(0, x0)
<=(s(x0), 0)
<=(s(x0), s(x1))
if(true, x0, x1)
if(false, x0, x1)
perfectp(0)
perfectp(s(x0))
f(0, x0, 0, x1)
f(0, x0, s(x1), x2)
f(s(x0), 0, x1, x2)
f(s(x0), s(x1), x2, x3)

We have to consider all minimal (P,Q,R)-chains.