(0) Obligation:

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

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

Q is empty.

(1) DependencyPairsProof (EQUIVALENT transformation)

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

(2) Obligation:

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

P(p(b(a(x0)), x1), p(x2, x3)) → P(p(b(x2), a(a(b(x1)))), p(x3, x0))
P(p(b(a(x0)), x1), p(x2, x3)) → P(b(x2), a(a(b(x1))))
P(p(b(a(x0)), x1), p(x2, x3)) → P(x3, x0)

The TRS R consists of the following rules:

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

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

(3) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 1 less node.

(4) Obligation:

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

P(p(b(a(x0)), x1), p(x2, x3)) → P(x3, x0)
P(p(b(a(x0)), x1), p(x2, x3)) → P(p(b(x2), a(a(b(x1)))), p(x3, x0))

The TRS R consists of the following rules:

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

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

(5) MRRProof (EQUIVALENT transformation)

By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented.
Strictly oriented dependency pairs:

P(p(b(a(x0)), x1), p(x2, x3)) → P(x3, x0)


Used ordering: Polynomial interpretation [POLO]:

POL(P(x1, x2)) = x1 + x2   
POL(a(x1)) = x1   
POL(b(x1)) = x1   
POL(p(x1, x2)) = 1 + x1 + x2   

(6) Obligation:

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

P(p(b(a(x0)), x1), p(x2, x3)) → P(p(b(x2), a(a(b(x1)))), p(x3, x0))

The TRS R consists of the following rules:

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

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

(7) Instantiation (EQUIVALENT transformation)

By instantiating [LPAR04] the rule P(p(b(a(x0)), x1), p(x2, x3)) → P(p(b(x2), a(a(b(x1)))), p(x3, x0)) we obtained the following new rules [LPAR04]:

P(p(b(a(x0)), a(a(b(y_1)))), p(x2, x3)) → P(p(b(x2), a(a(b(a(a(b(y_1))))))), p(x3, x0))

(8) Obligation:

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

P(p(b(a(x0)), a(a(b(y_1)))), p(x2, x3)) → P(p(b(x2), a(a(b(a(a(b(y_1))))))), p(x3, x0))

The TRS R consists of the following rules:

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

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

(9) Instantiation (EQUIVALENT transformation)

By instantiating [LPAR04] the rule P(p(b(a(x0)), a(a(b(y_1)))), p(x2, x3)) → P(p(b(x2), a(a(b(a(a(b(y_1))))))), p(x3, x0)) we obtained the following new rules [LPAR04]:

P(p(b(a(x0)), a(a(b(a(a(b(y_1))))))), p(x2, x3)) → P(p(b(x2), a(a(b(a(a(b(a(a(b(y_1)))))))))), p(x3, x0))

(10) Obligation:

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

P(p(b(a(x0)), a(a(b(a(a(b(y_1))))))), p(x2, x3)) → P(p(b(x2), a(a(b(a(a(b(a(a(b(y_1)))))))))), p(x3, x0))

The TRS R consists of the following rules:

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

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

(11) ForwardInstantiation (EQUIVALENT transformation)

By forward instantiating [JAR06] the rule P(p(b(a(x0)), a(a(b(a(a(b(y_1))))))), p(x2, x3)) → P(p(b(x2), a(a(b(a(a(b(a(a(b(y_1)))))))))), p(x3, x0)) we obtained the following new rules [LPAR04]:

P(p(b(a(x0)), a(a(b(a(a(b(x1))))))), p(a(y_0), x3)) → P(p(b(a(y_0)), a(a(b(a(a(b(a(a(b(x1)))))))))), p(x3, x0))

(12) Obligation:

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

P(p(b(a(x0)), a(a(b(a(a(b(x1))))))), p(a(y_0), x3)) → P(p(b(a(y_0)), a(a(b(a(a(b(a(a(b(x1)))))))))), p(x3, x0))

The TRS R consists of the following rules:

p(p(b(a(x0)), x1), p(x2, x3)) → p(p(b(x2), a(a(b(x1)))), p(x3, x0))

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

(13) SemLabProof (SOUND transformation)

We found the following model for the rules of the TRS R. Interpretation over the domain with elements from 0 to 1.P: 0
a: 1
b: 0
p: 0
By semantic labelling [SEMLAB] we obtain the following labelled TRS.

(14) Obligation:

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

P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-0(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.0-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-1(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.1-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-0(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.0-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.1-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-0(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.0-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-0(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.0-0(x3, x0))
P.0-0(p.0-1(b.1(a.0(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-0(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-0(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.0-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-1(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.1-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-0(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.0-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.0(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.0(x1)))))))))), p.1-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-0(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.0-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.0(y_0), x3)) → P.0-0(p.0-1(b.1(a.0(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-0(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.0-1(x3, x0))
P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-1(x3, x0))

The TRS R consists of the following rules:

p.0-0(p.0-1(b.1(a.0(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.0-0(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.0-1(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.0-1(x3, x0))
p.0-0(p.0-1(b.1(a.0(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.0-0(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.0-1(x3, x0))
p.0-0(p.0-1(b.1(a.0(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.1-0(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.0-0(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.0-1(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.1-1(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.1-1(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.1-1(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.1-0(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.0-0(x3, x0))
p.0-0(p.0-1(b.1(a.0(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.1-0(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.1-1(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.1-0(x3, x0))

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

(15) DependencyGraphProof (EQUIVALENT transformation)

The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 1 SCC with 15 less nodes.

(16) Obligation:

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

P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-1(x3, x0))

The TRS R consists of the following rules:

p.0-0(p.0-1(b.1(a.0(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.0-0(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.0-1(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.0-1(x3, x0))
p.0-0(p.0-1(b.1(a.0(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.0-0(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.0-1(x3, x0))
p.0-0(p.0-1(b.1(a.0(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.1-0(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.0-0(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.0-0(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.0-1(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.1-1(x3, x0))
p.0-0(p.0-0(b.1(a.1(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.1-1(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.1(x1)))), p.1-1(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.0(x1)))), p.1-0(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.1-0(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.0-0(x3, x0))
p.0-0(p.0-1(b.1(a.0(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.1-0(x3, x0))
p.0-0(p.0-1(b.1(a.1(x0)), x1), p.0-1(x2, x3)) → p.0-0(p.0-1(b.0(x2), a.1(a.0(b.1(x1)))), p.1-1(x3, x0))
p.0-0(p.0-0(b.1(a.0(x0)), x1), p.1-1(x2, x3)) → p.0-0(p.0-1(b.1(x2), a.1(a.0(b.0(x1)))), p.1-0(x3, x0))

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

(17) UsableRulesReductionPairsProof (EQUIVALENT transformation)

By using the usable rules with reduction pair processor [LPAR04] with a polynomial ordering [POLO], all dependency pairs and the corresponding usable rules [FROCOS05] can be oriented non-strictly. All non-usable rules are removed, and those dependency pairs and usable rules that have been oriented strictly or contain non-usable symbols in their left-hand side are removed as well.

No dependency pairs are removed.

No rules are removed from R.

Used ordering: POLO with Polynomial interpretation [POLO]:

POL(P.0-0(x1, x2)) = x1 + x2   
POL(a.0(x1)) = x1   
POL(a.1(x1)) = x1   
POL(b.1(x1)) = x1   
POL(p.0-1(x1, x2)) = x1 + x2   
POL(p.1-1(x1, x2)) = x1 + x2   

(18) Obligation:

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

P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-1(x3, x0))

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

(19) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


P.0-0(p.0-1(b.1(a.1(x0)), a.1(a.0(b.1(a.1(a.0(b.1(x1))))))), p.1-1(a.1(y_0), x3)) → P.0-0(p.0-1(b.1(a.1(y_0)), a.1(a.0(b.1(a.1(a.0(b.1(a.1(a.0(b.1(x1)))))))))), p.1-1(x3, x0))
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial interpretation [POLO]:

POL(P.0-0(x1, x2)) = x1 + x2   
POL(a.0(x1)) = 0   
POL(a.1(x1)) = 1 + x1   
POL(b.1(x1)) = x1   
POL(p.0-1(x1, x2)) = x1   
POL(p.1-1(x1, x2)) = x1 + x2   

The following usable rules [FROCOS05] were oriented: none

(20) Obligation:

Q DP problem:
P is empty.
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(21) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(22) TRUE