(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
p(p(s(x))) → p(x)
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
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:
FOO(0(x)) → P(p(p(s(s(s(p(s(x))))))))
FOO(0(x)) → P(p(s(s(s(p(s(x)))))))
FOO(0(x)) → P(s(s(s(p(s(x))))))
FOO(0(x)) → P(s(x))
FOO(s(x)) → P(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
FOO(s(x)) → P(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))
FOO(s(x)) → P(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x)))))))))))))))))))))))
FOO(s(x)) → P(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))
FOO(s(x)) → P(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x)))))))))))))))))))
FOO(s(x)) → P(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))
FOO(s(x)) → FOO(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))
FOO(s(x)) → P(p(s(s(p(s(bar(p(p(s(s(p(s(x)))))))))))))
FOO(s(x)) → P(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))
FOO(s(x)) → P(s(bar(p(p(s(s(p(s(x)))))))))
FOO(s(x)) → BAR(p(p(s(s(p(s(x)))))))
FOO(s(x)) → P(p(s(s(p(s(x))))))
FOO(s(x)) → P(s(s(p(s(x)))))
FOO(s(x)) → P(s(x))
BAR(0(x)) → P(s(s(s(x))))
BAR(s(x)) → P(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
BAR(s(x)) → P(p(s(s(foo(s(p(p(s(s(x))))))))))
BAR(s(x)) → P(s(s(foo(s(p(p(s(s(x)))))))))
BAR(s(x)) → FOO(s(p(p(s(s(x))))))
BAR(s(x)) → P(p(s(s(x))))
BAR(s(x)) → P(s(s(x)))
P(p(s(x))) → P(x)
The TRS R consists of the following rules:
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
p(p(s(x))) → p(x)
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
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 2 SCCs with 22 less nodes.
(4) Complex Obligation (AND)
(5) Obligation:
Q DP problem:
The TRS P consists of the following rules:
P(p(s(x))) → P(x)
The TRS R consists of the following rules:
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
p(p(s(x))) → p(x)
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(6) UsableRulesProof (EQUIVALENT transformation)
We can use the usable rules and reduction pair processor [LPAR04] with the Ce-compatible extension of the polynomial order that maps every function symbol to the sum of its arguments. Then, we can delete all non-usable rules [FROCOS05] from R.
(7) Obligation:
Q DP problem:
The TRS P consists of the following rules:
P(p(s(x))) → P(x)
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(8) QDPSizeChangeProof (EQUIVALENT transformation)
By using the subterm criterion [SUBTERM_CRITERION] together with the size-change analysis [AAECC05] we have proven that there are no infinite chains for this DP problem.
From the DPs we obtained the following set of size-change graphs:
- P(p(s(x))) → P(x)
The graph contains the following edges 1 > 1
(9) YES
(10) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FOO(s(x)) → BAR(p(p(s(s(p(s(x)))))))
BAR(s(x)) → FOO(s(p(p(s(s(x))))))
FOO(s(x)) → FOO(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))
The TRS R consists of the following rules:
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
p(p(s(x))) → p(x)
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(11) MNOCProof (EQUIVALENT transformation)
We use the modular non-overlap check [LPAR04] to enlarge Q to all left-hand sides of R.
(12) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FOO(s(x)) → BAR(p(p(s(s(p(s(x)))))))
BAR(s(x)) → FOO(s(p(p(s(s(x))))))
FOO(s(x)) → FOO(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))
The TRS R consists of the following rules:
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
p(p(s(x))) → p(x)
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
The set Q consists of the following terms:
foo(0(x0))
foo(s(x0))
bar(0(x0))
bar(s(x0))
p(s(x0))
p(0(x0))
We have to consider all minimal (P,Q,R)-chains.
(13) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(14) Obligation:
Q DP problem:
The TRS P consists of the following rules:
FOO(s(x)) → BAR(p(p(s(s(p(s(x)))))))
BAR(s(x)) → FOO(s(p(p(s(s(x))))))
FOO(s(x)) → FOO(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))
The TRS R consists of the following rules:
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
The set Q consists of the following terms:
foo(0(x0))
foo(s(x0))
bar(0(x0))
bar(s(x0))
p(s(x0))
p(0(x0))
We have to consider all minimal (P,Q,R)-chains.
(15) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04,JAR06].
The following pairs can be oriented strictly and are deleted.
FOO(s(x)) → BAR(p(p(s(s(p(s(x)))))))
FOO(s(x)) → FOO(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial Order [NEGPOLO,POLO] with Interpretation:
POL( p(x1) ) = max{0, x1 - 2} |
POL( 0(x1) ) = max{0, -2} |
The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented:
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
(16) Obligation:
Q DP problem:
The TRS P consists of the following rules:
BAR(s(x)) → FOO(s(p(p(s(s(x))))))
The TRS R consists of the following rules:
p(s(x)) → x
p(0(x)) → 0(s(s(s(s(x)))))
bar(0(x)) → 0(p(s(s(s(x)))))
bar(s(x)) → p(s(p(p(s(s(foo(s(p(p(s(s(x))))))))))))
foo(s(x)) → p(s(p(p(p(s(s(p(s(s(p(s(foo(p(p(s(s(p(s(bar(p(p(s(s(p(s(x))))))))))))))))))))))))))
foo(0(x)) → 0(s(p(p(p(s(s(s(p(s(x))))))))))
The set Q consists of the following terms:
foo(0(x0))
foo(s(x0))
bar(0(x0))
bar(s(x0))
p(s(x0))
p(0(x0))
We have to consider all minimal (P,Q,R)-chains.
(17) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node.
(18) TRUE