YES Termination w.r.t. Q proof of /home/cern_httpd/provide/research/cycsrs/tpdb/TPDB-d9b80194f163/SRS_Standard/Secret_06_SRS/aprove07.srs

(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( BAR(x1) ) = x1 + 2

POL( FOO(x1) ) = x1 + 2

POL( p(x1) ) = max{0, x1 - 2}

POL( s(x1) ) = x1 + 2

POL( 0(x1) ) = max{0, -2}

POL( bar(x1) ) = x1 + 1

POL( foo(x1) ) = 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