(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) QTRS Reverse (EQUIVALENT transformation)

We applied the QTRS Reverse Processor [REVERSE].

(2) Obligation:

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

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

Q is empty.

(3) QTRS Reverse (EQUIVALENT transformation)

We applied the QTRS Reverse Processor [REVERSE].

(4) Obligation:

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

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

Q is empty.

(5) QTRSRRRProof (EQUIVALENT transformation)

Used ordering:
Polynomial interpretation [POLO]:

POL(activate(x1)) = x1   
POL(c(x1)) = x1   
POL(d(x1)) = x1   
POL(f(x1)) = x1   
POL(g(x1)) = x1   
POL(h(x1)) = 1 + x1   
POL(n__d(x1)) = x1   
POL(n__f(x1)) = x1   
POL(n__g(x1)) = x1   
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

h(X) → c(n__d(X))


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

(7) DependencyPairsProof (EQUIVALENT transformation)

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

(8) 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)
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))
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) DependencyGraphProof (EQUIVALENT transformation)

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

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

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

ACTIVATE(n__f(X)) → ACTIVATE(X)


Used ordering: Polynomial interpretation [POLO]:

POL(ACTIVATE(x1)) = x1   
POL(C(x1)) = x1   
POL(F(x1)) = 1 + x1   
POL(activate(x1)) = x1   
POL(c(x1)) = x1   
POL(d(x1)) = x1   
POL(f(x1)) = 1 + x1   
POL(g(x1)) = x1   
POL(n__d(x1)) = x1   
POL(n__f(x1)) = 1 + x1   
POL(n__g(x1)) = x1   

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

(13) RFCMatchBoundsDPProof (EQUIVALENT transformation)

Finiteness of the DP problem can be shown by a matchbound of 4.
As the DP problem is minimal we only have to initialize the certificate graph by the rules of P:

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

To find matches we regarded all rules of R and P:

f(f(X)) → c(n__f(n__g(n__f(X))))
c(X) → d(activate(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
C(X) → ACTIVATE(X)
ACTIVATE(n__f(X)) → F(activate(X))
F(f(X)) → C(n__f(n__g(n__f(X))))

The certificate found is represented by the following graph.

The certificate consists of the following enumerated nodes:

10131941, 10131942, 10131943, 10131944, 10131945, 10131946, 10131947, 10131948, 10131949, 10131950, 10131951, 10131952, 10131953, 10131954, 10131957, 10131955, 10131956, 10131958, 10131959, 10131960, 10131961, 10131962

Node 10131941 is start node and node 10131942 is final node.

Those nodes are connect through the following edges:

  • 10131941 to 10131943 labelled F_1(0)
  • 10131941 to 10131944 labelled C_1(0), ACTIVATE_1(1)
  • 10131941 to 10131942 labelled ACTIVATE_1(0)
  • 10131941 to 10131947 labelled F_1(1)
  • 10131941 to 10131949 labelled C_1(1), ACTIVATE_1(2)
  • 10131941 to 10131955 labelled C_1(2), ACTIVATE_1(3)
  • 10131941 to 10131960 labelled F_1(2)
  • 10131941 to 10131962 labelled F_1(3)
  • 10131942 to 10131942 labelled #_1(0)
  • 10131943 to 10131942 labelled activate_1(0), g_1(1), ACTIVATE_1(1), n__d_1(1), f_1(1), c_1(1), n__f_1(1), n__g_1(1), C_1(1), d_1(1), F_1(1), activate_1(1), n__d_1(2), ACTIVATE_1(2), n__f_1(2), n__g_1(2)
  • 10131943 to 10131947 labelled f_1(1), n__f_1(2)
  • 10131943 to 10131948 labelled d_1(2), n__d_1(3)
  • 10131943 to 10131943 labelled f_1(1), F_1(1), n__f_1(2)
  • 10131943 to 10131949 labelled c_1(1), C_1(1), ACTIVATE_1(2)
  • 10131943 to 10131952 labelled C_1(2), c_1(2), ACTIVATE_1(3)
  • 10131943 to 10131955 labelled c_1(2), C_1(2), ACTIVATE_1(3)
  • 10131943 to 10131959 labelled d_1(3), n__d_1(4)
  • 10131943 to 10131958 labelled d_1(3), n__d_1(4)
  • 10131943 to 10131960 labelled F_1(2)
  • 10131943 to 10131961 labelled F_1(3)
  • 10131943 to 10131962 labelled F_1(3)
  • 10131944 to 10131945 labelled n__f_1(0)
  • 10131945 to 10131946 labelled n__g_1(0)
  • 10131946 to 10131942 labelled n__f_1(0)
  • 10131947 to 10131942 labelled activate_1(1), g_1(1), ACTIVATE_1(1), n__d_1(1), f_1(1), c_1(1), n__f_1(1), n__g_1(1), C_1(1), d_1(1), F_1(1), n__d_1(2), n__f_1(2), ACTIVATE_1(2), n__g_1(2)
  • 10131947 to 10131945 labelled activate_1(1)
  • 10131947 to 10131943 labelled f_1(1), n__f_1(2), F_1(1)
  • 10131947 to 10131948 labelled d_1(2), n__d_1(3)
  • 10131947 to 10131952 labelled c_1(2), C_1(2), ACTIVATE_1(3)
  • 10131947 to 10131946 labelled g_1(1), n__g_1(1), n__g_1(2)
  • 10131947 to 10131955 labelled c_1(2), C_1(2), ACTIVATE_1(3)
  • 10131947 to 10131949 labelled c_1(1), C_1(1), ACTIVATE_1(2)
  • 10131947 to 10131958 labelled d_1(3), n__d_1(4)
  • 10131947 to 10131959 labelled d_1(3), n__d_1(4)
  • 10131947 to 10131960 labelled F_1(2)
  • 10131947 to 10131961 labelled F_1(3)
  • 10131947 to 10131962 labelled F_1(3)
  • 10131948 to 10131942 labelled activate_1(2), g_1(1), ACTIVATE_1(1), n__d_1(1), f_1(1), c_1(1), n__f_1(1), n__g_1(1), C_1(1), d_1(1), F_1(1), activate_1(1), ACTIVATE_1(2), n__d_1(2), n__g_1(2), n__f_1(2)
  • 10131948 to 10131949 labelled activate_1(2), C_1(1), c_1(1), ACTIVATE_1(2)
  • 10131948 to 10131943 labelled f_1(1), n__f_1(2), F_1(1)
  • 10131948 to 10131948 labelled d_1(2), n__d_1(3)
  • 10131948 to 10131952 labelled c_1(2), C_1(2), ACTIVATE_1(3)
  • 10131948 to 10131950 labelled n__f_1(2)
  • 10131948 to 10131960 labelled f_1(2), n__f_1(3), F_1(2)
  • 10131948 to 10131955 labelled c_1(2), C_1(2), ACTIVATE_1(3)
  • 10131948 to 10131958 labelled d_1(3), n__d_1(4)
  • 10131948 to 10131959 labelled d_1(3), n__d_1(4)
  • 10131948 to 10131961 labelled F_1(3)
  • 10131948 to 10131962 labelled F_1(3)
  • 10131949 to 10131950 labelled n__f_1(1)
  • 10131950 to 10131951 labelled n__g_1(1)
  • 10131951 to 10131947 labelled n__f_1(1)
  • 10131951 to 10131942 labelled n__f_1(1)
  • 10131951 to 10131943 labelled n__f_1(1)
  • 10131952 to 10131953 labelled n__f_1(2)
  • 10131953 to 10131954 labelled n__g_1(2)
  • 10131954 to 10131947 labelled n__f_1(2)
  • 10131957 to 10131942 labelled n__f_1(2)
  • 10131957 to 10131943 labelled n__f_1(2)
  • 10131955 to 10131956 labelled n__f_1(2)
  • 10131956 to 10131957 labelled n__g_1(2)
  • 10131958 to 10131952 labelled activate_1(3)
  • 10131958 to 10131953 labelled n__f_1(3)
  • 10131958 to 10131961 labelled f_1(3), n__f_1(4)
  • 10131959 to 10131955 labelled activate_1(3)
  • 10131959 to 10131956 labelled n__f_1(3)
  • 10131959 to 10131962 labelled f_1(3), n__f_1(4)
  • 10131960 to 10131950 labelled activate_1(2)
  • 10131960 to 10131951 labelled g_1(2), n__g_1(2), n__g_1(3)
  • 10131961 to 10131953 labelled activate_1(3)
  • 10131961 to 10131954 labelled g_1(3), n__g_1(3), n__g_1(4)
  • 10131962 to 10131956 labelled activate_1(3)
  • 10131962 to 10131957 labelled g_1(3), n__g_1(3), n__g_1(4)

(14) TRUE