(0) Obligation:

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

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

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:

TERM_SUB(Case(m, xi, n), s) → FROZEN(m, Sum_sub(xi, s), n, s)
TERM_SUB(Case(m, xi, n), s) → SUM_SUB(xi, s)
FROZEN(m, Sum_constant(Left), n, s) → TERM_SUB(m, s)
FROZEN(m, Sum_constant(Right), n, s) → TERM_SUB(n, s)
FROZEN(m, Sum_term_var(xi), n, s) → TERM_SUB(m, s)
FROZEN(m, Sum_term_var(xi), n, s) → TERM_SUB(n, s)
TERM_SUB(Term_app(m, n), s) → TERM_SUB(m, s)
TERM_SUB(Term_app(m, n), s) → TERM_SUB(n, s)
TERM_SUB(Term_pair(m, n), s) → TERM_SUB(m, s)
TERM_SUB(Term_pair(m, n), s) → TERM_SUB(n, s)
TERM_SUB(Term_inl(m), s) → TERM_SUB(m, s)
TERM_SUB(Term_inr(m), s) → TERM_SUB(m, s)
TERM_SUB(Term_var(x), Cons_usual(y, m, s)) → TERM_SUB(Term_var(x), s)
TERM_SUB(Term_var(x), Cons_sum(xi, k, s)) → TERM_SUB(Term_var(x), s)
TERM_SUB(Term_sub(m, s), t) → TERM_SUB(m, Concat(s, t))
TERM_SUB(Term_sub(m, s), t) → CONCAT(s, t)
SUM_SUB(xi, Cons_sum(psi, k, s)) → SUM_SUB(xi, s)
SUM_SUB(xi, Cons_usual(y, m, s)) → SUM_SUB(xi, s)
CONCAT(Concat(s, t), u) → CONCAT(s, Concat(t, u))
CONCAT(Concat(s, t), u) → CONCAT(t, u)
CONCAT(Cons_usual(x, m, s), t) → TERM_SUB(m, t)
CONCAT(Cons_usual(x, m, s), t) → CONCAT(s, t)
CONCAT(Cons_sum(xi, k, s), t) → CONCAT(s, t)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

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 3 SCCs with 1 less node.

(4) Complex Obligation (AND)

(5) Obligation:

Q DP problem:
The TRS P consists of the following rules:

SUM_SUB(xi, Cons_usual(y, m, s)) → SUM_SUB(xi, s)
SUM_SUB(xi, Cons_sum(psi, k, s)) → SUM_SUB(xi, s)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(6) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


SUM_SUB(xi, Cons_usual(y, m, s)) → SUM_SUB(xi, s)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
SUM_SUB(x1, x2)  =  SUM_SUB(x1, x2)
Cons_usual(x1, x2, x3)  =  Cons_usual(x1, x2, x3)
Cons_sum(x1, x2, x3)  =  x3

Lexicographic path order with status [LPO].
Precedence:
trivial

Status:
Consusual3: [1,2,3]
SUMSUB2: [1,2]

The following usable rules [FROCOS05] were oriented: none

(7) Obligation:

Q DP problem:
The TRS P consists of the following rules:

SUM_SUB(xi, Cons_sum(psi, k, s)) → SUM_SUB(xi, s)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(8) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


SUM_SUB(xi, Cons_sum(psi, k, s)) → SUM_SUB(xi, s)
The remaining pairs can at least be oriented weakly.
Used ordering: Lexicographic path order with status [LPO].
Precedence:
Conssum3 > SUMSUB2

Status:
Conssum3: [1,2,3]
SUMSUB2: [1,2]

The following usable rules [FROCOS05] were oriented: none

(9) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(10) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(11) TRUE

(12) Obligation:

Q DP problem:
The TRS P consists of the following rules:

TERM_SUB(Term_var(x), Cons_sum(xi, k, s)) → TERM_SUB(Term_var(x), s)
TERM_SUB(Term_var(x), Cons_usual(y, m, s)) → TERM_SUB(Term_var(x), s)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(13) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


TERM_SUB(Term_var(x), Cons_sum(xi, k, s)) → TERM_SUB(Term_var(x), s)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
TERM_SUB(x1, x2)  =  TERM_SUB(x1, x2)
Term_var(x1)  =  Term_var(x1)
Cons_sum(x1, x2, x3)  =  Cons_sum(x1, x2, x3)
Cons_usual(x1, x2, x3)  =  x3

Lexicographic path order with status [LPO].
Precedence:
Termvar1 > TERMSUB2
Conssum3 > TERMSUB2

Status:
TERMSUB2: [1,2]
Conssum3: [1,2,3]
Termvar1: [1]

The following usable rules [FROCOS05] were oriented: none

(14) Obligation:

Q DP problem:
The TRS P consists of the following rules:

TERM_SUB(Term_var(x), Cons_usual(y, m, s)) → TERM_SUB(Term_var(x), s)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(15) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


TERM_SUB(Term_var(x), Cons_usual(y, m, s)) → TERM_SUB(Term_var(x), s)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
TERM_SUB(x1, x2)  =  TERM_SUB(x2)
Term_var(x1)  =  Term_var(x1)
Cons_usual(x1, x2, x3)  =  Cons_usual(x1, x2, x3)

Lexicographic path order with status [LPO].
Precedence:
TERMSUB1 > Termvar1
Consusual3 > Termvar1

Status:
TERMSUB1: [1]
Termvar1: [1]
Consusual3: [1,2,3]

The following usable rules [FROCOS05] were oriented: none

(16) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(17) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(18) TRUE

(19) Obligation:

Q DP problem:
The TRS P consists of the following rules:

FROZEN(m, Sum_constant(Left), n, s) → TERM_SUB(m, s)
TERM_SUB(Case(m, xi, n), s) → FROZEN(m, Sum_sub(xi, s), n, s)
FROZEN(m, Sum_constant(Right), n, s) → TERM_SUB(n, s)
TERM_SUB(Term_app(m, n), s) → TERM_SUB(m, s)
TERM_SUB(Term_app(m, n), s) → TERM_SUB(n, s)
TERM_SUB(Term_pair(m, n), s) → TERM_SUB(m, s)
TERM_SUB(Term_pair(m, n), s) → TERM_SUB(n, s)
TERM_SUB(Term_inl(m), s) → TERM_SUB(m, s)
TERM_SUB(Term_inr(m), s) → TERM_SUB(m, s)
TERM_SUB(Term_sub(m, s), t) → TERM_SUB(m, Concat(s, t))
TERM_SUB(Term_sub(m, s), t) → CONCAT(s, t)
CONCAT(Concat(s, t), u) → CONCAT(s, Concat(t, u))
CONCAT(Concat(s, t), u) → CONCAT(t, u)
CONCAT(Cons_usual(x, m, s), t) → TERM_SUB(m, t)
CONCAT(Cons_usual(x, m, s), t) → CONCAT(s, t)
CONCAT(Cons_sum(xi, k, s), t) → CONCAT(s, t)
FROZEN(m, Sum_term_var(xi), n, s) → TERM_SUB(m, s)
FROZEN(m, Sum_term_var(xi), n, s) → TERM_SUB(n, s)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(20) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


FROZEN(m, Sum_constant(Left), n, s) → TERM_SUB(m, s)
TERM_SUB(Case(m, xi, n), s) → FROZEN(m, Sum_sub(xi, s), n, s)
FROZEN(m, Sum_constant(Right), n, s) → TERM_SUB(n, s)
TERM_SUB(Term_app(m, n), s) → TERM_SUB(m, s)
TERM_SUB(Term_app(m, n), s) → TERM_SUB(n, s)
TERM_SUB(Term_pair(m, n), s) → TERM_SUB(m, s)
TERM_SUB(Term_pair(m, n), s) → TERM_SUB(n, s)
TERM_SUB(Term_inl(m), s) → TERM_SUB(m, s)
TERM_SUB(Term_sub(m, s), t) → TERM_SUB(m, Concat(s, t))
TERM_SUB(Term_sub(m, s), t) → CONCAT(s, t)
CONCAT(Concat(s, t), u) → CONCAT(s, Concat(t, u))
CONCAT(Concat(s, t), u) → CONCAT(t, u)
CONCAT(Cons_usual(x, m, s), t) → TERM_SUB(m, t)
CONCAT(Cons_usual(x, m, s), t) → CONCAT(s, t)
CONCAT(Cons_sum(xi, k, s), t) → CONCAT(s, t)
FROZEN(m, Sum_term_var(xi), n, s) → TERM_SUB(m, s)
FROZEN(m, Sum_term_var(xi), n, s) → TERM_SUB(n, s)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
FROZEN(x1, x2, x3, x4)  =  FROZEN(x1, x3)
Sum_constant(x1)  =  Sum_constant
Left  =  Left
TERM_SUB(x1, x2)  =  TERM_SUB(x1)
Case(x1, x2, x3)  =  Case(x1, x3)
Sum_sub(x1, x2)  =  Sum_sub(x1, x2)
Right  =  Right
Term_app(x1, x2)  =  Term_app(x1, x2)
Term_pair(x1, x2)  =  Term_pair(x1, x2)
Term_inl(x1)  =  Term_inl(x1)
Term_inr(x1)  =  x1
Term_sub(x1, x2)  =  Term_sub(x1, x2)
Concat(x1, x2)  =  Concat(x1, x2)
CONCAT(x1, x2)  =  CONCAT(x1)
Cons_usual(x1, x2, x3)  =  Cons_usual(x1, x2, x3)
Cons_sum(x1, x2, x3)  =  Cons_sum(x1, x2, x3)
Sum_term_var(x1)  =  x1
Id  =  Id
Frozen(x1, x2, x3, x4)  =  Frozen
Term_var(x1)  =  Term_var

Lexicographic path order with status [LPO].
Precedence:
Sumconstant > Termsub2 > Termapp2
Sumconstant > Termsub2 > Termvar
Left > Termsub2 > Termapp2
Left > Termsub2 > Termvar
Case2 > FROZEN2 > TERMSUB1 > Sumsub2
Case2 > FROZEN2 > TERMSUB1 > CONCAT1 > Concat2 > Conssum3
Right > Termsub2 > Termapp2
Right > Termsub2 > Termvar
Termpair2 > TERMSUB1 > Sumsub2
Termpair2 > TERMSUB1 > CONCAT1 > Concat2 > Conssum3
Termpair2 > Termsub2 > Termapp2
Termpair2 > Termsub2 > Termvar
Terminl1 > TERMSUB1 > Sumsub2
Terminl1 > TERMSUB1 > CONCAT1 > Concat2 > Conssum3
Terminl1 > Termsub2 > Termapp2
Terminl1 > Termsub2 > Termvar
Consusual3 > TERMSUB1 > Sumsub2
Consusual3 > TERMSUB1 > CONCAT1 > Concat2 > Conssum3
Consusual3 > Termsub2 > Termapp2
Consusual3 > Termsub2 > Termvar
Id > Termvar
Frozen > Termsub2 > Termapp2
Frozen > Termsub2 > Termvar

Status:
TERMSUB1: [1]
Termvar: []
Termsub2: [1,2]
Left: []
FROZEN2: [1,2]
Frozen: []
Concat2: [1,2]
Id: []
Sumconstant: []
Termpair2: [1,2]
Sumsub2: [1,2]
Case2: [1,2]
Termapp2: [1,2]
Terminl1: [1]
Right: []
Conssum3: [3,1,2]
CONCAT1: [1]
Consusual3: [2,3,1]

The following usable rules [FROCOS05] were oriented: none

(21) Obligation:

Q DP problem:
The TRS P consists of the following rules:

TERM_SUB(Term_inr(m), s) → TERM_SUB(m, s)

The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(22) QDPOrderProof (EQUIVALENT transformation)

We use the reduction pair processor [LPAR04].


The following pairs can be oriented strictly and are deleted.


TERM_SUB(Term_inr(m), s) → TERM_SUB(m, s)
The remaining pairs can at least be oriented weakly.
Used ordering: Combined order from the following AFS and order.
TERM_SUB(x1, x2)  =  x1
Term_inr(x1)  =  Term_inr(x1)

Lexicographic path order with status [LPO].
Precedence:
trivial

Status:
Terminr1: [1]

The following usable rules [FROCOS05] were oriented: none

(23) Obligation:

Q DP problem:
P is empty.
The TRS R consists of the following rules:

Term_sub(Case(m, xi, n), s) → Frozen(m, Sum_sub(xi, s), n, s)
Frozen(m, Sum_constant(Left), n, s) → Term_sub(m, s)
Frozen(m, Sum_constant(Right), n, s) → Term_sub(n, s)
Frozen(m, Sum_term_var(xi), n, s) → Case(Term_sub(m, s), xi, Term_sub(n, s))
Term_sub(Term_app(m, n), s) → Term_app(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_pair(m, n), s) → Term_pair(Term_sub(m, s), Term_sub(n, s))
Term_sub(Term_inl(m), s) → Term_inl(Term_sub(m, s))
Term_sub(Term_inr(m), s) → Term_inr(Term_sub(m, s))
Term_sub(Term_var(x), Id) → Term_var(x)
Term_sub(Term_var(x), Cons_usual(y, m, s)) → m
Term_sub(Term_var(x), Cons_usual(y, m, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_var(x), Cons_sum(xi, k, s)) → Term_sub(Term_var(x), s)
Term_sub(Term_sub(m, s), t) → Term_sub(m, Concat(s, t))
Sum_sub(xi, Id) → Sum_term_var(xi)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_constant(k)
Sum_sub(xi, Cons_sum(psi, k, s)) → Sum_sub(xi, s)
Sum_sub(xi, Cons_usual(y, m, s)) → Sum_sub(xi, s)
Concat(Concat(s, t), u) → Concat(s, Concat(t, u))
Concat(Cons_usual(x, m, s), t) → Cons_usual(x, Term_sub(m, t), Concat(s, t))
Concat(Cons_sum(xi, k, s), t) → Cons_sum(xi, k, Concat(s, t))
Concat(Id, s) → s

Q is empty.
We have to consider all minimal (P,Q,R)-chains.

(24) PisEmptyProof (EQUIVALENT transformation)

The TRS P is empty. Hence, there is no (P,Q,R) chain.

(25) TRUE