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

(0) Obligation:

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

active(f(0)) → mark(cons(0, f(s(0))))
active(f(s(0))) → mark(f(p(s(0))))
active(p(s(X))) → mark(X)
active(f(X)) → f(active(X))
active(cons(X1, X2)) → cons(active(X1), X2)
active(s(X)) → s(active(X))
active(p(X)) → p(active(X))
f(mark(X)) → mark(f(X))
cons(mark(X1), X2) → mark(cons(X1, X2))
s(mark(X)) → mark(s(X))
p(mark(X)) → mark(p(X))
proper(f(X)) → f(proper(X))
proper(0) → ok(0)
proper(cons(X1, X2)) → cons(proper(X1), proper(X2))
proper(s(X)) → s(proper(X))
proper(p(X)) → p(proper(X))
f(ok(X)) → ok(f(X))
cons(ok(X1), ok(X2)) → ok(cons(X1, X2))
s(ok(X)) → ok(s(X))
p(ok(X)) → ok(p(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))

Q is empty.

(1) QTRSToCSRProof (EQUIVALENT transformation)

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

active(f(0)) → mark(cons(0, f(s(0))))
active(f(s(0))) → mark(f(p(s(0))))
active(p(s(X))) → mark(X)
active(f(X)) → f(active(X))
active(cons(X1, X2)) → cons(active(X1), X2)
active(s(X)) → s(active(X))
active(p(X)) → p(active(X))
f(mark(X)) → mark(f(X))
cons(mark(X1), X2) → mark(cons(X1, X2))
s(mark(X)) → mark(s(X))
p(mark(X)) → mark(p(X))
proper(f(X)) → f(proper(X))
proper(0) → ok(0)
proper(cons(X1, X2)) → cons(proper(X1), proper(X2))
proper(s(X)) → s(proper(X))
proper(p(X)) → p(proper(X))
f(ok(X)) → ok(f(X))
cons(ok(X1), ok(X2)) → ok(cons(X1, X2))
s(ok(X)) → ok(s(X))
p(ok(X)) → ok(p(X))
top(mark(X)) → top(proper(X))
top(ok(X)) → top(active(X))

Q is empty.
Special symbols used for the transformation (see [GM04]):
top: top, active: active, mark: mark, ok: ok, proper: proper
The replacement map contains the following entries:

f: {1}
0: empty set
cons: {1}
s: {1}
p: {1}
The QTRS contained all rules created by the complete Giesl-Middeldorp transformation. Therefore, the inverse transformation is complete (and sound).

(2) Obligation:

Context-sensitive rewrite system:
The TRS R consists of the following rules:

f(0) → cons(0, f(s(0)))
f(s(0)) → f(p(s(0)))
p(s(X)) → X

The replacement map contains the following entries:

f: {1}
0: empty set
cons: {1}
s: {1}
p: {1}

(3) CSRRRRProof (EQUIVALENT transformation)

The following CSR is given: Context-sensitive rewrite system:
The TRS R consists of the following rules:

f(0) → cons(0, f(s(0)))
f(s(0)) → f(p(s(0)))
p(s(X)) → X

The replacement map contains the following entries:

f: {1}
0: empty set
cons: {1}
s: {1}
p: {1}
Used ordering:
Polynomial interpretation [POLO]:


POL(0) = 0   
POL(cons(x1, x2)) = x1   
POL(f(x1)) = 2 + x1   
POL(p(x1)) = 2·x1   
POL(s(x1)) = x1   
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

f(0) → cons(0, f(s(0)))


(4) Obligation:

Context-sensitive rewrite system:
The TRS R consists of the following rules:

f(s(0)) → f(p(s(0)))
p(s(X)) → X

The replacement map contains the following entries:

f: {1}
0: empty set
s: {1}
p: {1}

(5) CSRRRRProof (EQUIVALENT transformation)

The following CSR is given: Context-sensitive rewrite system:
The TRS R consists of the following rules:

f(s(0)) → f(p(s(0)))
p(s(X)) → X

The replacement map contains the following entries:

f: {1}
0: empty set
s: {1}
p: {1}
Used ordering:
Polynomial interpretation [POLO]:


POL(0) = 0   
POL(f(x1)) = x1   
POL(p(x1)) = x1   
POL(s(x1)) = 1 + x1   
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

p(s(X)) → X


(6) Obligation:

Context-sensitive rewrite system:
The TRS R consists of the following rules:

f(s(0)) → f(p(s(0)))

The replacement map contains the following entries:

f: {1}
0: empty set
s: {1}
p: {1}

(7) CSRRRRProof (EQUIVALENT transformation)

The following CSR is given: Context-sensitive rewrite system:
The TRS R consists of the following rules:

f(s(0)) → f(p(s(0)))

The replacement map contains the following entries:

f: {1}
0: empty set
s: {1}
p: {1}
Used ordering:
Matrix interpretation [MATRO] to (N^2, +, *, >=, >) :


POL(f(x1)) = 0 +
[1,1]
·x1

POL(s(x1)) =
/0\
\1/
+
/10\
\11/
·x1

POL(0) =
/1\
\1/

POL(p(x1)) =
/0\
\0/
+
/10\
\00/
·x1
With this ordering the following rules can be removed by the rule removal processor [LPAR04] because they are oriented strictly:

f(s(0)) → f(p(s(0)))


(8) Obligation:

Context-sensitive rewrite system:
R is empty.

(9) RisEmptyProof (EQUIVALENT transformation)

The CSR R is empty. Hence, termination is trivially proven.

(10) YES