(0) Obligation:

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

f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
h(X) → c(n__d(X))
f(X) → n__f(X)
g(X) → n__g(X)
d(X) → n__d(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → 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:

F(f(X)) → C(n__f(n__g(n__f(X))))
C(X) → D(activate(X))
C(X) → ACTIVATE(X)
H(X) → C(n__d(X))
ACTIVATE(n__f(X)) → F(activate(X))
ACTIVATE(n__f(X)) → ACTIVATE(X)
ACTIVATE(n__g(X)) → G(X)
ACTIVATE(n__d(X)) → D(X)

The TRS R consists of the following rules:

f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
h(X) → c(n__d(X))
f(X) → n__f(X)
g(X) → n__g(X)
d(X) → n__d(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → 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 1 SCC with 4 less nodes.

(4) Obligation:

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

C(X) → ACTIVATE(X)
ACTIVATE(n__f(X)) → F(activate(X))
F(f(X)) → C(n__f(n__g(n__f(X))))
ACTIVATE(n__f(X)) → ACTIVATE(X)

The TRS R consists of the following rules:

f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
h(X) → c(n__d(X))
f(X) → n__f(X)
g(X) → n__g(X)
d(X) → n__d(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → X

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

(5) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


ACTIVATE(n__f(X)) → ACTIVATE(X)
The remaining pairs can at least be oriented weakly.
Used ordering: SCNP Order with the following components:
Level mapping:
Top level AFS:
C(x0, x1)  =  C(x0, x1)
ACTIVATE(x0, x1)  =  ACTIVATE(x0, x1)
F(x0, x1)  =  F(x0)

Tags:
C has argument tags [0,0] and root tag 0
ACTIVATE has argument tags [6,0] and root tag 0
F has argument tags [0,4] and root tag 0

Comparison: MIN
Underlying order for the size change arcs and the rules of R:
Combined order from the following AFS and order.
C(x1)  =  C(x1)
ACTIVATE(x1)  =  ACTIVATE(x1)
n__f(x1)  =  n__f(x1)
F(x1)  =  x1
activate(x1)  =  activate(x1)
f(x1)  =  f(x1)
n__g(x1)  =  n__g
g(x1)  =  g
n__d(x1)  =  n__d
d(x1)  =  d
c(x1)  =  c

Recursive path order with status [RPO].
Quasi-Precedence:
ACTIVATE1 > [nf1, activate1, f1, g, c] > C1 > [ng, nd]
ACTIVATE1 > [nf1, activate1, f1, g, c] > d > [ng, nd]

Status:
C1: [1]
ACTIVATE1: multiset
nf1: multiset
activate1: multiset
f1: multiset
ng: []
g: multiset
nd: multiset
d: multiset
c: multiset


The following usable rules [FROCOS05] were oriented:

activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → X
f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
d(X) → n__d(X)
f(X) → n__f(X)
g(X) → n__g(X)

(6) Obligation:

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

C(X) → ACTIVATE(X)
ACTIVATE(n__f(X)) → F(activate(X))
F(f(X)) → C(n__f(n__g(n__f(X))))

The TRS R consists of the following rules:

f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
h(X) → c(n__d(X))
f(X) → n__f(X)
g(X) → n__g(X)
d(X) → n__d(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → X

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

(7) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


C(X) → ACTIVATE(X)
ACTIVATE(n__f(X)) → F(activate(X))
F(f(X)) → C(n__f(n__g(n__f(X))))
The remaining pairs can at least be oriented weakly.
Used ordering: SCNP Order with the following components:
Level mapping:
Top level AFS:
C(x0, x1)  =  C(x0)
ACTIVATE(x0, x1)  =  ACTIVATE(x0, x1)
F(x0, x1)  =  F(x0)

Tags:
C has argument tags [0,4] and root tag 3
ACTIVATE has argument tags [0,3] and root tag 0
F has argument tags [2,0] and root tag 2

Comparison: MAX
Underlying order for the size change arcs and the rules of R:
Combined order from the following AFS and order.
C(x1)  =  C(x1)
ACTIVATE(x1)  =  ACTIVATE(x1)
n__f(x1)  =  n__f(x1)
F(x1)  =  F(x1)
activate(x1)  =  x1
f(x1)  =  f(x1)
n__g(x1)  =  n__g
g(x1)  =  g
n__d(x1)  =  x1
d(x1)  =  x1
c(x1)  =  c(x1)

Recursive path order with status [RPO].
Quasi-Precedence:
[C1, ACTIVATE1, F1] > [nf1, f1, c1] > [ng, g]

Status:
C1: [1]
ACTIVATE1: [1]
nf1: multiset
F1: [1]
f1: multiset
ng: multiset
g: multiset
c1: multiset


The following usable rules [FROCOS05] were oriented:

activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → X
f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
d(X) → n__d(X)
f(X) → n__f(X)
g(X) → n__g(X)

(8) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(X))
h(X) → c(n__d(X))
f(X) → n__f(X)
g(X) → n__g(X)
d(X) → n__d(X)
activate(n__f(X)) → f(activate(X))
activate(n__g(X)) → g(X)
activate(n__d(X)) → d(X)
activate(X) → X

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

(9) PisEmptyProof (EQUIVALENT transformation)

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

(10) TRUE