YES Termination w.r.t. Q proof of Transformed_CSR_04_Ex25_Luc06_C.ari

(0) Obligation:

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

active(f(f(X))) → mark(c(f(g(f(X)))))
active(c(X)) → mark(d(X))
active(h(X)) → mark(c(d(X)))
active(f(X)) → f(active(X))
active(h(X)) → h(active(X))
f(mark(X)) → mark(f(X))
h(mark(X)) → mark(h(X))
proper(f(X)) → f(proper(X))
proper(c(X)) → c(proper(X))
proper(g(X)) → g(proper(X))
proper(d(X)) → d(proper(X))
proper(h(X)) → h(proper(X))
f(ok(X)) → ok(f(X))
c(ok(X)) → ok(c(X))
g(ok(X)) → ok(g(X))
d(ok(X)) → ok(d(X))
h(ok(X)) → ok(h(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(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(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
h(active(X)) → d(c(mark(X)))
f(active(X)) → active(f(X))
h(active(X)) → active(h(X))
mark(f(X)) → f(mark(X))
mark(h(X)) → h(mark(X))
f(proper(X)) → proper(f(X))
c(proper(X)) → proper(c(X))
g(proper(X)) → proper(g(X))
d(proper(X)) → proper(d(X))
h(proper(X)) → proper(h(X))
ok(f(X)) → f(ok(X))
ok(c(X)) → c(ok(X))
ok(g(X)) → g(ok(X))
ok(d(X)) → d(ok(X))
ok(h(X)) → h(ok(X))
mark(top(X)) → proper(top(X))
ok(top(X)) → active(top(X))

Q is empty.

(3) RFCMatchBoundsTRSProof (EQUIVALENT transformation)

Termination of the TRS R could be shown with a Match Bound [MATCHBOUNDS1,MATCHBOUNDS2] of 4. This implies Q-termination of R.
The following rules were used to construct the certificate:

f(f(active(X))) → f(g(f(c(mark(X)))))
c(active(X)) → d(mark(X))
h(active(X)) → d(c(mark(X)))
f(active(X)) → active(f(X))
h(active(X)) → active(h(X))
mark(f(X)) → f(mark(X))
mark(h(X)) → h(mark(X))
f(proper(X)) → proper(f(X))
c(proper(X)) → proper(c(X))
g(proper(X)) → proper(g(X))
d(proper(X)) → proper(d(X))
h(proper(X)) → proper(h(X))
ok(f(X)) → f(ok(X))
ok(c(X)) → c(ok(X))
ok(g(X)) → g(ok(X))
ok(d(X)) → d(ok(X))
ok(h(X)) → h(ok(X))
mark(top(X)) → proper(top(X))
ok(top(X)) → active(top(X))

The certificate found is represented by the following graph.

The certificate consists of the following enumerated nodes:

1, 4, 10, 11, 12, 13, 14, 22, 24, 25, 26, 27, 28, 29, 32, 34, 35, 36, 37, 38, 39, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 64, 65, 66, 67, 71, 72, 73, 75, 78, 80, 84, 85, 86, 87, 91

Node 1 is start node and node 4 is final node.

Those nodes are connected through the following edges:

  • 1 to 10 labelled f_1(0), c_1(0), g_1(0), d_1(0), h_1(0)
  • 1 to 13 labelled d_1(0), f_1(0), h_1(0)
  • 1 to 12 labelled d_1(0)
  • 1 to 14 labelled active_1(0), proper_1(0)
  • 1 to 34 labelled active_1(1), proper_1(1)
  • 1 to 35 labelled d_1(1)
  • 1 to 36 labelled d_1(1)
  • 1 to 38 labelled proper_1(1)
  • 1 to 53 labelled f_1(1)
  • 1 to 64 labelled proper_1(2)
  • 4 to 4 labelled #_1(0)
  • 10 to 11 labelled g_1(0)
  • 10 to 4 labelled ok_1(0)
  • 10 to 22 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)
  • 10 to 24 labelled active_1(1)
  • 10 to 46 labelled active_1(2)
  • 10 to 47 labelled d_1(2)
  • 10 to 48 labelled d_1(2)
  • 10 to 57 labelled f_1(2)
  • 10 to 65 labelled proper_1(1)
  • 10 to 71 labelled proper_1(3)
  • 10 to 78 labelled proper_1(2)
  • 11 to 12 labelled f_1(0)
  • 11 to 45 labelled proper_1(1)
  • 12 to 13 labelled c_1(0)
  • 12 to 39 labelled proper_1(1)
  • 13 to 4 labelled mark_1(0)
  • 13 to 25 labelled f_1(1), h_1(1)
  • 13 to 24 labelled proper_1(1)
  • 13 to 46 labelled proper_1(2)
  • 14 to 4 labelled f_1(0), h_1(0), c_1(0), g_1(0), d_1(0), top_1(0)
  • 14 to 26 labelled f_1(1)
  • 14 to 32 labelled active_1(1), proper_1(1)
  • 14 to 28 labelled d_1(1)
  • 14 to 25 labelled d_1(1)
  • 14 to 50 labelled proper_1(2)
  • 22 to 4 labelled ok_1(1)
  • 22 to 22 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)
  • 22 to 24 labelled active_1(1)
  • 22 to 46 labelled active_1(2)
  • 22 to 47 labelled d_1(2)
  • 22 to 48 labelled d_1(2)
  • 22 to 57 labelled f_1(2)
  • 22 to 71 labelled proper_1(3)
  • 22 to 78 labelled proper_1(2)
  • 24 to 4 labelled top_1(1)
  • 25 to 4 labelled mark_1(1)
  • 25 to 25 labelled f_1(1), h_1(1)
  • 25 to 24 labelled proper_1(1)
  • 25 to 46 labelled proper_1(2)
  • 26 to 27 labelled g_1(1)
  • 26 to 72 labelled proper_1(2)
  • 27 to 28 labelled f_1(1)
  • 27 to 66 labelled proper_1(2)
  • 28 to 29 labelled c_1(1)
  • 28 to 51 labelled proper_1(2)
  • 29 to 4 labelled mark_1(1)
  • 29 to 25 labelled f_1(1), h_1(1)
  • 29 to 24 labelled proper_1(1)
  • 29 to 46 labelled proper_1(2)
  • 32 to 4 labelled f_1(1), h_1(1), c_1(1), g_1(1), d_1(1)
  • 32 to 26 labelled f_1(1)
  • 32 to 32 labelled active_1(1), proper_1(1)
  • 32 to 28 labelled d_1(1)
  • 32 to 25 labelled d_1(1)
  • 32 to 50 labelled proper_1(2)
  • 34 to 24 labelled f_1(1), h_1(1)
  • 34 to 39 labelled d_1(1)
  • 34 to 46 labelled f_1(1), h_1(1), d_1(1)
  • 34 to 65 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)
  • 34 to 71 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)
  • 34 to 78 labelled f_1(1), c_1(1), g_1(1), d_1(1), h_1(1)
  • 35 to 24 labelled mark_1(1)
  • 35 to 52 labelled proper_1(2)
  • 35 to 46 labelled mark_1(1)
  • 35 to 47 labelled f_1(2), h_1(2)
  • 35 to 80 labelled proper_1(3)
  • 36 to 37 labelled c_1(1)
  • 36 to 67 labelled proper_1(2)
  • 37 to 24 labelled mark_1(1)
  • 37 to 52 labelled proper_1(2)
  • 37 to 46 labelled mark_1(1)
  • 37 to 47 labelled f_1(2), h_1(2)
  • 37 to 80 labelled proper_1(3)
  • 38 to 24 labelled d_1(1)
  • 39 to 24 labelled c_1(1)
  • 39 to 46 labelled c_1(1)
  • 45 to 39 labelled f_1(1)
  • 46 to 24 labelled f_1(2), h_1(2)
  • 46 to 46 labelled f_1(2), h_1(2)
  • 47 to 24 labelled mark_1(2)
  • 47 to 46 labelled mark_1(2)
  • 47 to 52 labelled proper_1(2)
  • 47 to 73 labelled f_1(3), h_1(3)
  • 47 to 80 labelled proper_1(3)
  • 47 to 91 labelled proper_1(4)
  • 48 to 49 labelled c_1(2)
  • 48 to 75 labelled proper_1(3)
  • 49 to 24 labelled mark_1(2)
  • 49 to 46 labelled mark_1(2)
  • 49 to 52 labelled proper_1(2)
  • 49 to 73 labelled f_1(3), h_1(3)
  • 49 to 80 labelled proper_1(3)
  • 49 to 91 labelled proper_1(4)
  • 50 to 24 labelled d_1(2)
  • 50 to 46 labelled d_1(2)
  • 50 to 51 labelled d_1(2)
  • 50 to 72 labelled f_1(2)
  • 51 to 24 labelled c_1(2)
  • 51 to 46 labelled c_1(2)
  • 52 to 4 labelled top_1(2)
  • 53 to 54 labelled g_1(1)
  • 53 to 86 labelled proper_1(2)
  • 54 to 55 labelled f_1(1)
  • 54 to 84 labelled proper_1(2)
  • 55 to 56 labelled c_1(1)
  • 55 to 67 labelled proper_1(2)
  • 56 to 24 labelled mark_1(1)
  • 56 to 52 labelled proper_1(2)
  • 56 to 46 labelled mark_1(1)
  • 56 to 47 labelled f_1(2), h_1(2)
  • 56 to 80 labelled proper_1(3)
  • 57 to 58 labelled g_1(2)
  • 57 to 87 labelled proper_1(3)
  • 58 to 59 labelled f_1(2)
  • 58 to 85 labelled proper_1(3)
  • 59 to 60 labelled c_1(2)
  • 59 to 75 labelled proper_1(3)
  • 60 to 24 labelled mark_1(2)
  • 60 to 52 labelled proper_1(2)
  • 60 to 46 labelled mark_1(2)
  • 60 to 73 labelled f_1(3), h_1(3)
  • 60 to 80 labelled proper_1(3)
  • 60 to 91 labelled proper_1(4)
  • 64 to 52 labelled d_1(2)
  • 64 to 67 labelled d_1(2)
  • 64 to 80 labelled d_1(2)
  • 64 to 86 labelled f_1(2)
  • 65 to 45 labelled g_1(1)
  • 66 to 51 labelled f_1(2)
  • 67 to 52 labelled c_1(2)
  • 67 to 80 labelled c_1(2)
  • 71 to 52 labelled d_1(3)
  • 71 to 75 labelled d_1(3)
  • 71 to 80 labelled d_1(3)
  • 71 to 87 labelled f_1(3)
  • 71 to 91 labelled d_1(3)
  • 72 to 66 labelled g_1(2)
  • 73 to 24 labelled mark_1(3)
  • 73 to 46 labelled mark_1(3)
  • 73 to 73 labelled f_1(3), h_1(3)
  • 73 to 52 labelled proper_1(2)
  • 73 to 80 labelled proper_1(3)
  • 73 to 91 labelled proper_1(4)
  • 75 to 52 labelled c_1(3)
  • 75 to 80 labelled c_1(3)
  • 75 to 91 labelled c_1(3)
  • 78 to 71 labelled f_1(2), c_1(2), g_1(2), d_1(2), h_1(2)
  • 78 to 78 labelled f_1(2), c_1(2), g_1(2), d_1(2), h_1(2)
  • 80 to 52 labelled f_1(3), h_1(3)
  • 80 to 80 labelled f_1(3), h_1(3)
  • 80 to 91 labelled f_1(3), h_1(3)
  • 84 to 67 labelled f_1(2)
  • 85 to 75 labelled f_1(3)
  • 86 to 84 labelled g_1(2)
  • 87 to 85 labelled g_1(3)
  • 91 to 80 labelled f_1(4), h_1(4)
  • 91 to 91 labelled f_1(4), h_1(4)

(4) YES