YES

The TRS could be proven terminating. The proof took 26101 ms.

The following DP Processors were used


Problem 1 was processed with processor DependencyGraph (735ms).
 | – Problem 2 was processed with processor SubtermCriterion (3ms).
 |    | – Problem 4 was processed with processor SubtermCriterion (0ms).
 | – Problem 3 was processed with processor PolynomialLinearRange4iUR (6239ms).
 |    | – Problem 5 was processed with processor PolynomialLinearRange4iUR (5690ms).
 |    |    | – Problem 6 was processed with processor PolynomialLinearRange4iUR (4181ms).
 |    |    |    | – Problem 7 was processed with processor PolynomialLinearRange4iUR (5846ms).
 |    |    |    |    | – Problem 8 was processed with processor DependencyGraph (8ms).
 |    |    |    |    |    | – Problem 9 was processed with processor PolynomialLinearRange4iUR (1043ms).
 |    |    |    |    |    |    | – Problem 10 was processed with processor PolynomialLinearRange4iUR (1019ms).
 |    |    |    |    |    |    |    | – Problem 11 was processed with processor PolynomialLinearRange4iUR (981ms).
 |    |    |    |    |    |    |    |    | – Problem 12 was processed with processor DependencyGraph (0ms).

Problem 1: DependencyGraph



Dependency Pair Problem

Dependency Pairs

intersect'ii'in#(cons(X0, Xs), Ys) → u'2'1#(intersect'ii'in(Xs, Ys))reduce'ii'in#(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1#(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
reduce'ii'in#(sequent(Fs, cons(iff(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1#(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))
intersect'ii'in#(Xs, cons(X0, Ys)) → u'1'1#(intersect'ii'in(Xs, Ys))u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)
reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1#(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1#(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
intersect'ii'in#(cons(X0, Xs), Ys) → intersect'ii'in#(Xs, Ys)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
reduce'ii'in#(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → reduce'ii'in#(sequent(nil, Gs), sequent(Left, cons(p(V), Right)))reduce'ii'in#(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1#(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))
reduce'ii'in#(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → reduce'ii'in#(sequent(Fs, Gs), sequent(cons(p(V), Left), Right))reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1#(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))
reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF)reduce'ii'in#(sequent(nil, nil), sequent(F1, F2)) → intersect'ii'in#(F1, F2)
u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2#(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1#(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)tautology'i'in#(F) → reduce'ii'in#(sequent(nil, cons(F, nil)), sequent(nil, nil))
reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1#(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))reduce'ii'in#(sequent(cons(iff(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF)
reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)reduce'ii'in#(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1#(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
reduce'ii'in#(sequent(nil, nil), sequent(F1, F2)) → u'15'1#(intersect'ii'in(F1, F2))tautology'i'in#(F) → u'16'1#(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2#(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))
reduce'ii'in#(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1#(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF)
intersect'ii'in#(Xs, cons(X0, Ys)) → intersect'ii'in#(Xs, Ys)u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


The following SCCs where found

intersect'ii'in#(cons(X0, Xs), Ys) → intersect'ii'in#(Xs, Ys)intersect'ii'in#(Xs, cons(X0, Ys)) → intersect'ii'in#(Xs, Ys)

reduce'ii'in#(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → reduce'ii'in#(sequent(Fs, Gs), sequent(cons(p(V), Left), Right))reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF)
reduce'ii'in#(sequent(Fs, cons(iff(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)
reduce'ii'in#(sequent(cons(iff(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)
u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)
reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
reduce'ii'in#(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → reduce'ii'in#(sequent(nil, Gs), sequent(Left, cons(p(V), Right)))u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Problem 2: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

intersect'ii'in#(cons(X0, Xs), Ys) → intersect'ii'in#(Xs, Ys)intersect'ii'in#(Xs, cons(X0, Ys)) → intersect'ii'in#(Xs, Ys)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

intersect'ii'in#(cons(X0, Xs), Ys) → intersect'ii'in#(Xs, Ys)

Problem 4: SubtermCriterion



Dependency Pair Problem

Dependency Pairs

intersect'ii'in#(Xs, cons(X0, Ys)) → intersect'ii'in#(Xs, Ys)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, x'2a, u'11'1, sequent, intersect'ii'out, u'5'1, u'14'1, u'9'1, u'4'1, u'12'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, nil, u'8'1

Strategy


Projection

The following projection was used:

Thus, the following dependency pairs are removed:

intersect'ii'in#(Xs, cons(X0, Ys)) → intersect'ii'in#(Xs, Ys)

Problem 3: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

reduce'ii'in#(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → reduce'ii'in#(sequent(Fs, Gs), sequent(cons(p(V), Left), Right))reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF)
reduce'ii'in#(sequent(Fs, cons(iff(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF)reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)
reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)
reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)
reduce'ii'in#(sequent(cons(iff(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)
u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)
reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
reduce'ii'in#(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → reduce'ii'in#(sequent(nil, Gs), sequent(Left, cons(p(V), Right)))u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


Polynomial Interpretation

Improved Usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

reduce'ii'in#(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → reduce'ii'in#(sequent(Fs, Gs), sequent(cons(p(V), Left), Right))reduce'ii'in#(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → reduce'ii'in#(sequent(nil, Gs), sequent(Left, cons(p(V), Right)))

Problem 5: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF)reduce'ii'in#(sequent(Fs, cons(iff(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF)
reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)reduce'ii'in#(sequent(cons(iff(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF)
reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, x'2a, u'11'1, sequent, intersect'ii'out, u'5'1, u'14'1, u'9'1, u'4'1, u'12'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, nil, u'8'1

Strategy


Polynomial Interpretation

Improved Usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

reduce'ii'in#(sequent(Fs, cons(iff(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF)reduce'ii'in#(sequent(cons(iff(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF)

Problem 6: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF)reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)
u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)
reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)
reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


Polynomial Interpretation

Improved Usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

reduce'ii'in#(sequent(Fs, cons(if(A, B), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF)reduce'ii'in#(sequent(cons(if(A, B), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF)

Problem 7: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)
reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)
reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, x'2a, u'11'1, sequent, intersect'ii'out, u'5'1, u'14'1, u'9'1, u'4'1, u'12'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, nil, u'8'1

Strategy


Polynomial Interpretation

Improved Usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

reduce'ii'in#(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, cons(F2, Fs)), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1#(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)
reduce'ii'in#(sequent(cons(x'2d(F1), Fs), Gs), NF) → reduce'ii'in#(sequent(Fs, cons(F1, Gs)), NF)reduce'ii'in#(sequent(Fs, cons(x'2d(G1), Gs)), NF) → reduce'ii'in#(sequent(cons(G1, Fs), Gs), NF)
reduce'ii'in#(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, Gs)), NF)

Problem 8: DependencyGraph



Dependency Pair Problem

Dependency Pairs

u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)
u'12'1#(reduce'ii'out, Fs, G2, Gs, NF) → reduce'ii'in#(sequent(Fs, cons(G2, Gs)), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


The following SCCs where found

u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)

Problem 9: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


Polynomial Interpretation

Improved Usable rules

reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))reduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'5'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))u'11'1(reduce'ii'out) → reduce'ii'out
u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))reduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'8'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'7'1(reduce'ii'out) → reduce'ii'outu'14'1(reduce'ii'out) → reduce'ii'out
u'9'1(reduce'ii'out) → reduce'ii'outu'12'2(reduce'ii'out) → reduce'ii'out
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))
reduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))reduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'10'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))
u'13'1(reduce'ii'out) → reduce'ii'outu'6'2(reduce'ii'out) → reduce'ii'out
u'15'1(intersect'ii'out) → reduce'ii'outu'3'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)u'4'1(reduce'ii'out) → reduce'ii'out

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → reduce'ii'in#(sequent(cons(F1, Fs), Gs), NF)

Problem 10: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)
reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, x'2a, u'11'1, sequent, intersect'ii'out, u'5'1, u'14'1, u'9'1, u'4'1, u'12'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, nil, u'8'1

Strategy


Polynomial Interpretation

Improved Usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

reduce'ii'in#(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → reduce'ii'in#(sequent(Fs, cons(G1, cons(G2, Gs))), NF)

Problem 11: PolynomialLinearRange4iUR



Dependency Pair Problem

Dependency Pairs

u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, u'11'1, x'2a, sequent, intersect'ii'out, u'5'1, u'9'1, u'14'1, u'12'1, u'4'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, u'8'1, nil

Strategy


Polynomial Interpretation

Improved Usable rules

The following dependency pairs are strictly oriented by an ordering on the given polynomial interpretation, thus they are removed:

u'6'1#(reduce'ii'out, F2, Fs, Gs, NF) → reduce'ii'in#(sequent(cons(F2, Fs), Gs), NF)

Problem 12: DependencyGraph



Dependency Pair Problem

Dependency Pairs

reduce'ii'in#(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1#(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)

Rewrite Rules

intersect'ii'in(cons(X, X0), cons(X, X1)) → intersect'ii'outintersect'ii'in(Xs, cons(X0, Ys)) → u'1'1(intersect'ii'in(Xs, Ys))
u'1'1(intersect'ii'out) → intersect'ii'outintersect'ii'in(cons(X0, Xs), Ys) → u'2'1(intersect'ii'in(Xs, Ys))
u'2'1(intersect'ii'out) → intersect'ii'outreduce'ii'in(sequent(cons(if(A, B), Fs), Gs), NF) → u'3'1(reduce'ii'in(sequent(cons(x'2b(x'2d(B), A), Fs), Gs), NF))
u'3'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(iff(A, B), Fs), Gs), NF) → u'4'1(reduce'ii'in(sequent(cons(x'2a(if(A, B), if(B, A)), Fs), Gs), NF))
u'4'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2a(F1, F2), Fs), Gs), NF) → u'5'1(reduce'ii'in(sequent(cons(F1, cons(F2, Fs)), Gs), NF))
u'5'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(cons(x'2b(F1, F2), Fs), Gs), NF) → u'6'1(reduce'ii'in(sequent(cons(F1, Fs), Gs), NF), F2, Fs, Gs, NF)
u'6'1(reduce'ii'out, F2, Fs, Gs, NF) → u'6'2(reduce'ii'in(sequent(cons(F2, Fs), Gs), NF))u'6'2(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(x'2d(F1), Fs), Gs), NF) → u'7'1(reduce'ii'in(sequent(Fs, cons(F1, Gs)), NF))u'7'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(if(A, B), Gs)), NF) → u'8'1(reduce'ii'in(sequent(Fs, cons(x'2b(x'2d(B), A), Gs)), NF))u'8'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(iff(A, B), Gs)), NF) → u'9'1(reduce'ii'in(sequent(Fs, cons(x'2a(if(A, B), if(B, A)), Gs)), NF))u'9'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(cons(p(V), Fs), Gs), sequent(Left, Right)) → u'10'1(reduce'ii'in(sequent(Fs, Gs), sequent(cons(p(V), Left), Right)))u'10'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2b(G1, G2), Gs)), NF) → u'11'1(reduce'ii'in(sequent(Fs, cons(G1, cons(G2, Gs))), NF))u'11'1(reduce'ii'out) → reduce'ii'out
reduce'ii'in(sequent(Fs, cons(x'2a(G1, G2), Gs)), NF) → u'12'1(reduce'ii'in(sequent(Fs, cons(G1, Gs)), NF), Fs, G2, Gs, NF)u'12'1(reduce'ii'out, Fs, G2, Gs, NF) → u'12'2(reduce'ii'in(sequent(Fs, cons(G2, Gs)), NF))
u'12'2(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(Fs, cons(x'2d(G1), Gs)), NF) → u'13'1(reduce'ii'in(sequent(cons(G1, Fs), Gs), NF))
u'13'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, cons(p(V), Gs)), sequent(Left, Right)) → u'14'1(reduce'ii'in(sequent(nil, Gs), sequent(Left, cons(p(V), Right))))
u'14'1(reduce'ii'out) → reduce'ii'outreduce'ii'in(sequent(nil, nil), sequent(F1, F2)) → u'15'1(intersect'ii'in(F1, F2))
u'15'1(intersect'ii'out) → reduce'ii'outtautology'i'in(F) → u'16'1(reduce'ii'in(sequent(nil, cons(F, nil)), sequent(nil, nil)))
u'16'1(reduce'ii'out) → tautology'i'out

Original Signature

Termination of terms over the following signature is verified: x'2b, x'2a, u'11'1, sequent, intersect'ii'out, u'5'1, u'14'1, u'9'1, u'4'1, u'12'1, tautology'i'out, u'12'2, u'10'1, tautology'i'in, if, u'6'2, u'6'1, intersect'ii'in, cons, u'2'1, reduce'ii'in, reduce'ii'out, u'7'1, u'16'1, u'3'1, iff, u'15'1, u'13'1, p, u'1'1, x'2d, nil, u'8'1

Strategy


There are no SCCs!