YES Termination w.r.t. Q proof of /home/cern_httpd/provide/research/cycsrs/examples/collection/aa-aba-split.srs

(0) Obligation:

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

Begin(a(x)) → Wait(Right1(x))
Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Aa(Left(x)) → Left(a(x))
Ab(Left(x)) → Left(b(x))
Wait(Left(x)) → Begin(x)
a(a(x)) → a(b(a(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:

BEGIN(a(x)) → WAIT(Right1(x))
BEGIN(a(x)) → RIGHT1(x)
RIGHT1(a(End(x))) → A(b(a(End(x))))
RIGHT1(a(x)) → AA(Right1(x))
RIGHT1(a(x)) → RIGHT1(x)
RIGHT1(b(x)) → AB(Right1(x))
RIGHT1(b(x)) → RIGHT1(x)
AA(Left(x)) → A(x)
WAIT(Left(x)) → BEGIN(x)
A(a(x)) → A(b(a(x)))

The TRS R consists of the following rules:

Begin(a(x)) → Wait(Right1(x))
Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Aa(Left(x)) → Left(a(x))
Ab(Left(x)) → Left(b(x))
Wait(Left(x)) → Begin(x)
a(a(x)) → a(b(a(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 6 less nodes.

(4) Complex Obligation (AND)

(5) Obligation:

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

RIGHT1(b(x)) → RIGHT1(x)
RIGHT1(a(x)) → RIGHT1(x)

The TRS R consists of the following rules:

Begin(a(x)) → Wait(Right1(x))
Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Aa(Left(x)) → Left(a(x))
Ab(Left(x)) → Left(b(x))
Wait(Left(x)) → Begin(x)
a(a(x)) → a(b(a(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:

RIGHT1(b(x)) → RIGHT1(x)
RIGHT1(a(x)) → RIGHT1(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:

  • RIGHT1(b(x)) → RIGHT1(x)
    The graph contains the following edges 1 > 1

  • RIGHT1(a(x)) → RIGHT1(x)
    The graph contains the following edges 1 > 1

(9) YES

(10) Obligation:

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

WAIT(Left(x)) → BEGIN(x)
BEGIN(a(x)) → WAIT(Right1(x))

The TRS R consists of the following rules:

Begin(a(x)) → Wait(Right1(x))
Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Aa(Left(x)) → Left(a(x))
Ab(Left(x)) → Left(b(x))
Wait(Left(x)) → Begin(x)
a(a(x)) → a(b(a(x)))

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

(11) 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.

(12) Obligation:

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

WAIT(Left(x)) → BEGIN(x)
BEGIN(a(x)) → WAIT(Right1(x))

The TRS R consists of the following rules:

Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Ab(Left(x)) → Left(b(x))
Aa(Left(x)) → Left(a(x))
a(a(x)) → a(b(a(x)))

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

(13) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04,JAR06].


The following pairs can be oriented strictly and are deleted.


BEGIN(a(x)) → WAIT(Right1(x))
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial interpretation [POLO]:

POL(Aa(x1)) = 1 + x1   
POL(Ab(x1)) = 0   
POL(BEGIN(x1)) = x1   
POL(End(x1)) = 1 + x1   
POL(Left(x1)) = x1   
POL(Right1(x1)) = x1   
POL(WAIT(x1)) = x1   
POL(a(x1)) = 1 + x1   
POL(b(x1)) = 0   

The following usable rules [FROCOS05] with respect to the argument filtering of the ordering [JAR06] were oriented:

Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Ab(Left(x)) → Left(b(x))
Aa(Left(x)) → Left(a(x))
a(a(x)) → a(b(a(x)))

(14) Obligation:

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

WAIT(Left(x)) → BEGIN(x)

The TRS R consists of the following rules:

Right1(a(End(x))) → Left(a(b(a(End(x)))))
Right1(a(x)) → Aa(Right1(x))
Right1(b(x)) → Ab(Right1(x))
Ab(Left(x)) → Left(b(x))
Aa(Left(x)) → Left(a(x))
a(a(x)) → a(b(a(x)))

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 0 SCCs with 1 less node.

(16) TRUE