Term Rewriting System R:
[x]
active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))

Innermost Termination of R to be shown.



   R
Dependency Pair Analysis



R contains the following Dependency Pairs:

ACTIVE(f(x)) -> F(f(x))
CHK(no(f(x))) -> F(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
CHK(no(f(x))) -> CHK(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x))
CHK(no(f(x))) -> MAT(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)
CHK(no(f(x))) -> F(f(f(f(f(f(f(f(f(f(X))))))))))
CHK(no(f(x))) -> F(f(f(f(f(f(f(f(f(X)))))))))
CHK(no(f(x))) -> F(f(f(f(f(f(f(f(X))))))))
CHK(no(f(x))) -> F(f(f(f(f(f(f(X)))))))
CHK(no(f(x))) -> F(f(f(f(f(f(X))))))
CHK(no(f(x))) -> F(f(f(f(f(X)))))
CHK(no(f(x))) -> F(f(f(f(X))))
CHK(no(f(x))) -> F(f(f(X)))
CHK(no(f(x))) -> F(f(X))
CHK(no(f(x))) -> F(X)
CHK(no(c)) -> ACTIVE(c)
MAT(f(x), f(y)) -> F(mat(x, y))
MAT(f(x), f(y)) -> MAT(x, y)
F(active(x)) -> ACTIVE(f(x))
F(active(x)) -> F(x)
F(no(x)) -> F(x)
F(mark(x)) -> F(x)
TP(mark(x)) -> TP(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
TP(mark(x)) -> CHK(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x))
TP(mark(x)) -> MAT(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)
TP(mark(x)) -> F(f(f(f(f(f(f(f(f(f(X))))))))))
TP(mark(x)) -> F(f(f(f(f(f(f(f(f(X)))))))))
TP(mark(x)) -> F(f(f(f(f(f(f(f(X))))))))
TP(mark(x)) -> F(f(f(f(f(f(f(X)))))))
TP(mark(x)) -> F(f(f(f(f(f(X))))))
TP(mark(x)) -> F(f(f(f(f(X)))))
TP(mark(x)) -> F(f(f(f(X))))
TP(mark(x)) -> F(f(f(X)))
TP(mark(x)) -> F(f(X))
TP(mark(x)) -> F(X)

Furthermore, R contains three SCCs.


   R
DPs
       →DP Problem 1
Argument Filtering and Ordering
       →DP Problem 2
AFS
       →DP Problem 3
Nar


Dependency Pairs:

F(mark(x)) -> F(x)
F(no(x)) -> F(x)
F(active(x)) -> F(x)


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




The following dependency pairs can be strictly oriented:

F(mark(x)) -> F(x)
F(no(x)) -> F(x)
F(active(x)) -> F(x)


There are no usable rules for innermost that need to be oriented.
Used ordering: Lexicographic Path Order with Non-Strict Precedence with Quasi Precedence:
trivial

resulting in one new DP problem.
Used Argument Filtering System:
F(x1) -> F(x1)
active(x1) -> active(x1)
mark(x1) -> mark(x1)
no(x1) -> no(x1)


   R
DPs
       →DP Problem 1
AFS
           →DP Problem 4
Dependency Graph
       →DP Problem 2
AFS
       →DP Problem 3
Nar


Dependency Pair:


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




Using the Dependency Graph resulted in no new DP problems.


   R
DPs
       →DP Problem 1
AFS
       →DP Problem 2
Argument Filtering and Ordering
       →DP Problem 3
Nar


Dependency Pair:

CHK(no(f(x))) -> CHK(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x))


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




The following dependency pair can be strictly oriented:

CHK(no(f(x))) -> CHK(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x))


The following usable rules for innermost can be oriented:

mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
active(f(x)) -> mark(f(f(x)))


Used ordering: Lexicographic Path Order with Non-Strict Precedence with Quasi Precedence:
{active, no, f, mat}

resulting in one new DP problem.
Used Argument Filtering System:
CHK(x1) -> CHK(x1)
no(x1) -> no(x1)
mat(x1, x2) -> mat(x2)
f(x1) -> f(x1)
active(x1) -> active(x1)
mark(x1) -> x1


   R
DPs
       →DP Problem 1
AFS
       →DP Problem 2
AFS
           →DP Problem 5
Dependency Graph
       →DP Problem 3
Nar


Dependency Pair:


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




Using the Dependency Graph resulted in no new DP problems.


   R
DPs
       →DP Problem 1
AFS
       →DP Problem 2
AFS
       →DP Problem 3
Narrowing Transformation


Dependency Pair:

TP(mark(x)) -> TP(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




On this DP problem, a Narrowing SCC transformation can be performed.
As a result of transforming the rule

TP(mark(x)) -> TP(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
two new Dependency Pairs are created:

TP(mark(f(y))) -> TP(chk(f(mat(f(f(f(f(f(f(f(f(f(X))))))))), y))))
TP(mark(c)) -> TP(chk(no(c)))

The transformation is resulting in one new DP problem:



   R
DPs
       →DP Problem 1
AFS
       →DP Problem 2
AFS
       →DP Problem 3
Nar
           →DP Problem 6
Narrowing Transformation


Dependency Pairs:

TP(mark(c)) -> TP(chk(no(c)))
TP(mark(f(y))) -> TP(chk(f(mat(f(f(f(f(f(f(f(f(f(X))))))))), y))))


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




On this DP problem, a Narrowing SCC transformation can be performed.
As a result of transforming the rule

TP(mark(f(y))) -> TP(chk(f(mat(f(f(f(f(f(f(f(f(f(X))))))))), y))))
no new Dependency Pairs are created.
The transformation is resulting in one new DP problem:



   R
DPs
       →DP Problem 1
AFS
       →DP Problem 2
AFS
       →DP Problem 3
Nar
           →DP Problem 6
Nar
             ...
               →DP Problem 7
Argument Filtering and Ordering


Dependency Pair:

TP(mark(c)) -> TP(chk(no(c)))


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




The following dependency pair can be strictly oriented:

TP(mark(c)) -> TP(chk(no(c)))


The following usable rules for innermost can be oriented:

chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
active(f(x)) -> mark(f(f(x)))


Used ordering: Lexicographic Path Order with Non-Strict Precedence with Quasi Precedence:
c > chk > {active, f} > no

resulting in one new DP problem.
Used Argument Filtering System:
TP(x1) -> TP(x1)
mark(x1) -> x1
chk(x1) -> chk(x1)
no(x1) -> no
f(x1) -> f
active(x1) -> active
mat(x1, x2) -> mat(x1, x2)


   R
DPs
       →DP Problem 1
AFS
       →DP Problem 2
AFS
       →DP Problem 3
Nar
           →DP Problem 6
Nar
             ...
               →DP Problem 8
Dependency Graph


Dependency Pair:


Rules:


active(f(x)) -> mark(f(f(x)))
chk(no(f(x))) -> f(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))
chk(no(c)) -> active(c)
mat(f(x), f(y)) -> f(mat(x, y))
mat(f(x), c) -> no(c)
f(active(x)) -> active(f(x))
f(no(x)) -> no(f(x))
f(mark(x)) -> mark(f(x))
tp(mark(x)) -> tp(chk(mat(f(f(f(f(f(f(f(f(f(f(X)))))))))), x)))


Strategy:

innermost




Using the Dependency Graph resulted in no new DP problems.

Innermost Termination of R successfully shown.
Duration:
0:07 minutes