(0) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(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:
MARK(f(X)) → A__F(mark(X))
MARK(f(X)) → MARK(X)
MARK(g(X)) → MARK(X)
The TRS R consists of the following rules:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(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 1 less node.
(4) Obligation:
Q DP problem:
The TRS P consists of the following rules:
MARK(g(X)) → MARK(X)
MARK(f(X)) → MARK(X)
The TRS R consists of the following rules:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(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.
MARK(g(X)) → MARK(X)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
MARK(
x1) =
MARK(
x1)
g(
x1) =
g(
x1)
f(
x1) =
x1
a__f(
x1) =
x1
a =
a
c(
x1) =
c
mark(
x1) =
x1
Recursive path order with status [RPO].
Precedence:
a > c
Status:
MARK1: [1]
g1: multiset
a: multiset
c: multiset
The following usable rules [FROCOS05] were oriented:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(X)
(6) Obligation:
Q DP problem:
The TRS P consists of the following rules:
MARK(f(X)) → MARK(X)
The TRS R consists of the following rules:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(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.
MARK(f(X)) → MARK(X)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
MARK(
x1) =
x1
f(
x1) =
f(
x1)
a__f(
x1) =
a__f(
x1)
a =
a
c(
x1) =
x1
g(
x1) =
g(
x1)
mark(
x1) =
mark(
x1)
Recursive path order with status [RPO].
Precedence:
mark1 > af1 > f1 > a
mark1 > af1 > g1
Status:
f1: [1]
af1: multiset
a: multiset
g1: multiset
mark1: multiset
The following usable rules [FROCOS05] were oriented:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(X)
(8) Obligation:
Q DP problem:
P is empty.
The TRS R consists of the following rules:
a__f(f(a)) → c(f(g(f(a))))
mark(f(X)) → a__f(mark(X))
mark(a) → a
mark(c(X)) → c(X)
mark(g(X)) → g(mark(X))
a__f(X) → f(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