The rewrite relation of the following TRS is considered.
There are 227 ruless (increase limit for explicit display).
There are 352 ruless (increase limit for explicit display).
The dependency pairs are split into 38
components.
-
The
1st
component contains the
pair
There are 101 ruless (increase limit for explicit display).
1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[U11(x1, x2)] |
= |
2 |
[U12(x1, x2)] |
= |
2 |
[U13(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U23(x1)] |
= |
-2 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
-2 |
[U51(x1, x2)] |
= |
2 |
[U52(x1)] |
= |
0 |
[U61(x1)] |
= |
-2 |
[U71(x1)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U86(x1)] |
= |
-2 |
[U91(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[cons(x1, x2)] |
= |
2 |
[length(x1)] |
= |
2 |
[s(x1)] |
= |
1 |
[mark(x1)] |
= |
2 |
[active(x1)] |
= |
-2 |
[zeros] |
= |
2 |
[0] |
= |
0 |
[tt] |
= |
0 |
[isNatIListKind(x1)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
2 |
[isNat(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
2 |
[nil] |
= |
0 |
[mark#(x1)] |
= |
1 |
together with the usable
rulesThere are 140 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
mark#(U13(X)) |
→ |
active#(U13(mark(X))) |
(348) |
mark#(U23(X)) |
→ |
active#(U23(mark(X))) |
(359) |
mark#(U33(X)) |
→ |
active#(U33(mark(X))) |
(369) |
mark#(U46(X)) |
→ |
active#(U46(mark(X))) |
(387) |
mark#(U52(X)) |
→ |
active#(U52(mark(X))) |
(394) |
mark#(U61(X)) |
→ |
active#(U61(mark(X))) |
(397) |
mark#(U71(X)) |
→ |
active#(U71(mark(X))) |
(400) |
mark#(U86(X)) |
→ |
active#(U86(mark(X))) |
(418) |
mark#(s(X)) |
→ |
active#(s(mark(X))) |
(433) |
could be deleted.
1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[U11(x1, x2)] |
= |
2 |
[U12(x1, x2)] |
= |
2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U51(x1, x2)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U91(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 |
[length(x1)] |
= |
2 |
[mark(x1)] |
= |
-2 |
[active(x1)] |
= |
-2 |
[zeros] |
= |
2 |
[0] |
= |
0 |
[tt] |
= |
0 |
[isNatIListKind(x1)] |
= |
2 |
[U13(x1)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
2 |
[U23(x1)] |
= |
2 |
[isNat(x1)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
0 |
[isNatIList(x1)] |
= |
2 |
[U52(x1)] |
= |
-2 |
[U86(x1)] |
= |
0 |
[s(x1)] |
= |
-2 + 2 · x1
|
[U61(x1)] |
= |
2 + 2 · x1
|
[U71(x1)] |
= |
-2 |
[nil] |
= |
0 |
[mark#(x1)] |
= |
1 |
together with the usable
rulesThere are 122 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(cons(X1,X2)) |
→ |
active#(cons(mark(X1),X2)) |
(336) |
could be deleted.
1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
2 · x1
|
[mark#(x1)] |
= |
2 · x1
|
[U11(x1, x2)] |
= |
1 + 2 · x1 + 2 · x2
|
[U12(x1, x2)] |
= |
2 · x1 + 2 · x2
|
[U31(x1, x2)] |
= |
x1 + 2 · x2
|
[U32(x1, x2)] |
= |
2 · x1 + 2 · x2
|
[U43(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U44(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U52(x1)] |
= |
x1 |
[U61(x1)] |
= |
2 · x1
|
[U83(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U84(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U92(x1, x2, x3)] |
= |
1 + 2 · x1 + 2 · x2 + 2 · x3
|
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U21(x1, x2)] |
= |
2 · x1 + 2 · x2
|
[U22(x1, x2)] |
= |
2 · x1 + 2 · x2
|
[U41(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U42(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U45(x1, x2)] |
= |
x1 + 2 · x2
|
[U51(x1, x2)] |
= |
2 · x1
|
[U81(x1, x2, x3)] |
= |
2 · x1 + 2 · x2 + 2 · x3
|
[U82(x1, x2, x3)] |
= |
x1 + 2 · x2 + 2 · x3
|
[U85(x1, x2)] |
= |
x1 + 2 · x2
|
[U91(x1, x2, x3)] |
= |
1 + x1 + 2 · x2 + 2 · x3
|
[U93(x1, x2, x3)] |
= |
1 + x1 + 2 · x2
|
[U94(x1, x2)] |
= |
1 + 2 · x1 + 2 · x2
|
[length(x1)] |
= |
1 + 2 · x1
|
[cons(x1, x2)] |
= |
2 · x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[tt] |
= |
0 |
[U13(x1)] |
= |
x1 |
[isNatList(x1)] |
= |
2 · x1
|
[isNatKind(x1)] |
= |
0 |
[U23(x1)] |
= |
x1 |
[isNat(x1)] |
= |
2 · x1
|
[U33(x1)] |
= |
x1 |
[U46(x1)] |
= |
x1 |
[isNatIList(x1)] |
= |
2 · x1
|
[U86(x1)] |
= |
x1 |
[s(x1)] |
= |
x1 |
[U71(x1)] |
= |
2 · x1
|
[nil] |
= |
0 |
the
pairs
active#(U11(tt,V1)) |
→ |
mark#(U12(isNatIListKind(V1),V1)) |
(230) |
mark#(U11(X1,X2)) |
→ |
mark#(X1) |
(342) |
active#(isNat(length(V1))) |
→ |
mark#(U11(isNatIListKind(V1),V1)) |
(302) |
mark#(U91(X1,X2,X3)) |
→ |
mark#(X1) |
(423) |
mark#(U92(X1,X2,X3)) |
→ |
mark#(X1) |
(426) |
mark#(U93(X1,X2,X3)) |
→ |
mark#(X1) |
(429) |
mark#(U94(X1,X2)) |
→ |
mark#(X1) |
(432) |
mark#(length(X)) |
→ |
mark#(X) |
(438) |
could be deleted.
1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[U11(x1, x2)] |
= |
2 + x1 + 2 · x2
|
[U12(x1, x2)] |
= |
2 + 2 · x1 + x2
|
[U21(x1, x2)] |
= |
1 + 2 · x1
|
[U22(x1, x2)] |
= |
1 + 2 · x1
|
[U31(x1, x2)] |
= |
1 + 2 · x1
|
[U32(x1, x2)] |
= |
1 + 2 · x1
|
[U41(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U42(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U43(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U45(x1, x2)] |
= |
1 + 2 · x1
|
[U51(x1, x2)] |
= |
1 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U82(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U84(x1, x2, x3)] |
= |
1 + x1
|
[U85(x1, x2)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
1 |
[U94(x1, x2)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[mark(x1)] |
= |
x1 |
[cons(x1, x2)] |
= |
1 + x1
|
[active(x1)] |
= |
2 + 2 · x1
|
[zeros] |
= |
2 |
[0] |
= |
0 |
[tt] |
= |
0 |
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
1 + x1
|
[isNatList(x1)] |
= |
0 |
[isNatKind(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U33(x1)] |
= |
1 + x1
|
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
1 + x1
|
[U86(x1)] |
= |
1 + x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
1 + 2 · x1
|
[U71(x1)] |
= |
1 + x1
|
[nil] |
= |
0 |
[mark#(x1)] |
= |
-1 + x1
|
together with the usable
rulesThere are 128 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
mark#(zeros) |
→ |
active#(zeros) |
(335) |
mark#(U11(X1,X2)) |
→ |
active#(U11(mark(X1),X2)) |
(340) |
mark#(U12(X1,X2)) |
→ |
active#(U12(mark(X1),X2)) |
(344) |
mark#(U12(X1,X2)) |
→ |
mark#(X1) |
(346) |
could be deleted.
1.1.1.1.1.1.1 Dependency Graph Processor
The dependency pairs are split into 1
component.
-
The
1st
component contains the
pair
mark#(isNatIListKind(X)) |
→ |
active#(isNatIListKind(X)) |
(347) |
active#(U12(tt,V1)) |
→ |
mark#(U13(isNatList(V1))) |
(233) |
mark#(cons(X1,X2)) |
→ |
mark#(X1) |
(338) |
mark#(U13(X)) |
→ |
mark#(X) |
(350) |
mark#(isNatList(X)) |
→ |
active#(isNatList(X)) |
(351) |
active#(U21(tt,V1)) |
→ |
mark#(U22(isNatKind(V1),V1)) |
(237) |
mark#(U21(X1,X2)) |
→ |
active#(U21(mark(X1),X2)) |
(352) |
active#(U22(tt,V1)) |
→ |
mark#(U23(isNat(V1))) |
(240) |
mark#(U21(X1,X2)) |
→ |
mark#(X1) |
(354) |
mark#(U22(X1,X2)) |
→ |
active#(U22(mark(X1),X2)) |
(355) |
active#(U31(tt,V)) |
→ |
mark#(U32(isNatIListKind(V),V)) |
(244) |
mark#(U22(X1,X2)) |
→ |
mark#(X1) |
(357) |
mark#(isNatKind(X)) |
→ |
active#(isNatKind(X)) |
(358) |
active#(U32(tt,V)) |
→ |
mark#(U33(isNatList(V))) |
(247) |
mark#(U23(X)) |
→ |
mark#(X) |
(361) |
mark#(isNat(X)) |
→ |
active#(isNat(X)) |
(362) |
active#(U41(tt,V1,V2)) |
→ |
mark#(U42(isNatKind(V1),V1,V2)) |
(251) |
mark#(U31(X1,X2)) |
→ |
active#(U31(mark(X1),X2)) |
(363) |
active#(U42(tt,V1,V2)) |
→ |
mark#(U43(isNatIListKind(V2),V1,V2)) |
(254) |
mark#(U31(X1,X2)) |
→ |
mark#(X1) |
(365) |
mark#(U32(X1,X2)) |
→ |
active#(U32(mark(X1),X2)) |
(366) |
active#(U43(tt,V1,V2)) |
→ |
mark#(U44(isNatIListKind(V2),V1,V2)) |
(257) |
mark#(U32(X1,X2)) |
→ |
mark#(X1) |
(368) |
mark#(U33(X)) |
→ |
mark#(X) |
(371) |
mark#(U41(X1,X2,X3)) |
→ |
active#(U41(mark(X1),X2,X3)) |
(372) |
active#(U44(tt,V1,V2)) |
→ |
mark#(U45(isNat(V1),V2)) |
(260) |
mark#(U41(X1,X2,X3)) |
→ |
mark#(X1) |
(374) |
mark#(U42(X1,X2,X3)) |
→ |
active#(U42(mark(X1),X2,X3)) |
(375) |
active#(U45(tt,V2)) |
→ |
mark#(U46(isNatIList(V2))) |
(263) |
mark#(U42(X1,X2,X3)) |
→ |
mark#(X1) |
(377) |
mark#(U43(X1,X2,X3)) |
→ |
active#(U43(mark(X1),X2,X3)) |
(378) |
active#(U51(tt,V2)) |
→ |
mark#(U52(isNatIListKind(V2))) |
(267) |
mark#(U43(X1,X2,X3)) |
→ |
mark#(X1) |
(380) |
mark#(U44(X1,X2,X3)) |
→ |
active#(U44(mark(X1),X2,X3)) |
(381) |
active#(U81(tt,V1,V2)) |
→ |
mark#(U82(isNatKind(V1),V1,V2)) |
(273) |
mark#(U44(X1,X2,X3)) |
→ |
mark#(X1) |
(383) |
mark#(U45(X1,X2)) |
→ |
active#(U45(mark(X1),X2)) |
(384) |
active#(U82(tt,V1,V2)) |
→ |
mark#(U83(isNatIListKind(V2),V1,V2)) |
(276) |
mark#(U45(X1,X2)) |
→ |
mark#(X1) |
(386) |
mark#(U46(X)) |
→ |
mark#(X) |
(389) |
mark#(isNatIList(X)) |
→ |
active#(isNatIList(X)) |
(390) |
active#(U83(tt,V1,V2)) |
→ |
mark#(U84(isNatIListKind(V2),V1,V2)) |
(279) |
mark#(U51(X1,X2)) |
→ |
active#(U51(mark(X1),X2)) |
(391) |
active#(U84(tt,V1,V2)) |
→ |
mark#(U85(isNat(V1),V2)) |
(282) |
mark#(U51(X1,X2)) |
→ |
mark#(X1) |
(393) |
mark#(U52(X)) |
→ |
mark#(X) |
(396) |
mark#(U61(X)) |
→ |
mark#(X) |
(399) |
mark#(U71(X)) |
→ |
mark#(X) |
(402) |
mark#(U81(X1,X2,X3)) |
→ |
active#(U81(mark(X1),X2,X3)) |
(403) |
active#(U85(tt,V2)) |
→ |
mark#(U86(isNatList(V2))) |
(285) |
mark#(U81(X1,X2,X3)) |
→ |
mark#(X1) |
(405) |
mark#(U82(X1,X2,X3)) |
→ |
active#(U82(mark(X1),X2,X3)) |
(406) |
active#(U91(tt,L,N)) |
→ |
mark#(U92(isNatIListKind(L),L,N)) |
(289) |
mark#(U82(X1,X2,X3)) |
→ |
mark#(X1) |
(408) |
mark#(U83(X1,X2,X3)) |
→ |
active#(U83(mark(X1),X2,X3)) |
(409) |
active#(U92(tt,L,N)) |
→ |
mark#(U93(isNat(N),L,N)) |
(292) |
mark#(U83(X1,X2,X3)) |
→ |
mark#(X1) |
(411) |
mark#(U84(X1,X2,X3)) |
→ |
active#(U84(mark(X1),X2,X3)) |
(412) |
active#(U93(tt,L,N)) |
→ |
mark#(U94(isNatKind(N),L)) |
(295) |
mark#(U84(X1,X2,X3)) |
→ |
mark#(X1) |
(414) |
mark#(U85(X1,X2)) |
→ |
active#(U85(mark(X1),X2)) |
(415) |
active#(U94(tt,L)) |
→ |
mark#(s(length(L))) |
(298) |
mark#(U85(X1,X2)) |
→ |
mark#(X1) |
(417) |
mark#(U86(X)) |
→ |
mark#(X) |
(420) |
mark#(U91(X1,X2,X3)) |
→ |
active#(U91(mark(X1),X2,X3)) |
(421) |
active#(isNat(s(V1))) |
→ |
mark#(U21(isNatKind(V1),V1)) |
(305) |
mark#(U92(X1,X2,X3)) |
→ |
active#(U92(mark(X1),X2,X3)) |
(424) |
active#(isNatIList(V)) |
→ |
mark#(U31(isNatIListKind(V),V)) |
(308) |
mark#(U93(X1,X2,X3)) |
→ |
active#(U93(mark(X1),X2,X3)) |
(427) |
active#(isNatIList(cons(V1,V2))) |
→ |
mark#(U41(isNatKind(V1),V1,V2)) |
(312) |
mark#(U94(X1,X2)) |
→ |
active#(U94(mark(X1),X2)) |
(430) |
active#(isNatIListKind(cons(V1,V2))) |
→ |
mark#(U51(isNatKind(V1),V2)) |
(317) |
mark#(s(X)) |
→ |
mark#(X) |
(435) |
mark#(length(X)) |
→ |
active#(length(mark(X))) |
(436) |
active#(isNatKind(length(V1))) |
→ |
mark#(U61(isNatIListKind(V1))) |
(321) |
active#(isNatKind(s(V1))) |
→ |
mark#(U71(isNatKind(V1))) |
(324) |
active#(isNatList(cons(V1,V2))) |
→ |
mark#(U81(isNatKind(V1),V1,V2)) |
(328) |
active#(length(cons(N,L))) |
→ |
mark#(U91(isNatList(L),L,N)) |
(332) |
1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + 2 · x1
|
[mark#(x1)] |
= |
-2 |
[U31(x1, x2)] |
= |
1 |
[U32(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
1 |
[U44(x1, x2, x3)] |
= |
-2 |
[U52(x1)] |
= |
2 + 2 · x1
|
[U61(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
2 |
[mark(x1)] |
= |
-2 |
[U13(x1)] |
= |
2 + 2 · x1
|
[U33(x1)] |
= |
2 + 2 · x1
|
[U86(x1)] |
= |
2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
1 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
1 |
[U45(x1, x2)] |
= |
-2 |
[U51(x1, x2)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
0 |
[U94(x1, x2)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
1 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + 2 · x2
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[U23(x1)] |
= |
2 + 2 · x1
|
[isNat(x1)] |
= |
1 |
[U46(x1)] |
= |
2 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
0 |
[nil] |
= |
0 |
together with the usable
rulesThere are 110 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U12(tt,V1)) |
→ |
mark#(U13(isNatList(V1))) |
(233) |
could be deleted.
1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U31(x1, x2)] |
= |
1 + 2 · x1
|
[U32(x1, x2)] |
= |
1 + x1
|
[U43(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U52(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
1 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U84(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
1 + x1
|
[mark(x1)] |
= |
x1 |
[U33(x1)] |
= |
1 + 2 · x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
1 + 2 · x1
|
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
1 + x1
|
[U22(x1, x2)] |
= |
1 + x1
|
[U41(x1, x2, x3)] |
= |
1 + x1
|
[U42(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U51(x1, x2)] |
= |
1 + 2 · x1
|
[U71(x1)] |
= |
1 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
1 + x1
|
[U82(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U94(x1, x2)] |
= |
1 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
1 + 2 · x1
|
[U85(x1, x2)] |
= |
1 + 2 · x1
|
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[cons(x1, x2)] |
= |
1 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 + 2 · x1
|
[U13(x1)] |
= |
2 + 2 · x1
|
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
1 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 126 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U13(X)) |
→ |
mark#(X) |
(350) |
could be deleted.
1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U31(x1, x2)] |
= |
1 + 2 · x1
|
[U32(x1, x2)] |
= |
1 + 2 · x1
|
[U43(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U52(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
1 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U84(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
1 + 2 · x1
|
[mark(x1)] |
= |
2 + 2 · x1
|
[U33(x1)] |
= |
1 + x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
1 + 2 · x1
|
[U22(x1, x2)] |
= |
1 + x1
|
[U41(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U42(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U51(x1, x2)] |
= |
1 + 2 · x1
|
[U71(x1)] |
= |
1 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U82(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
1 + 2 · x1
|
[U85(x1, x2)] |
= |
1 + 2 · x1
|
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + 2 · x1 + x2
|
[zeros] |
= |
1 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + 2 · x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U46(x1)] |
= |
1 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
1 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 126 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(cons(X1,X2)) |
→ |
mark#(X1) |
(338) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
2 · x1
|
[mark#(x1)] |
= |
2 · x1
|
[U31(x1, x2)] |
= |
2 + x1
|
[U32(x1, x2)] |
= |
2 + x1
|
[U43(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
2 + x1
|
[U52(x1)] |
= |
2 · x1
|
[U61(x1)] |
= |
2 · x1
|
[U83(x1, x2, x3)] |
= |
x1 |
[U84(x1, x2, x3)] |
= |
2 · x1
|
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U33(x1)] |
= |
2 · x1
|
[U86(x1)] |
= |
2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
x1 |
[U22(x1, x2)] |
= |
2 · x1
|
[U41(x1, x2, x3)] |
= |
2 + x1
|
[U42(x1, x2, x3)] |
= |
2 + x1
|
[U51(x1, x2)] |
= |
2 · x1
|
[U71(x1)] |
= |
2 · x1
|
[U81(x1, x2, x3)] |
= |
2 · x1
|
[U82(x1, x2, x3)] |
= |
2 · x1
|
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
2 + 2 · x1
|
[U85(x1, x2)] |
= |
2 · x1
|
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[cons(x1, x2)] |
= |
-2 |
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
x1 |
[isNat(x1)] |
= |
0 |
[U46(x1)] |
= |
x1 |
[isNatIList(x1)] |
= |
2 |
[s(x1)] |
= |
2 · x1
|
[nil] |
= |
2 |
the
pairs
active#(U32(tt,V)) |
→ |
mark#(U33(isNatList(V))) |
(247) |
mark#(U31(X1,X2)) |
→ |
mark#(X1) |
(365) |
mark#(U32(X1,X2)) |
→ |
mark#(X1) |
(368) |
mark#(U41(X1,X2,X3)) |
→ |
mark#(X1) |
(374) |
mark#(U42(X1,X2,X3)) |
→ |
mark#(X1) |
(377) |
mark#(U43(X1,X2,X3)) |
→ |
mark#(X1) |
(380) |
mark#(U44(X1,X2,X3)) |
→ |
mark#(X1) |
(383) |
mark#(U45(X1,X2)) |
→ |
mark#(X1) |
(386) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[mark#(x1)] |
= |
1 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U52(x1)] |
= |
2 |
[U61(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[isNatIListKind(x1)] |
= |
2 |
[active(x1)] |
= |
1 |
[mark(x1)] |
= |
0 |
[U86(x1)] |
= |
2 |
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
2 |
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[isNatKind(x1)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 + x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
1 + x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + x1
|
[U13(x1)] |
= |
1 + x1
|
[U23(x1)] |
= |
-2 + x1
|
[isNat(x1)] |
= |
2 |
[U33(x1)] |
= |
-2 + x1
|
[U46(x1)] |
= |
0 |
[isNatIList(x1)] |
= |
2 |
[s(x1)] |
= |
-2 + x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 110 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U32(X1,X2)) |
→ |
active#(U32(mark(X1),X2)) |
(366) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
0 |
[mark#(x1)] |
= |
-1 + x1
|
[U31(x1, x2)] |
= |
-2 |
[U32(x1, x2)] |
= |
x1 |
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
0 |
[U52(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
1 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
1 + x1
|
[U84(x1, x2, x3)] |
= |
1 + x1
|
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
1 + 2 · x1
|
[mark(x1)] |
= |
2 + x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
1 + x1
|
[U22(x1, x2)] |
= |
1 + 2 · x1
|
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
1 + 2 · x1
|
[U71(x1)] |
= |
1 + x1
|
[U81(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U82(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
1 + 2 · x1
|
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + 2 · x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
2 + 2 · x2
|
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U33(x1)] |
= |
2 + x1
|
[U46(x1)] |
= |
1 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
1 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 124 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U33(X)) |
→ |
mark#(X) |
(371) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
x1 |
[mark#(x1)] |
= |
x1 |
[U31(x1, x2)] |
= |
-2 |
[U32(x1, x2)] |
= |
0 |
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U52(x1)] |
= |
x1 |
[U61(x1)] |
= |
x1 |
[U83(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U84(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U86(x1)] |
= |
x1 |
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
1 |
[U21(x1, x2)] |
= |
2 · x1
|
[U22(x1, x2)] |
= |
x1 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
0 |
[U51(x1, x2)] |
= |
2 · x1
|
[U71(x1)] |
= |
2 · x1
|
[U81(x1, x2, x3)] |
= |
1 + x1
|
[U82(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
1 + 2 · x1
|
[U93(x1, x2, x3)] |
= |
2 · x1
|
[length(x1)] |
= |
-2 |
[cons(x1, x2)] |
= |
-2 |
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
2 · x1
|
[isNat(x1)] |
= |
0 |
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
x1 |
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
2 · x1
|
[nil] |
= |
0 |
the
pairs
mark#(U81(X1,X2,X3)) |
→ |
mark#(X1) |
(405) |
mark#(U82(X1,X2,X3)) |
→ |
mark#(X1) |
(408) |
mark#(U83(X1,X2,X3)) |
→ |
mark#(X1) |
(411) |
mark#(U84(X1,X2,X3)) |
→ |
mark#(X1) |
(414) |
mark#(U85(X1,X2)) |
→ |
mark#(X1) |
(417) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
x1 |
[mark#(x1)] |
= |
x1 |
[U31(x1, x2)] |
= |
-2 |
[U32(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
x1 |
[U52(x1)] |
= |
2 · x1
|
[U61(x1)] |
= |
x1 |
[U83(x1, x2, x3)] |
= |
2 · x1
|
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U86(x1)] |
= |
2 · x1
|
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
2 + 2 · x1
|
[U22(x1, x2)] |
= |
2 + 2 · x1
|
[U41(x1, x2, x3)] |
= |
0 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
2 · x1
|
[U71(x1)] |
= |
x1 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
x1 |
[U94(x1, x2)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 |
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 |
[U13(x1)] |
= |
0 |
[U23(x1)] |
= |
x1 |
[isNat(x1)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
x1 |
[nil] |
= |
0 |
the
pairs
mark#(U21(X1,X2)) |
→ |
mark#(X1) |
(354) |
mark#(U22(X1,X2)) |
→ |
mark#(X1) |
(357) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
2 + 2 · x1
|
[mark#(x1)] |
= |
2 + 2 · x1
|
[U31(x1, x2)] |
= |
1 |
[U32(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U52(x1)] |
= |
2 · x1
|
[U61(x1)] |
= |
x1 |
[U83(x1, x2, x3)] |
= |
0 |
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U86(x1)] |
= |
x1 |
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
2 · x1
|
[U71(x1)] |
= |
x1 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
0 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
2 |
[U85(x1, x2)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 |
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
2 · x1
|
[isNat(x1)] |
= |
0 |
[U33(x1)] |
= |
0 |
[U46(x1)] |
= |
x1 |
[isNatIList(x1)] |
= |
2 |
[s(x1)] |
= |
x1 |
[nil] |
= |
0 |
the
pairs
active#(U31(tt,V)) |
→ |
mark#(U32(isNatIListKind(V),V)) |
(244) |
active#(isNatIList(V)) |
→ |
mark#(U31(isNatIListKind(V),V)) |
(308) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
1 |
[U52(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
1 + x1
|
[U83(x1, x2, x3)] |
= |
0 |
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
1 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
2 + x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
1 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
1 + x1
|
[U71(x1)] |
= |
1 + x1
|
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
1 |
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
1 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
x2 |
[zeros] |
= |
2 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
x2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 |
[U13(x1)] |
= |
1 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U32(x1, x2)] |
= |
2 + 2 · x1 + x2
|
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
1 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
1 + x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 116 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U31(X1,X2)) |
→ |
active#(U31(mark(X1),X2)) |
(363) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
2 · x1
|
[mark#(x1)] |
= |
2 · x1
|
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U52(x1)] |
= |
x1 |
[U61(x1)] |
= |
x1 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
2 + x2 + x3
|
[isNatIListKind(x1)] |
= |
2 + 2 · x1
|
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U86(x1)] |
= |
2 · x1
|
[U91(x1, x2, x3)] |
= |
2 + x2 + x3
|
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
2 + x1 + 2 · x2
|
[U71(x1)] |
= |
x1 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
2 + x2
|
[isNatKind(x1)] |
= |
2 · x1
|
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
2 + x2 + x3
|
[length(x1)] |
= |
2 + x1
|
[cons(x1, x2)] |
= |
x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
0 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
x1 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
0 |
[U32(x1, x2)] |
= |
-2 |
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
x1 |
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
x1 |
[nil] |
= |
0 |
the
pairs
mark#(U51(X1,X2)) |
→ |
mark#(X1) |
(393) |
active#(isNatKind(length(V1))) |
→ |
mark#(U61(isNatIListKind(V1))) |
(321) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U43(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
1 |
[U52(x1)] |
= |
1 + x1
|
[U83(x1, x2, x3)] |
= |
1 + x1
|
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
1 + 2 · x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
0 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
1 |
[U71(x1)] |
= |
1 + x1
|
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 + 2 · x2
|
[U13(x1)] |
= |
-2 + x1
|
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x1
|
[U32(x1, x2)] |
= |
-2 + x2
|
[U33(x1)] |
= |
1 + x1
|
[U46(x1)] |
= |
1 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
2 + x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 114 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U61(X)) |
→ |
mark#(X) |
(399) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + x1
|
[mark#(x1)] |
= |
-2 + x1
|
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U52(x1)] |
= |
2 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
2 + x1
|
[mark(x1)] |
= |
x1 |
[U86(x1)] |
= |
2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
0 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
2 |
[U71(x1)] |
= |
2 + x1
|
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
-2 |
[isNatKind(x1)] |
= |
2 + 2 · x1
|
[U45(x1, x2)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
-2 |
[cons(x1, x2)] |
= |
-2 + x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + 2 · x2
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 |
[U13(x1)] |
= |
-2 + x1
|
[U23(x1)] |
= |
2 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + 2 · x1 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + 2 · x2
|
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
2 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
2 + 2 · x1
|
[U61(x1)] |
= |
-2 + x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 114 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(isNatKind(s(V1))) |
→ |
mark#(U71(isNatKind(V1))) |
(324) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[mark#(x1)] |
= |
1 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U52(x1)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[isNatIListKind(x1)] |
= |
2 |
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
-2 |
[U86(x1)] |
= |
-2 |
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[isNatKind(x1)] |
= |
1 |
[U45(x1, x2)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
2 |
[U13(x1)] |
= |
0 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
2 + x1 + 2 · x2
|
[U32(x1, x2)] |
= |
2 + 2 · x1
|
[U33(x1)] |
= |
2 |
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
2 |
[s(x1)] |
= |
2 |
[U61(x1)] |
= |
2 |
[U71(x1)] |
= |
-2 + x1
|
[nil] |
= |
0 |
together with the usable
rulesThere are 102 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(isNatKind(X)) |
→ |
active#(isNatKind(X)) |
(358) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
2 |
[mark#(x1)] |
= |
2 + x1
|
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U52(x1)] |
= |
2 · x1
|
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
2 + 2 · x1
|
[U86(x1)] |
= |
2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U45(x1, x2)] |
= |
x1 |
[U85(x1, x2)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U71(x1)] |
= |
2 + x1
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + x1 + x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + x2
|
[U13(x1)] |
= |
2 + x1
|
[U23(x1)] |
= |
2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
2 · x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rulesThere are 110 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U71(X)) |
→ |
mark#(X) |
(402) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[mark#(x1)] |
= |
-1 + x1
|
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U52(x1)] |
= |
1 + x1
|
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
0 |
[U92(x1, x2, x3)] |
= |
-2 |
[isNatIListKind(x1)] |
= |
1 + x1
|
[active(x1)] |
= |
2 + x1
|
[mark(x1)] |
= |
2 · x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U51(x1, x2)] |
= |
2 + x2
|
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U45(x1, x2)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
-2 |
[U71(x1)] |
= |
-2 + x1
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 · x1 + x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x2
|
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
1 + x1
|
[U33(x1)] |
= |
2 + x1
|
[U46(x1)] |
= |
1 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rulesThere are 110 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(isNatIListKind(cons(V1,V2))) |
→ |
mark#(U51(isNatKind(V1),V2)) |
(317) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + 2 · x1
|
[mark#(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U52(x1)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[isNatIListKind(x1)] |
= |
0 |
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
-2 |
[U86(x1)] |
= |
0 |
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U51(x1, x2)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[U71(x1)] |
= |
1 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
1 + x2
|
[U13(x1)] |
= |
x1 |
[U23(x1)] |
= |
2 |
[isNat(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[U32(x1, x2)] |
= |
-2 + x2
|
[U33(x1)] |
= |
2 · x1
|
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
2 |
[s(x1)] |
= |
-2 + x1
|
[U61(x1)] |
= |
2 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rules
isNatIListKind(active(X)) |
→ |
isNatIListKind(X) |
(101) |
isNatIListKind(mark(X)) |
→ |
isNatIListKind(X) |
(100) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U42(X1,mark(X2),X3) |
→ |
U42(X1,X2,X3) |
(137) |
U42(mark(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(136) |
U42(X1,X2,mark(X3)) |
→ |
U42(X1,X2,X3) |
(138) |
U42(active(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(139) |
U42(X1,active(X2),X3) |
→ |
U42(X1,X2,X3) |
(140) |
U42(X1,X2,active(X3)) |
→ |
U42(X1,X2,X3) |
(141) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U41(X1,mark(X2),X3) |
→ |
U41(X1,X2,X3) |
(131) |
U41(mark(X1),X2,X3) |
→ |
U41(X1,X2,X3) |
(130) |
U41(X1,X2,mark(X3)) |
→ |
U41(X1,X2,X3) |
(132) |
U41(active(X1),X2,X3) |
→ |
U41(X1,X2,X3) |
(133) |
U41(X1,active(X2),X3) |
→ |
U41(X1,X2,X3) |
(134) |
U41(X1,X2,active(X3)) |
→ |
U41(X1,X2,X3) |
(135) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U51(X1,mark(X2)) |
→ |
U51(X1,X2) |
(163) |
U51(mark(X1),X2) |
→ |
U51(X1,X2) |
(162) |
U51(active(X1),X2) |
→ |
U51(X1,X2) |
(164) |
U51(X1,active(X2)) |
→ |
U51(X1,X2) |
(165) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(isNatIListKind(X)) |
→ |
active#(isNatIListKind(X)) |
(347) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
0 |
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
1 + x1
|
[mark(x1)] |
= |
2 · x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
1 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
1 |
[U44(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U45(x1, x2)] |
= |
1 |
[U51(x1, x2)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
1 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
1 + x1
|
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U71(x1)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 |
[zeros] |
= |
0 |
[0] |
= |
1 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 + 2 · x2
|
[U33(x1)] |
= |
-2 + x1
|
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
1 + x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
1 |
together with the usable
rulesThere are 106 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U51(X1,X2)) |
→ |
active#(U51(mark(X1),X2)) |
(391) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + 2 · x1
|
[mark#(x1)] |
= |
-2 |
[U86(x1)] |
= |
-2 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 |
[mark(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
1 |
[U22(x1, x2)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
1 |
[U42(x1, x2, x3)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
1 |
[U94(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
1 |
[U45(x1, x2)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
1 |
[U51(x1, x2)] |
= |
2 |
[U71(x1)] |
= |
-2 + x1
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
-2 + 2 · x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
-2 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
2 |
[U46(x1)] |
= |
-2 + x1
|
[isNatIList(x1)] |
= |
1 |
[U52(x1)] |
= |
-2 + 2 · x1
|
[s(x1)] |
= |
-2 + 2 · x1
|
[U61(x1)] |
= |
2 + x1
|
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U42(X1,mark(X2),X3) |
→ |
U42(X1,X2,X3) |
(137) |
U42(mark(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(136) |
U42(X1,X2,mark(X3)) |
→ |
U42(X1,X2,X3) |
(138) |
U42(active(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(139) |
U42(X1,active(X2),X3) |
→ |
U42(X1,X2,X3) |
(140) |
U42(X1,X2,active(X3)) |
→ |
U42(X1,X2,X3) |
(141) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U41(X1,mark(X2),X3) |
→ |
U41(X1,X2,X3) |
(131) |
U41(mark(X1),X2,X3) |
→ |
U41(X1,X2,X3) |
(130) |
U41(X1,X2,mark(X3)) |
→ |
U41(X1,X2,X3) |
(132) |
U41(active(X1),X2,X3) |
→ |
U41(X1,X2,X3) |
(133) |
U41(X1,active(X2),X3) |
→ |
U41(X1,X2,X3) |
(134) |
U41(X1,X2,active(X3)) |
→ |
U41(X1,X2,X3) |
(135) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U51(tt,V2)) |
→ |
mark#(U52(isNatIListKind(V2))) |
(267) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
1 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 + x1
|
[mark(x1)] |
= |
1 + 2 · x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
0 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
0 |
[U45(x1, x2)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U51(x1, x2)] |
= |
-2 + x1
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 |
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + 2 · x1
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
-1 + 2 · x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 + x1
|
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
-2 + x2
|
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 + x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rulesThere are 102 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U52(X)) |
→ |
mark#(X) |
(396) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + 2 · x1
|
[mark#(x1)] |
= |
-2 + 2 · x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 + x1
|
[mark(x1)] |
= |
2 + 2 · x1
|
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
1 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x2 + x3
|
[U42(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U81(x1, x2, x3)] |
= |
0 |
[U82(x1, x2, x3)] |
= |
0 |
[U94(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U44(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U45(x1, x2)] |
= |
2 + x2
|
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
1 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
0 |
[U51(x1, x2)] |
= |
2 |
[U71(x1)] |
= |
-2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + 2 · x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 · x1 + x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
1 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 + x1
|
[U33(x1)] |
= |
2 |
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
1 + x1
|
[U52(x1)] |
= |
-2 |
[s(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
-2 + 2 · x1
|
[nil] |
= |
1 |
together with the usable
rulesThere are 102 ruless (increase limit for explicit display).
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(isNatIList(cons(V1,V2))) |
→ |
mark#(U41(isNatKind(V1),V1,V2)) |
(312) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[mark#(x1)] |
= |
1 |
[U86(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[active(x1)] |
= |
-2 + x1
|
[mark(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[U51(x1, x2)] |
= |
2 + 2 · x2
|
[U71(x1)] |
= |
-2 |
[isNatKind(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
2 + 2 · x1 + x2
|
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
-2 + 2 · x1
|
[isNat(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
-2 + x2
|
[U32(x1, x2)] |
= |
-2 + 2 · x1
|
[U33(x1)] |
= |
-2 + 2 · x1
|
[U46(x1)] |
= |
-2 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U42(X1,mark(X2),X3) |
→ |
U42(X1,X2,X3) |
(137) |
U42(mark(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(136) |
U42(X1,X2,mark(X3)) |
→ |
U42(X1,X2,X3) |
(138) |
U42(active(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(139) |
U42(X1,active(X2),X3) |
→ |
U42(X1,X2,X3) |
(140) |
U42(X1,X2,active(X3)) |
→ |
U42(X1,X2,X3) |
(141) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U41(X1,mark(X2),X3) |
→ |
U41(X1,X2,X3) |
(131) |
U41(mark(X1),X2,X3) |
→ |
U41(X1,X2,X3) |
(130) |
U41(X1,X2,mark(X3)) |
→ |
U41(X1,X2,X3) |
(132) |
U41(active(X1),X2,X3) |
→ |
U41(X1,X2,X3) |
(133) |
U41(X1,active(X2),X3) |
→ |
U41(X1,X2,X3) |
(134) |
U41(X1,X2,active(X3)) |
→ |
U41(X1,X2,X3) |
(135) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(isNatIList(X)) |
→ |
active#(isNatIList(X)) |
(390) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 · x1
|
[mark(x1)] |
= |
2 + 2 · x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
0 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
0 |
[U94(x1, x2)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U45(x1, x2)] |
= |
0 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
-2 |
[U51(x1, x2)] |
= |
2 + 2 · x1 + x2
|
[U71(x1)] |
= |
-2 |
[isNatKind(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + x1 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + x2
|
[U33(x1)] |
= |
2 |
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U42(X1,mark(X2),X3) |
→ |
U42(X1,X2,X3) |
(137) |
U42(mark(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(136) |
U42(X1,X2,mark(X3)) |
→ |
U42(X1,X2,X3) |
(138) |
U42(active(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(139) |
U42(X1,active(X2),X3) |
→ |
U42(X1,X2,X3) |
(140) |
U42(X1,X2,active(X3)) |
→ |
U42(X1,X2,X3) |
(141) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U46(active(X)) |
→ |
U46(X) |
(159) |
U46(mark(X)) |
→ |
U46(X) |
(158) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U41(X1,X2,X3)) |
→ |
active#(U41(mark(X1),X2,X3)) |
(372) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + x1
|
[mark#(x1)] |
= |
-2 |
[U86(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
-2 + x1
|
[mark(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
0 |
[U42(x1, x2, x3)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
0 |
[U44(x1, x2, x3)] |
= |
-2 |
[U45(x1, x2)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
0 |
[U85(x1, x2)] |
= |
0 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 + x1 + x2
|
[U51(x1, x2)] |
= |
-2 + 2 · x2
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + 2 · x1 + x2
|
[zeros] |
= |
2 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
-2 + x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
-2 + x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
2 + 2 · x1 + 2 · x2
|
[U33(x1)] |
= |
0 |
[U46(x1)] |
= |
-2 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
0 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U42(X1,mark(X2),X3) |
→ |
U42(X1,X2,X3) |
(137) |
U42(mark(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(136) |
U42(X1,X2,mark(X3)) |
→ |
U42(X1,X2,X3) |
(138) |
U42(active(X1),X2,X3) |
→ |
U42(X1,X2,X3) |
(139) |
U42(X1,active(X2),X3) |
→ |
U42(X1,X2,X3) |
(140) |
U42(X1,X2,active(X3)) |
→ |
U42(X1,X2,X3) |
(141) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U41(tt,V1,V2)) |
→ |
mark#(U42(isNatKind(V1),V1,V2)) |
(251) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
0 |
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
2 + 2 · x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U42(x1, x2, x3)] |
= |
2 + 2 · x1 + 2 · x2 + x3
|
[U43(x1, x2, x3)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
-2 |
[U45(x1, x2)] |
= |
0 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + x1
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
2 + 2 · x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + x1 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + 2 · x2
|
[U33(x1)] |
= |
-2 |
[U46(x1)] |
= |
1 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[s(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
2 + x1
|
[nil] |
= |
2 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U46(active(X)) |
→ |
U46(X) |
(159) |
U46(mark(X)) |
→ |
U46(X) |
(158) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U42(X1,X2,X3)) |
→ |
active#(U42(mark(X1),X2,X3)) |
(375) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + x1
|
[mark#(x1)] |
= |
-2 |
[U86(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
-2 + 2 · x1
|
[mark(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
0 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
0 |
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U42(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U51(x1, x2)] |
= |
2 |
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 |
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
-2 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x2
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
2 |
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
2 · x1
|
[U52(x1)] |
= |
-2 + x1
|
[s(x1)] |
= |
-2 + 2 · x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U43(X1,mark(X2),X3) |
→ |
U43(X1,X2,X3) |
(143) |
U43(mark(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(142) |
U43(X1,X2,mark(X3)) |
→ |
U43(X1,X2,X3) |
(144) |
U43(active(X1),X2,X3) |
→ |
U43(X1,X2,X3) |
(145) |
U43(X1,active(X2),X3) |
→ |
U43(X1,X2,X3) |
(146) |
U43(X1,X2,active(X3)) |
→ |
U43(X1,X2,X3) |
(147) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U42(tt,V1,V2)) |
→ |
mark#(U43(isNatIListKind(V2),V1,V2)) |
(254) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
0 |
[mark#(x1)] |
= |
-2 + 2 · x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
2 · x1
|
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
0 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U44(x1, x2, x3)] |
= |
1 |
[U45(x1, x2)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
1 |
[U84(x1, x2, x3)] |
= |
1 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
1 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
-2 + x1
|
[U42(x1, x2, x3)] |
= |
-2 + x2 + x3
|
[U51(x1, x2)] |
= |
-1 + 2 · x2
|
[U71(x1)] |
= |
-2 + 2 · x1
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 |
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x1 + x2
|
[U32(x1, x2)] |
= |
-2 + 2 · x2
|
[U33(x1)] |
= |
-2 + 2 · x1
|
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
-2 |
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
2 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U46(active(X)) |
→ |
U46(X) |
(159) |
U46(mark(X)) |
→ |
U46(X) |
(158) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U43(X1,X2,X3)) |
→ |
active#(U43(mark(X1),X2,X3)) |
(378) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + x1
|
[mark#(x1)] |
= |
-2 |
[U86(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
-2 + 2 · x1
|
[mark(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
0 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
2 · x1 + x2
|
[U71(x1)] |
= |
-2 + x1
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + x1 + x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + 2 · x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 + x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[U23(x1)] |
= |
0 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + x1
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
2 · x1
|
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
x1 |
[U52(x1)] |
= |
-2 |
[s(x1)] |
= |
-2 + x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U44(X1,mark(X2),X3) |
→ |
U44(X1,X2,X3) |
(149) |
U44(mark(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(148) |
U44(X1,X2,mark(X3)) |
→ |
U44(X1,X2,X3) |
(150) |
U44(active(X1),X2,X3) |
→ |
U44(X1,X2,X3) |
(151) |
U44(X1,active(X2),X3) |
→ |
U44(X1,X2,X3) |
(152) |
U44(X1,X2,active(X3)) |
→ |
U44(X1,X2,X3) |
(153) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U43(tt,V1,V2)) |
→ |
mark#(U44(isNatIListKind(V2),V1,V2)) |
(257) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
1 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 · x1
|
[mark(x1)] |
= |
x1 |
[U21(x1, x2)] |
= |
1 |
[U22(x1, x2)] |
= |
1 |
[U81(x1, x2, x3)] |
= |
1 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U44(x1, x2, x3)] |
= |
2 + 2 · x2 + 2 · x3
|
[U45(x1, x2)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
0 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x1 + 2 · x2
|
[U42(x1, x2, x3)] |
= |
2 + 2 · x2 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + 2 · x2
|
[U71(x1)] |
= |
1 |
[isNatKind(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
1 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x1
|
[U32(x1, x2)] |
= |
1 |
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 + x1 + x2 + 2 · x3
|
[U46(x1)] |
= |
1 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
-2 + x1
|
[s(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U46(active(X)) |
→ |
U46(X) |
(159) |
U46(mark(X)) |
→ |
U46(X) |
(158) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U44(X1,X2,X3)) |
→ |
active#(U44(mark(X1),X2,X3)) |
(381) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + x1
|
[mark#(x1)] |
= |
-2 |
[U86(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
0 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 |
[mark(x1)] |
= |
2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x1 + 2 · x2
|
[U51(x1, x2)] |
= |
-2 + 2 · x1
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-1 + x1 + 2 · x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
x1 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
-2 + 2 · x2
|
[U33(x1)] |
= |
-2 + 2 · x1
|
[U43(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U44(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U46(x1)] |
= |
-2 + 2 · x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
-2 + 2 · x1
|
[s(x1)] |
= |
-2 + 2 · x1
|
[U61(x1)] |
= |
-2 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U45(X1,mark(X2)) |
→ |
U45(X1,X2) |
(155) |
U45(mark(X1),X2) |
→ |
U45(X1,X2) |
(154) |
U45(active(X1),X2) |
→ |
U45(X1,X2) |
(156) |
U45(X1,active(X2)) |
→ |
U45(X1,X2) |
(157) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U44(tt,V1,V2)) |
→ |
mark#(U45(isNat(V1),V2)) |
(260) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
2 |
[mark#(x1)] |
= |
2 + x1
|
[U86(x1)] |
= |
x1 |
[U91(x1, x2, x3)] |
= |
2 · x1
|
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 + x1
|
[mark(x1)] |
= |
2 + x1
|
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[U45(x1, x2)] |
= |
1 + x2
|
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 + x1
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x2 + x3
|
[U51(x1, x2)] |
= |
2 + 2 · x2
|
[U71(x1)] |
= |
0 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
-2 + 2 · x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
2 |
[U13(x1)] |
= |
2 + x1
|
[U23(x1)] |
= |
x1 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + x1 + x2
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x2 + 2 · x3
|
[U44(x1, x2, x3)] |
= |
-2 |
[U46(x1)] |
= |
x1 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 + 2 · x1
|
[s(x1)] |
= |
2 · x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
isNatIList(active(X)) |
→ |
isNatIList(X) |
(161) |
isNatIList(mark(X)) |
→ |
isNatIList(X) |
(160) |
U46(active(X)) |
→ |
U46(X) |
(159) |
U46(mark(X)) |
→ |
U46(X) |
(158) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U45(X1,X2)) |
→ |
active#(U45(mark(X1),X2)) |
(384) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + x1
|
[mark#(x1)] |
= |
-2 |
[U86(x1)] |
= |
2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
2 |
[active(x1)] |
= |
-2 + 2 · x1
|
[mark(x1)] |
= |
2 + x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
0 |
[U85(x1, x2)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U51(x1, x2)] |
= |
-1 + 2 · x1
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
1 |
[U11(x1, x2)] |
= |
-2 + 2 · x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
-2 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
0 |
[U32(x1, x2)] |
= |
-2 + 2 · x1
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U44(x1, x2, x3)] |
= |
2 + 2 · x2
|
[U45(x1, x2)] |
= |
2 + 2 · x1
|
[U46(x1)] |
= |
-2 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
0 |
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U45(tt,V2)) |
→ |
mark#(U46(isNatIList(V2))) |
(263) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 |
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
2 · x1
|
[mark(x1)] |
= |
2 + 2 · x1
|
[U21(x1, x2)] |
= |
1 + 2 · x1
|
[U22(x1, x2)] |
= |
0 |
[U81(x1, x2, x3)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
0 |
[U94(x1, x2)] |
= |
0 |
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
1 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
-2 + x2
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x2 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[U71(x1)] |
= |
1 + x1
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 + 2 · x1
|
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + x1
|
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U44(x1, x2, x3)] |
= |
-2 + x2
|
[U45(x1, x2)] |
= |
-2 + 2 · x1 + 2 · x2
|
[U46(x1)] |
= |
2 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
-2 |
[s(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
isNatKind(active(X)) |
→ |
isNatKind(X) |
(115) |
isNatKind(mark(X)) |
→ |
isNatKind(X) |
(114) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U46(X)) |
→ |
mark#(X) |
(389) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-1 + x1
|
[mark#(x1)] |
= |
-1 + x1
|
[U86(x1)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[isNatList(x1)] |
= |
1 + x1
|
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
2 + 2 · x1
|
[U21(x1, x2)] |
= |
0 |
[U22(x1, x2)] |
= |
1 |
[U81(x1, x2, x3)] |
= |
2 + x3
|
[U82(x1, x2, x3)] |
= |
2 + x3
|
[U94(x1, x2)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
2 + x3
|
[U84(x1, x2, x3)] |
= |
2 + x3
|
[U85(x1, x2)] |
= |
2 + x2
|
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
x1 + x2
|
[U51(x1, x2)] |
= |
-2 + 2 · x2
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + x2
|
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + 2 · x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-1 + x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 + x1
|
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 |
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x3
|
[U44(x1, x2, x3)] |
= |
2 + 2 · x3
|
[U45(x1, x2)] |
= |
-2 |
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
-2 + 2 · x1
|
[s(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(isNatList(cons(V1,V2))) |
→ |
mark#(U81(isNatKind(V1),V1,V2)) |
(328) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active#(x1)] |
= |
-2 + 2 · x1
|
[mark#(x1)] |
= |
2 |
[U86(x1)] |
= |
2 |
[U91(x1, x2, x3)] |
= |
2 |
[isNatList(x1)] |
= |
0 |
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
-2 + x1 + 2 · x2 + x3
|
[U42(x1, x2, x3)] |
= |
-2 + x1
|
[U51(x1, x2)] |
= |
-2 + 2 · x1
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
1 + 2 · x1 + x2
|
[zeros] |
= |
1 |
[0] |
= |
1 |
[U11(x1, x2)] |
= |
2 + 2 · x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
x1 + x2
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x1 + x3
|
[U44(x1, x2, x3)] |
= |
2 + x1 + x3
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
-2 + x1
|
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
-2 |
[s(x1)] |
= |
2 |
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rules
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U81(X1,mark(X2),X3) |
→ |
U81(X1,X2,X3) |
(173) |
U81(mark(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(172) |
U81(X1,X2,mark(X3)) |
→ |
U81(X1,X2,X3) |
(174) |
U81(active(X1),X2,X3) |
→ |
U81(X1,X2,X3) |
(175) |
U81(X1,active(X2),X3) |
→ |
U81(X1,X2,X3) |
(176) |
U81(X1,X2,active(X3)) |
→ |
U81(X1,X2,X3) |
(177) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(isNatList(X)) |
→ |
active#(isNatList(X)) |
(351) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 + 2 · x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
1 |
[U82(x1, x2, x3)] |
= |
0 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
2 · x1
|
[mark(x1)] |
= |
x1 |
[U81(x1, x2, x3)] |
= |
2 + 2 · x3
|
[U83(x1, x2, x3)] |
= |
1 |
[U84(x1, x2, x3)] |
= |
0 |
[U85(x1, x2)] |
= |
1 |
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
1 |
[U93(x1, x2, x3)] |
= |
1 |
[length(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x2 + x3
|
[U42(x1, x2, x3)] |
= |
-1 + 2 · x2
|
[U51(x1, x2)] |
= |
2 + x2
|
[U71(x1)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 |
[zeros] |
= |
0 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
x2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x2
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x1 + x3
|
[U44(x1, x2, x3)] |
= |
-2 + 2 · x2 + x3
|
[U45(x1, x2)] |
= |
-2 + x1 + x2
|
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[U86(x1)] |
= |
1 + 2 · x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
-2 + x1
|
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U81(X1,X2,X3)) |
→ |
active#(U81(mark(X1),X2,X3)) |
(403) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U82(x1, x2, x3)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[active#(x1)] |
= |
-2 + x1
|
[active(x1)] |
= |
-2 + x1
|
[mark(x1)] |
= |
0 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U91(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
-2 + x1 + 2 · x2 + 2 · x3
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x2 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[U71(x1)] |
= |
-2 + x1
|
[U81(x1, x2, x3)] |
= |
1 + 2 · x1 + 2 · x2 + x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1 + x2
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[isNatList(x1)] |
= |
x1 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + 2 · x2
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U44(x1, x2, x3)] |
= |
-2 + x1
|
[U45(x1, x2)] |
= |
-2 + 2 · x1
|
[U46(x1)] |
= |
2 + x1
|
[isNatIList(x1)] |
= |
2 |
[U52(x1)] |
= |
2 |
[U86(x1)] |
= |
-2 |
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
-1 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U82(X1,mark(X2),X3) |
→ |
U82(X1,X2,X3) |
(179) |
U82(mark(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(178) |
U82(X1,X2,mark(X3)) |
→ |
U82(X1,X2,X3) |
(180) |
U82(active(X1),X2,X3) |
→ |
U82(X1,X2,X3) |
(181) |
U82(X1,active(X2),X3) |
→ |
U82(X1,X2,X3) |
(182) |
U82(X1,X2,active(X3)) |
→ |
U82(X1,X2,X3) |
(183) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U81(tt,V1,V2)) |
→ |
mark#(U82(isNatKind(V1),V1,V2)) |
(273) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-1 + x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
2 · x1
|
[mark(x1)] |
= |
2 + x1
|
[U82(x1, x2, x3)] |
= |
2 + 2 · x1 + x2 + 2 · x3
|
[U83(x1, x2, x3)] |
= |
-2 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x1 + 2 · x2
|
[U42(x1, x2, x3)] |
= |
2 + x2
|
[U51(x1, x2)] |
= |
-2 + x2
|
[U71(x1)] |
= |
-2 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
-1 + 2 · x2 + x3
|
[isNatKind(x1)] |
= |
x1 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
0 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
-2 + 2 · x1
|
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
-1 + x1 + 2 · x3
|
[U44(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
1 |
[U52(x1)] |
= |
-2 |
[U86(x1)] |
= |
1 + 2 · x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U82(X1,X2,X3)) |
→ |
active#(U82(mark(X1),X2,X3)) |
(406) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
1 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 + 2 · x1
|
[active(x1)] |
= |
2 |
[mark(x1)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
1 |
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
-2 |
[U91(x1, x2, x3)] |
= |
1 |
[U92(x1, x2, x3)] |
= |
1 |
[U93(x1, x2, x3)] |
= |
1 |
[length(x1)] |
= |
1 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U51(x1, x2)] |
= |
-2 + 2 · x1
|
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U82(x1, x2, x3)] |
= |
2 + 2 · x1 + 2 · x2 + 2 · x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 |
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + x1
|
[U33(x1)] |
= |
0 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
-2 + x1
|
[U45(x1, x2)] |
= |
-2 + x1 + x2
|
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
0 |
[U86(x1)] |
= |
-2 |
[s(x1)] |
= |
2 |
[U61(x1)] |
= |
-2 + x1
|
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U83(X1,mark(X2),X3) |
→ |
U83(X1,X2,X3) |
(185) |
U83(mark(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(184) |
U83(X1,X2,mark(X3)) |
→ |
U83(X1,X2,X3) |
(186) |
U83(active(X1),X2,X3) |
→ |
U83(X1,X2,X3) |
(187) |
U83(X1,active(X2),X3) |
→ |
U83(X1,X2,X3) |
(188) |
U83(X1,X2,active(X3)) |
→ |
U83(X1,X2,X3) |
(189) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U82(tt,V1,V2)) |
→ |
mark#(U83(isNatIListKind(V2),V1,V2)) |
(276) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-1 + x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
0 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
2 + x1
|
[mark(x1)] |
= |
2 · x1
|
[U83(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U84(x1, x2, x3)] |
= |
-2 |
[U85(x1, x2)] |
= |
1 + x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
0 |
[length(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x1 + 2 · x2
|
[U51(x1, x2)] |
= |
-2 + x1
|
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
-2 + x3
|
[U82(x1, x2, x3)] |
= |
-2 + 2 · x1 + 2 · x2 + 2 · x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + 2 · x1 + 2 · x2
|
[zeros] |
= |
1 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
2 + x1 + x2
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 + 2 · x1
|
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 + x1
|
[U33(x1)] |
= |
0 |
[U43(x1, x2, x3)] |
= |
2 + x3
|
[U44(x1, x2, x3)] |
= |
-2 + 2 · x1 + 2 · x2 + x3
|
[U45(x1, x2)] |
= |
2 + x2
|
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
x1 |
[U52(x1)] |
= |
-2 |
[U86(x1)] |
= |
1 + x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U83(X1,X2,X3)) |
→ |
active#(U83(mark(X1),X2,X3)) |
(409) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
2 |
[U94(x1, x2)] |
= |
2 |
[active#(x1)] |
= |
-2 + x1
|
[active(x1)] |
= |
-2 + 2 · x1
|
[mark(x1)] |
= |
-2 + x1
|
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
0 |
[U91(x1, x2, x3)] |
= |
2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U51(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[U71(x1)] |
= |
-2 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
-2 + 2 · x2 + 2 · x3
|
[U82(x1, x2, x3)] |
= |
-2 + 2 · x1 + x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
2 · x1
|
[U13(x1)] |
= |
-2 + x1
|
[isNatList(x1)] |
= |
2 · x1
|
[U23(x1)] |
= |
0 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
-2 + 2 · x1
|
[U43(x1, x2, x3)] |
= |
-2 + 2 · x1 + 2 · x2
|
[U44(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
2 · x1
|
[U52(x1)] |
= |
-2 + x1
|
[U83(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U86(x1)] |
= |
2 |
[s(x1)] |
= |
-2 + 2 · x1
|
[U61(x1)] |
= |
-2 + 2 · x1
|
[nil] |
= |
1 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U84(X1,mark(X2),X3) |
→ |
U84(X1,X2,X3) |
(191) |
U84(mark(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(190) |
U84(X1,X2,mark(X3)) |
→ |
U84(X1,X2,X3) |
(192) |
U84(active(X1),X2,X3) |
→ |
U84(X1,X2,X3) |
(193) |
U84(X1,active(X2),X3) |
→ |
U84(X1,X2,X3) |
(194) |
U84(X1,X2,active(X3)) |
→ |
U84(X1,X2,X3) |
(195) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U83(tt,V1,V2)) |
→ |
mark#(U84(isNatIListKind(V2),V1,V2)) |
(279) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-1 + x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
2 · x1
|
[U84(x1, x2, x3)] |
= |
2 + 2 · x1 + x2 + x3
|
[U85(x1, x2)] |
= |
-2 |
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
1 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
1 + x1 + x2
|
[U71(x1)] |
= |
-2 + x1
|
[U81(x1, x2, x3)] |
= |
-2 + 2 · x2 + 2 · x3
|
[U82(x1, x2, x3)] |
= |
2 + x1 + 2 · x2
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 + x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
x2 |
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 |
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
1 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x2
|
[U32(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[U33(x1)] |
= |
1 |
[U43(x1, x2, x3)] |
= |
-2 + x2 + x3
|
[U44(x1, x2, x3)] |
= |
-2 + x1 + x2
|
[U45(x1, x2)] |
= |
-2 + x2
|
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
2 |
[U52(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 + x1 + x2 + 2 · x3
|
[U86(x1)] |
= |
1 + 2 · x1
|
[s(x1)] |
= |
1 + 2 · x1
|
[U61(x1)] |
= |
2 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U84(X1,X2,X3)) |
→ |
active#(U84(mark(X1),X2,X3)) |
(412) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
x1 |
[U21(x1, x2)] |
= |
1 + x1
|
[U22(x1, x2)] |
= |
1 + 2 · x1
|
[U94(x1, x2)] |
= |
1 + 2 · x1
|
[active#(x1)] |
= |
1 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
x1 |
[U85(x1, x2)] |
= |
1 |
[U91(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U92(x1, x2, x3)] |
= |
1 + x1
|
[U93(x1, x2, x3)] |
= |
1 |
[length(x1)] |
= |
1 |
[U41(x1, x2, x3)] |
= |
-1 + x3
|
[U42(x1, x2, x3)] |
= |
2 + x1 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + x2
|
[U71(x1)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-1 + x3
|
[U82(x1, x2, x3)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
x1 |
[isNat(x1)] |
= |
1 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
2 + x2
|
[U33(x1)] |
= |
2 + x1
|
[U43(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
2 + x1 + 2 · x3
|
[U45(x1, x2)] |
= |
-2 + x1
|
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
1 + x1
|
[U52(x1)] |
= |
-2 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
2 + 2 · x2
|
[U84(x1, x2, x3)] |
= |
-2 + x2 + x3
|
[U86(x1)] |
= |
1 + 2 · x1
|
[s(x1)] |
= |
x1 |
[U61(x1)] |
= |
0 |
[nil] |
= |
0 |
together with the usable
rules
isNatKind(active(X)) |
→ |
isNatKind(X) |
(115) |
isNatKind(mark(X)) |
→ |
isNatKind(X) |
(114) |
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
isNatIListKind(active(X)) |
→ |
isNatIListKind(X) |
(101) |
isNatIListKind(mark(X)) |
→ |
isNatIListKind(X) |
(100) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U86(X)) |
→ |
mark#(X) |
(420) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 + x1
|
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
-2 |
[U85(x1, x2)] |
= |
2 |
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + x1
|
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 + 2 · x3
|
[U82(x1, x2, x3)] |
= |
-2 + x1 + 2 · x2 + x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
2 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
-2 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + 2 · x2
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
0 |
[U43(x1, x2, x3)] |
= |
-2 + x1 + 2 · x2
|
[U44(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 + x2
|
[U84(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U86(x1)] |
= |
-2 |
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
x1 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U85(X1,mark(X2)) |
→ |
U85(X1,X2) |
(197) |
U85(mark(X1),X2) |
→ |
U85(X1,X2) |
(196) |
U85(active(X1),X2) |
→ |
U85(X1,X2) |
(198) |
U85(X1,active(X2)) |
→ |
U85(X1,X2) |
(199) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U84(tt,V1,V2)) |
→ |
mark#(U85(isNat(V1),V2)) |
(282) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-1 + x1
|
[U21(x1, x2)] |
= |
1 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
x1 |
[U85(x1, x2)] |
= |
2 + x2
|
[U91(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U92(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
-2 |
[U41(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U42(x1, x2, x3)] |
= |
2 + x1
|
[U51(x1, x2)] |
= |
-2 + x1
|
[U71(x1)] |
= |
-2 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U82(x1, x2, x3)] |
= |
1 + x2 + x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
2 |
[zeros] |
= |
1 |
[0] |
= |
2 |
[U11(x1, x2)] |
= |
2 + 2 · x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
2 + x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 + 2 · x1
|
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
1 + 2 · x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x1 + x2
|
[U32(x1, x2)] |
= |
1 + 2 · x1
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
-2 + 2 · x2 + 2 · x3
|
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
2 · x1
|
[U52(x1)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
-2 + 2 · x2 + x3
|
[U84(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U86(x1)] |
= |
-2 |
[s(x1)] |
= |
1 + x1
|
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
isNatList(active(X)) |
→ |
isNatList(X) |
(105) |
isNatList(mark(X)) |
→ |
isNatList(X) |
(104) |
U86(active(X)) |
→ |
U86(X) |
(201) |
U86(mark(X)) |
→ |
U86(X) |
(200) |
isNatIListKind(active(X)) |
→ |
isNatIListKind(X) |
(101) |
isNatIListKind(mark(X)) |
→ |
isNatIListKind(X) |
(100) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U85(X1,X2)) |
→ |
active#(U85(mark(X1),X2)) |
(415) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
2 |
[active#(x1)] |
= |
-2 + x1
|
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
2 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 + x1 + x2
|
[U42(x1, x2, x3)] |
= |
-2 + x1
|
[U51(x1, x2)] |
= |
-2 + x2
|
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 |
[U82(x1, x2, x3)] |
= |
-2 + x1
|
[isNatKind(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
2 + x1 + x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
2 |
[U13(x1)] |
= |
-2 + 2 · x1
|
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
-2 + x1
|
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
1 + 2 · x1 + x2
|
[U32(x1, x2)] |
= |
-2 + x1
|
[U33(x1)] |
= |
-2 + x1
|
[U43(x1, x2, x3)] |
= |
-2 + x2
|
[U44(x1, x2, x3)] |
= |
-2 + x2
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
2 · x1
|
[U52(x1)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
-2 + 2 · x1
|
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 + x1
|
[U86(x1)] |
= |
-2 + 2 · x1
|
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
-2 + 2 · x1
|
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
length(active(X)) |
→ |
length(X) |
(227) |
length(mark(X)) |
→ |
length(X) |
(226) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U85(tt,V2)) |
→ |
mark#(U86(isNatList(V2))) |
(285) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
2 · x1
|
[U21(x1, x2)] |
= |
2 · x1 + x2
|
[U22(x1, x2)] |
= |
2 + x2
|
[U94(x1, x2)] |
= |
1 + x1 + 2 · x2
|
[active#(x1)] |
= |
2 · x1
|
[active(x1)] |
= |
x1 |
[mark(x1)] |
= |
x1 |
[U91(x1, x2, x3)] |
= |
2 · x1 + 2 · x2
|
[U92(x1, x2, x3)] |
= |
2 + 2 · x2
|
[U93(x1, x2, x3)] |
= |
2 + 2 · x2
|
[length(x1)] |
= |
2 · x1
|
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
1 |
[U71(x1)] |
= |
1 |
[U81(x1, x2, x3)] |
= |
2 · x3
|
[U82(x1, x2, x3)] |
= |
2 · x3
|
[isNatKind(x1)] |
= |
1 |
[cons(x1, x2)] |
= |
2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
1 |
[U11(x1, x2)] |
= |
2 · x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
2 · x2
|
[isNatIListKind(x1)] |
= |
2 |
[U13(x1)] |
= |
x1 |
[isNatList(x1)] |
= |
x1 |
[U23(x1)] |
= |
2 + x1
|
[isNat(x1)] |
= |
x1 |
[U31(x1, x2)] |
= |
2 |
[U32(x1, x2)] |
= |
1 |
[U33(x1)] |
= |
1 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
2 |
[U52(x1)] |
= |
1 |
[U83(x1, x2, x3)] |
= |
2 · x3
|
[U84(x1, x2, x3)] |
= |
2 · x3
|
[U85(x1, x2)] |
= |
2 · x2
|
[U86(x1)] |
= |
2 · x1
|
[s(x1)] |
= |
2 + x1
|
[U61(x1)] |
= |
1 |
[nil] |
= |
1 |
the
pairs
mark#(U23(X)) |
→ |
mark#(X) |
(361) |
mark#(s(X)) |
→ |
mark#(X) |
(435) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 + 2 · x1
|
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
0 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
-2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
0 |
[U93(x1, x2, x3)] |
= |
-2 |
[length(x1)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x2
|
[U42(x1, x2, x3)] |
= |
-2 + x1 + x2
|
[U51(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[U71(x1)] |
= |
2 · x1
|
[U81(x1, x2, x3)] |
= |
-2 + x1 + 2 · x2 + x3
|
[U82(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
0 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
1 |
[isNat(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
-2 + x2
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
-2 + x2
|
[U44(x1, x2, x3)] |
= |
2 |
[U45(x1, x2)] |
= |
2 + 2 · x1
|
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
2 + x1
|
[U52(x1)] |
= |
-2 |
[U83(x1, x2, x3)] |
= |
2 |
[U84(x1, x2, x3)] |
= |
-2 + x1 + 2 · x2 + x3
|
[U85(x1, x2)] |
= |
2 + 2 · x1
|
[U86(x1)] |
= |
-2 |
[s(x1)] |
= |
-2 |
[U61(x1)] |
= |
-2 |
[nil] |
= |
2 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
mark#(isNat(X)) |
→ |
active#(isNat(X)) |
(362) |
mark#(length(X)) |
→ |
active#(length(mark(X))) |
(436) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 |
[U21(x1, x2)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
1 |
[active#(x1)] |
= |
-2 + 2 · x1
|
[active(x1)] |
= |
2 |
[mark(x1)] |
= |
2 |
[U91(x1, x2, x3)] |
= |
0 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
0 |
[U41(x1, x2, x3)] |
= |
2 + 2 · x2 + 2 · x3
|
[U42(x1, x2, x3)] |
= |
2 |
[U51(x1, x2)] |
= |
-2 + x2
|
[U71(x1)] |
= |
-2 + 2 · x1
|
[U81(x1, x2, x3)] |
= |
2 + 2 · x3
|
[U82(x1, x2, x3)] |
= |
2 |
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 |
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
2 |
[isNatIListKind(x1)] |
= |
2 |
[U13(x1)] |
= |
1 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
2 |
[isNat(x1)] |
= |
2 + 2 · x1
|
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
2 + 2 · x2
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 + 2 · x2
|
[U84(x1, x2, x3)] |
= |
2 + 2 · x1 + x2
|
[U85(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[U86(x1)] |
= |
2 |
[s(x1)] |
= |
2 |
[length(x1)] |
= |
2 |
[U61(x1)] |
= |
0 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U21(X1,mark(X2)) |
→ |
U21(X1,X2) |
(107) |
U21(mark(X1),X2) |
→ |
U21(X1,X2) |
(106) |
U21(active(X1),X2) |
→ |
U21(X1,X2) |
(108) |
U21(X1,active(X2)) |
→ |
U21(X1,X2) |
(109) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
U91(X1,mark(X2),X3) |
→ |
U91(X1,X2,X3) |
(203) |
U91(mark(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(202) |
U91(X1,X2,mark(X3)) |
→ |
U91(X1,X2,X3) |
(204) |
U91(active(X1),X2,X3) |
→ |
U91(X1,X2,X3) |
(205) |
U91(X1,active(X2),X3) |
→ |
U91(X1,X2,X3) |
(206) |
U91(X1,X2,active(X3)) |
→ |
U91(X1,X2,X3) |
(207) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
active#(isNat(s(V1))) |
→ |
mark#(U21(isNatKind(V1),V1)) |
(305) |
active#(length(cons(N,L))) |
→ |
mark#(U91(isNatList(L),L,N)) |
(332) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 + 2 · x1
|
[U22(x1, x2)] |
= |
1 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
0 |
[U21(x1, x2)] |
= |
2 |
[active(x1)] |
= |
2 + 2 · x1
|
[mark(x1)] |
= |
2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
2 + 2 · x2 + 2 · x3
|
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
1 + 2 · x1
|
[U41(x1, x2, x3)] |
= |
2 + x2 + x3
|
[U42(x1, x2, x3)] |
= |
2 + 2 · x2
|
[U51(x1, x2)] |
= |
2 |
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
-2 + 2 · x3
|
[U82(x1, x2, x3)] |
= |
2 + 2 · x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 |
[zeros] |
= |
2 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
2 + x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
-2 + x2
|
[isNatIListKind(x1)] |
= |
1 |
[U13(x1)] |
= |
0 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
-2 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[U32(x1, x2)] |
= |
2 |
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
-2 + x1 + x3
|
[U44(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U45(x1, x2)] |
= |
2 + x2
|
[U46(x1)] |
= |
-2 + x1
|
[isNatIList(x1)] |
= |
2 · x1
|
[U52(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
2 + 2 · x1 + x2 + x3
|
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
-2 + x2
|
[U86(x1)] |
= |
2 |
[s(x1)] |
= |
-2 |
[length(x1)] |
= |
0 |
[U61(x1)] |
= |
2 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
isNat(active(X)) |
→ |
isNat(X) |
(119) |
isNat(mark(X)) |
→ |
isNat(X) |
(118) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
mark#(U21(X1,X2)) |
→ |
active#(U21(mark(X1),X2)) |
(352) |
mark#(U91(X1,X2,X3)) |
→ |
active#(U91(mark(X1),X2,X3)) |
(421) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-1 + 2 · x1
|
[U22(x1, x2)] |
= |
1 |
[U94(x1, x2)] |
= |
1 |
[active#(x1)] |
= |
1 |
[active(x1)] |
= |
-2 + 2 · x1
|
[mark(x1)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
1 |
[U93(x1, x2, x3)] |
= |
1 |
[U21(x1, x2)] |
= |
2 + 2 · x2
|
[U41(x1, x2, x3)] |
= |
-2 + x2
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x3
|
[U51(x1, x2)] |
= |
-2 + 2 · x1 + x2
|
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 + 2 · x1 + x3
|
[U82(x1, x2, x3)] |
= |
2 + 2 · x1 + x3
|
[isNatKind(x1)] |
= |
0 |
[U23(x1)] |
= |
0 |
[U45(x1, x2)] |
= |
2 + 2 · x1
|
[U85(x1, x2)] |
= |
2 + x2
|
[isNat(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + 2 · x1
|
[tt] |
= |
2 |
[U12(x1, x2)] |
= |
-2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
1 |
[isNatList(x1)] |
= |
2 |
[U31(x1, x2)] |
= |
-2 + 2 · x1
|
[U32(x1, x2)] |
= |
2 + 2 · x2
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 + 2 · x1
|
[U44(x1, x2, x3)] |
= |
-2 + x2
|
[U46(x1)] |
= |
-2 |
[isNatIList(x1)] |
= |
x1 |
[U52(x1)] |
= |
2 + 2 · x1
|
[U83(x1, x2, x3)] |
= |
2 + x1 + 2 · x3
|
[U84(x1, x2, x3)] |
= |
-2 + x2 + x3
|
[U86(x1)] |
= |
2 + 2 · x1
|
[U91(x1, x2, x3)] |
= |
-2 + x2 + x3
|
[s(x1)] |
= |
0 |
[length(x1)] |
= |
2 |
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U23(active(X)) |
→ |
U23(X) |
(117) |
U23(mark(X)) |
→ |
U23(X) |
(116) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
s(active(X)) |
→ |
s(X) |
(225) |
s(mark(X)) |
→ |
s(X) |
(224) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
active#(U22(tt,V1)) |
→ |
mark#(U23(isNat(V1))) |
(240) |
active#(U94(tt,L)) |
→ |
mark#(s(length(L))) |
(298) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 |
[U22(x1, x2)] |
= |
-2 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 + x1
|
[active(x1)] |
= |
2 |
[mark(x1)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
-2 |
[U93(x1, x2, x3)] |
= |
-2 |
[U21(x1, x2)] |
= |
-2 + 2 · x1
|
[U41(x1, x2, x3)] |
= |
2 |
[U42(x1, x2, x3)] |
= |
2 + 2 · x1 + x3
|
[U51(x1, x2)] |
= |
-2 + 2 · x1
|
[U71(x1)] |
= |
-2 |
[U81(x1, x2, x3)] |
= |
-2 + x1 + x2 + x3
|
[U82(x1, x2, x3)] |
= |
x2 + x3
|
[isNatKind(x1)] |
= |
0 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + 2 · x2
|
[tt] |
= |
1 |
[U12(x1, x2)] |
= |
-2 + 2 · x2
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
-2 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
2 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
-2 + x2
|
[U32(x1, x2)] |
= |
-2 + x1
|
[U33(x1)] |
= |
2 |
[U43(x1, x2, x3)] |
= |
2 |
[U44(x1, x2, x3)] |
= |
-2 + x2 + 2 · x3
|
[U45(x1, x2)] |
= |
-2 + x2
|
[U46(x1)] |
= |
1 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 + x3
|
[U84(x1, x2, x3)] |
= |
-2 + x2 + x3
|
[U85(x1, x2)] |
= |
1 + x1 + x2
|
[U86(x1)] |
= |
-2 |
[U91(x1, x2, x3)] |
= |
2 + 2 · x1
|
[s(x1)] |
= |
0 |
[length(x1)] |
= |
-2 |
[U61(x1)] |
= |
0 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U92(X1,mark(X2),X3) |
→ |
U92(X1,X2,X3) |
(209) |
U92(mark(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(208) |
U92(X1,X2,mark(X3)) |
→ |
U92(X1,X2,X3) |
(210) |
U92(active(X1),X2,X3) |
→ |
U92(X1,X2,X3) |
(211) |
U92(X1,active(X2),X3) |
→ |
U92(X1,X2,X3) |
(212) |
U92(X1,X2,active(X3)) |
→ |
U92(X1,X2,X3) |
(213) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
active#(U91(tt,L,N)) |
→ |
mark#(U92(isNatIListKind(L),L,N)) |
(289) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark#(x1)] |
= |
-2 + 2 · x1
|
[U22(x1, x2)] |
= |
1 |
[U94(x1, x2)] |
= |
-2 |
[active#(x1)] |
= |
-2 |
[active(x1)] |
= |
-2 |
[mark(x1)] |
= |
-2 |
[U92(x1, x2, x3)] |
= |
2 |
[U93(x1, x2, x3)] |
= |
1 |
[U21(x1, x2)] |
= |
2 |
[U41(x1, x2, x3)] |
= |
-2 + 2 · x1 + x2 + x3
|
[U42(x1, x2, x3)] |
= |
-2 + 2 · x2 + x3
|
[U51(x1, x2)] |
= |
-2 + x1 + 2 · x2
|
[U71(x1)] |
= |
2 |
[U81(x1, x2, x3)] |
= |
2 + 2 · x1 + 2 · x2
|
[U82(x1, x2, x3)] |
= |
1 + x1 + x3
|
[isNatKind(x1)] |
= |
2 |
[cons(x1, x2)] |
= |
-2 + 2 · x1
|
[zeros] |
= |
0 |
[0] |
= |
0 |
[U11(x1, x2)] |
= |
-2 + x1
|
[tt] |
= |
0 |
[U12(x1, x2)] |
= |
-2 + 2 · x1
|
[isNatIListKind(x1)] |
= |
0 |
[U13(x1)] |
= |
1 |
[isNatList(x1)] |
= |
0 |
[U23(x1)] |
= |
2 |
[isNat(x1)] |
= |
0 |
[U31(x1, x2)] |
= |
2 + 2 · x2
|
[U32(x1, x2)] |
= |
-2 + 2 · x1
|
[U33(x1)] |
= |
-2 |
[U43(x1, x2, x3)] |
= |
2 + 2 · x3
|
[U44(x1, x2, x3)] |
= |
-2 + x1 + x3
|
[U45(x1, x2)] |
= |
2 |
[U46(x1)] |
= |
2 |
[isNatIList(x1)] |
= |
0 |
[U52(x1)] |
= |
2 |
[U83(x1, x2, x3)] |
= |
-2 + x2 + 2 · x3
|
[U84(x1, x2, x3)] |
= |
2 |
[U85(x1, x2)] |
= |
2 |
[U86(x1)] |
= |
-2 + x1
|
[U91(x1, x2, x3)] |
= |
-2 + x3
|
[s(x1)] |
= |
-2 |
[length(x1)] |
= |
2 |
[U61(x1)] |
= |
-2 |
[nil] |
= |
0 |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pair
mark#(U92(X1,X2,X3)) |
→ |
active#(U92(mark(X1),X2,X3)) |
(424) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Reduction Pair Processor with Usable Rules
Using the Knuth Bendix order with w0 = 1 and the following precedence and weight functions
prec(U21) |
= |
4 |
|
weight(U21) |
= |
3 |
|
|
|
prec(U22) |
= |
3 |
|
weight(U22) |
= |
2 |
|
|
|
prec(U92) |
= |
2 |
|
weight(U92) |
= |
2 |
|
|
|
prec(U93) |
= |
1 |
|
weight(U93) |
= |
1 |
|
|
|
prec(U94) |
= |
0 |
|
weight(U94) |
= |
1 |
|
|
|
in combination with the following argument filter
π(active#) |
= |
1 |
π(U21) |
= |
[] |
π(mark#) |
= |
1 |
π(U22) |
= |
[] |
π(U92) |
= |
[] |
π(U93) |
= |
[] |
π(U94) |
= |
[] |
together with the usable
rules
U22(X1,mark(X2)) |
→ |
U22(X1,X2) |
(111) |
U22(mark(X1),X2) |
→ |
U22(X1,X2) |
(110) |
U22(active(X1),X2) |
→ |
U22(X1,X2) |
(112) |
U22(X1,active(X2)) |
→ |
U22(X1,X2) |
(113) |
U93(X1,mark(X2),X3) |
→ |
U93(X1,X2,X3) |
(215) |
U93(mark(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(214) |
U93(X1,X2,mark(X3)) |
→ |
U93(X1,X2,X3) |
(216) |
U93(active(X1),X2,X3) |
→ |
U93(X1,X2,X3) |
(217) |
U93(X1,active(X2),X3) |
→ |
U93(X1,X2,X3) |
(218) |
U93(X1,X2,active(X3)) |
→ |
U93(X1,X2,X3) |
(219) |
U94(X1,mark(X2)) |
→ |
U94(X1,X2) |
(221) |
U94(mark(X1),X2) |
→ |
U94(X1,X2) |
(220) |
U94(active(X1),X2) |
→ |
U94(X1,X2) |
(222) |
U94(X1,active(X2)) |
→ |
U94(X1,X2) |
(223) |
(w.r.t. the implicit argument filter of the reduction pair),
the
pairs
active#(U21(tt,V1)) |
→ |
mark#(U22(isNatKind(V1),V1)) |
(237) |
active#(U92(tt,L,N)) |
→ |
mark#(U93(isNat(N),L,N)) |
(292) |
active#(U93(tt,L,N)) |
→ |
mark#(U94(isNatKind(N),L)) |
(295) |
could be deleted.
1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1.1 Dependency Graph Processor
The dependency pairs are split into 0
components.
-
The
2nd
component contains the
pair
cons#(X1,mark(X2)) |
→ |
cons#(X1,X2) |
(441) |
cons#(mark(X1),X2) |
→ |
cons#(X1,X2) |
(440) |
cons#(active(X1),X2) |
→ |
cons#(X1,X2) |
(442) |
cons#(X1,active(X2)) |
→ |
cons#(X1,X2) |
(443) |
1.1.2 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[cons#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.2.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
cons#(X1,mark(X2)) |
→ |
cons#(X1,X2) |
(441) |
|
1 |
≥ |
1 |
2 |
> |
2 |
cons#(mark(X1),X2) |
→ |
cons#(X1,X2) |
(440) |
|
1 |
> |
1 |
2 |
≥ |
2 |
cons#(active(X1),X2) |
→ |
cons#(X1,X2) |
(442) |
|
1 |
> |
1 |
2 |
≥ |
2 |
cons#(X1,active(X2)) |
→ |
cons#(X1,X2) |
(443) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
3rd
component contains the
pair
U11#(X1,mark(X2)) |
→ |
U11#(X1,X2) |
(445) |
U11#(mark(X1),X2) |
→ |
U11#(X1,X2) |
(444) |
U11#(active(X1),X2) |
→ |
U11#(X1,X2) |
(446) |
U11#(X1,active(X2)) |
→ |
U11#(X1,X2) |
(447) |
1.1.3 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U11#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.3.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U11#(X1,mark(X2)) |
→ |
U11#(X1,X2) |
(445) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U11#(mark(X1),X2) |
→ |
U11#(X1,X2) |
(444) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U11#(active(X1),X2) |
→ |
U11#(X1,X2) |
(446) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U11#(X1,active(X2)) |
→ |
U11#(X1,X2) |
(447) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
4th
component contains the
pair
U12#(X1,mark(X2)) |
→ |
U12#(X1,X2) |
(449) |
U12#(mark(X1),X2) |
→ |
U12#(X1,X2) |
(448) |
U12#(active(X1),X2) |
→ |
U12#(X1,X2) |
(450) |
U12#(X1,active(X2)) |
→ |
U12#(X1,X2) |
(451) |
1.1.4 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U12#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.4.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U12#(X1,mark(X2)) |
→ |
U12#(X1,X2) |
(449) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U12#(mark(X1),X2) |
→ |
U12#(X1,X2) |
(448) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U12#(active(X1),X2) |
→ |
U12#(X1,X2) |
(450) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U12#(X1,active(X2)) |
→ |
U12#(X1,X2) |
(451) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
5th
component contains the
pair
isNatIListKind#(active(X)) |
→ |
isNatIListKind#(X) |
(453) |
isNatIListKind#(mark(X)) |
→ |
isNatIListKind#(X) |
(452) |
1.1.5 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[isNatIListKind#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.5.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
isNatIListKind#(active(X)) |
→ |
isNatIListKind#(X) |
(453) |
|
1 |
> |
1 |
isNatIListKind#(mark(X)) |
→ |
isNatIListKind#(X) |
(452) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
6th
component contains the
pair
U13#(active(X)) |
→ |
U13#(X) |
(455) |
U13#(mark(X)) |
→ |
U13#(X) |
(454) |
1.1.6 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U13#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.6.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U13#(active(X)) |
→ |
U13#(X) |
(455) |
|
1 |
> |
1 |
U13#(mark(X)) |
→ |
U13#(X) |
(454) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
7th
component contains the
pair
isNatList#(active(X)) |
→ |
isNatList#(X) |
(457) |
isNatList#(mark(X)) |
→ |
isNatList#(X) |
(456) |
1.1.7 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[isNatList#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.7.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
isNatList#(active(X)) |
→ |
isNatList#(X) |
(457) |
|
1 |
> |
1 |
isNatList#(mark(X)) |
→ |
isNatList#(X) |
(456) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
8th
component contains the
pair
U21#(X1,mark(X2)) |
→ |
U21#(X1,X2) |
(459) |
U21#(mark(X1),X2) |
→ |
U21#(X1,X2) |
(458) |
U21#(active(X1),X2) |
→ |
U21#(X1,X2) |
(460) |
U21#(X1,active(X2)) |
→ |
U21#(X1,X2) |
(461) |
1.1.8 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U21#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.8.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U21#(X1,mark(X2)) |
→ |
U21#(X1,X2) |
(459) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U21#(mark(X1),X2) |
→ |
U21#(X1,X2) |
(458) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U21#(active(X1),X2) |
→ |
U21#(X1,X2) |
(460) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U21#(X1,active(X2)) |
→ |
U21#(X1,X2) |
(461) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
9th
component contains the
pair
U22#(X1,mark(X2)) |
→ |
U22#(X1,X2) |
(463) |
U22#(mark(X1),X2) |
→ |
U22#(X1,X2) |
(462) |
U22#(active(X1),X2) |
→ |
U22#(X1,X2) |
(464) |
U22#(X1,active(X2)) |
→ |
U22#(X1,X2) |
(465) |
1.1.9 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U22#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.9.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U22#(X1,mark(X2)) |
→ |
U22#(X1,X2) |
(463) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U22#(mark(X1),X2) |
→ |
U22#(X1,X2) |
(462) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U22#(active(X1),X2) |
→ |
U22#(X1,X2) |
(464) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U22#(X1,active(X2)) |
→ |
U22#(X1,X2) |
(465) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
10th
component contains the
pair
isNatKind#(active(X)) |
→ |
isNatKind#(X) |
(467) |
isNatKind#(mark(X)) |
→ |
isNatKind#(X) |
(466) |
1.1.10 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[isNatKind#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.10.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
isNatKind#(active(X)) |
→ |
isNatKind#(X) |
(467) |
|
1 |
> |
1 |
isNatKind#(mark(X)) |
→ |
isNatKind#(X) |
(466) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
11th
component contains the
pair
U23#(active(X)) |
→ |
U23#(X) |
(469) |
U23#(mark(X)) |
→ |
U23#(X) |
(468) |
1.1.11 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U23#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.11.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U23#(active(X)) |
→ |
U23#(X) |
(469) |
|
1 |
> |
1 |
U23#(mark(X)) |
→ |
U23#(X) |
(468) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
12th
component contains the
pair
isNat#(active(X)) |
→ |
isNat#(X) |
(471) |
isNat#(mark(X)) |
→ |
isNat#(X) |
(470) |
1.1.12 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[isNat#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.12.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
isNat#(active(X)) |
→ |
isNat#(X) |
(471) |
|
1 |
> |
1 |
isNat#(mark(X)) |
→ |
isNat#(X) |
(470) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
13th
component contains the
pair
U31#(X1,mark(X2)) |
→ |
U31#(X1,X2) |
(473) |
U31#(mark(X1),X2) |
→ |
U31#(X1,X2) |
(472) |
U31#(active(X1),X2) |
→ |
U31#(X1,X2) |
(474) |
U31#(X1,active(X2)) |
→ |
U31#(X1,X2) |
(475) |
1.1.13 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U31#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.13.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U31#(X1,mark(X2)) |
→ |
U31#(X1,X2) |
(473) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U31#(mark(X1),X2) |
→ |
U31#(X1,X2) |
(472) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U31#(active(X1),X2) |
→ |
U31#(X1,X2) |
(474) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U31#(X1,active(X2)) |
→ |
U31#(X1,X2) |
(475) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
14th
component contains the
pair
U32#(X1,mark(X2)) |
→ |
U32#(X1,X2) |
(477) |
U32#(mark(X1),X2) |
→ |
U32#(X1,X2) |
(476) |
U32#(active(X1),X2) |
→ |
U32#(X1,X2) |
(478) |
U32#(X1,active(X2)) |
→ |
U32#(X1,X2) |
(479) |
1.1.14 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U32#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.14.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U32#(X1,mark(X2)) |
→ |
U32#(X1,X2) |
(477) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U32#(mark(X1),X2) |
→ |
U32#(X1,X2) |
(476) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U32#(active(X1),X2) |
→ |
U32#(X1,X2) |
(478) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U32#(X1,active(X2)) |
→ |
U32#(X1,X2) |
(479) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
15th
component contains the
pair
U33#(active(X)) |
→ |
U33#(X) |
(481) |
U33#(mark(X)) |
→ |
U33#(X) |
(480) |
1.1.15 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U33#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.15.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U33#(active(X)) |
→ |
U33#(X) |
(481) |
|
1 |
> |
1 |
U33#(mark(X)) |
→ |
U33#(X) |
(480) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
16th
component contains the
pair
U41#(X1,mark(X2),X3) |
→ |
U41#(X1,X2,X3) |
(483) |
U41#(mark(X1),X2,X3) |
→ |
U41#(X1,X2,X3) |
(482) |
U41#(X1,X2,mark(X3)) |
→ |
U41#(X1,X2,X3) |
(484) |
U41#(active(X1),X2,X3) |
→ |
U41#(X1,X2,X3) |
(485) |
U41#(X1,active(X2),X3) |
→ |
U41#(X1,X2,X3) |
(486) |
U41#(X1,X2,active(X3)) |
→ |
U41#(X1,X2,X3) |
(487) |
1.1.16 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U41#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.16.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U41#(X1,mark(X2),X3) |
→ |
U41#(X1,X2,X3) |
(483) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U41#(mark(X1),X2,X3) |
→ |
U41#(X1,X2,X3) |
(482) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U41#(X1,X2,mark(X3)) |
→ |
U41#(X1,X2,X3) |
(484) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U41#(active(X1),X2,X3) |
→ |
U41#(X1,X2,X3) |
(485) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U41#(X1,active(X2),X3) |
→ |
U41#(X1,X2,X3) |
(486) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U41#(X1,X2,active(X3)) |
→ |
U41#(X1,X2,X3) |
(487) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
17th
component contains the
pair
U42#(X1,mark(X2),X3) |
→ |
U42#(X1,X2,X3) |
(489) |
U42#(mark(X1),X2,X3) |
→ |
U42#(X1,X2,X3) |
(488) |
U42#(X1,X2,mark(X3)) |
→ |
U42#(X1,X2,X3) |
(490) |
U42#(active(X1),X2,X3) |
→ |
U42#(X1,X2,X3) |
(491) |
U42#(X1,active(X2),X3) |
→ |
U42#(X1,X2,X3) |
(492) |
U42#(X1,X2,active(X3)) |
→ |
U42#(X1,X2,X3) |
(493) |
1.1.17 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U42#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.17.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U42#(X1,mark(X2),X3) |
→ |
U42#(X1,X2,X3) |
(489) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U42#(mark(X1),X2,X3) |
→ |
U42#(X1,X2,X3) |
(488) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U42#(X1,X2,mark(X3)) |
→ |
U42#(X1,X2,X3) |
(490) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U42#(active(X1),X2,X3) |
→ |
U42#(X1,X2,X3) |
(491) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U42#(X1,active(X2),X3) |
→ |
U42#(X1,X2,X3) |
(492) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U42#(X1,X2,active(X3)) |
→ |
U42#(X1,X2,X3) |
(493) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
18th
component contains the
pair
U43#(X1,mark(X2),X3) |
→ |
U43#(X1,X2,X3) |
(495) |
U43#(mark(X1),X2,X3) |
→ |
U43#(X1,X2,X3) |
(494) |
U43#(X1,X2,mark(X3)) |
→ |
U43#(X1,X2,X3) |
(496) |
U43#(active(X1),X2,X3) |
→ |
U43#(X1,X2,X3) |
(497) |
U43#(X1,active(X2),X3) |
→ |
U43#(X1,X2,X3) |
(498) |
U43#(X1,X2,active(X3)) |
→ |
U43#(X1,X2,X3) |
(499) |
1.1.18 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U43#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.18.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U43#(X1,mark(X2),X3) |
→ |
U43#(X1,X2,X3) |
(495) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U43#(mark(X1),X2,X3) |
→ |
U43#(X1,X2,X3) |
(494) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U43#(X1,X2,mark(X3)) |
→ |
U43#(X1,X2,X3) |
(496) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U43#(active(X1),X2,X3) |
→ |
U43#(X1,X2,X3) |
(497) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U43#(X1,active(X2),X3) |
→ |
U43#(X1,X2,X3) |
(498) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U43#(X1,X2,active(X3)) |
→ |
U43#(X1,X2,X3) |
(499) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
19th
component contains the
pair
U44#(X1,mark(X2),X3) |
→ |
U44#(X1,X2,X3) |
(501) |
U44#(mark(X1),X2,X3) |
→ |
U44#(X1,X2,X3) |
(500) |
U44#(X1,X2,mark(X3)) |
→ |
U44#(X1,X2,X3) |
(502) |
U44#(active(X1),X2,X3) |
→ |
U44#(X1,X2,X3) |
(503) |
U44#(X1,active(X2),X3) |
→ |
U44#(X1,X2,X3) |
(504) |
U44#(X1,X2,active(X3)) |
→ |
U44#(X1,X2,X3) |
(505) |
1.1.19 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U44#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.19.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U44#(X1,mark(X2),X3) |
→ |
U44#(X1,X2,X3) |
(501) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U44#(mark(X1),X2,X3) |
→ |
U44#(X1,X2,X3) |
(500) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U44#(X1,X2,mark(X3)) |
→ |
U44#(X1,X2,X3) |
(502) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U44#(active(X1),X2,X3) |
→ |
U44#(X1,X2,X3) |
(503) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U44#(X1,active(X2),X3) |
→ |
U44#(X1,X2,X3) |
(504) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U44#(X1,X2,active(X3)) |
→ |
U44#(X1,X2,X3) |
(505) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
20th
component contains the
pair
U45#(X1,mark(X2)) |
→ |
U45#(X1,X2) |
(507) |
U45#(mark(X1),X2) |
→ |
U45#(X1,X2) |
(506) |
U45#(active(X1),X2) |
→ |
U45#(X1,X2) |
(508) |
U45#(X1,active(X2)) |
→ |
U45#(X1,X2) |
(509) |
1.1.20 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U45#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.20.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U45#(X1,mark(X2)) |
→ |
U45#(X1,X2) |
(507) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U45#(mark(X1),X2) |
→ |
U45#(X1,X2) |
(506) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U45#(active(X1),X2) |
→ |
U45#(X1,X2) |
(508) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U45#(X1,active(X2)) |
→ |
U45#(X1,X2) |
(509) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
21th
component contains the
pair
U46#(active(X)) |
→ |
U46#(X) |
(511) |
U46#(mark(X)) |
→ |
U46#(X) |
(510) |
1.1.21 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U46#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.21.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U46#(active(X)) |
→ |
U46#(X) |
(511) |
|
1 |
> |
1 |
U46#(mark(X)) |
→ |
U46#(X) |
(510) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
22th
component contains the
pair
isNatIList#(active(X)) |
→ |
isNatIList#(X) |
(513) |
isNatIList#(mark(X)) |
→ |
isNatIList#(X) |
(512) |
1.1.22 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[isNatIList#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.22.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
isNatIList#(active(X)) |
→ |
isNatIList#(X) |
(513) |
|
1 |
> |
1 |
isNatIList#(mark(X)) |
→ |
isNatIList#(X) |
(512) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
23th
component contains the
pair
U51#(X1,mark(X2)) |
→ |
U51#(X1,X2) |
(515) |
U51#(mark(X1),X2) |
→ |
U51#(X1,X2) |
(514) |
U51#(active(X1),X2) |
→ |
U51#(X1,X2) |
(516) |
U51#(X1,active(X2)) |
→ |
U51#(X1,X2) |
(517) |
1.1.23 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U51#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.23.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U51#(X1,mark(X2)) |
→ |
U51#(X1,X2) |
(515) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U51#(mark(X1),X2) |
→ |
U51#(X1,X2) |
(514) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U51#(active(X1),X2) |
→ |
U51#(X1,X2) |
(516) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U51#(X1,active(X2)) |
→ |
U51#(X1,X2) |
(517) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
24th
component contains the
pair
U52#(active(X)) |
→ |
U52#(X) |
(519) |
U52#(mark(X)) |
→ |
U52#(X) |
(518) |
1.1.24 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U52#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.24.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U52#(active(X)) |
→ |
U52#(X) |
(519) |
|
1 |
> |
1 |
U52#(mark(X)) |
→ |
U52#(X) |
(518) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
25th
component contains the
pair
U61#(active(X)) |
→ |
U61#(X) |
(521) |
U61#(mark(X)) |
→ |
U61#(X) |
(520) |
1.1.25 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U61#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.25.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U61#(active(X)) |
→ |
U61#(X) |
(521) |
|
1 |
> |
1 |
U61#(mark(X)) |
→ |
U61#(X) |
(520) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
26th
component contains the
pair
U71#(active(X)) |
→ |
U71#(X) |
(523) |
U71#(mark(X)) |
→ |
U71#(X) |
(522) |
1.1.26 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U71#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.26.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U71#(active(X)) |
→ |
U71#(X) |
(523) |
|
1 |
> |
1 |
U71#(mark(X)) |
→ |
U71#(X) |
(522) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
27th
component contains the
pair
U81#(X1,mark(X2),X3) |
→ |
U81#(X1,X2,X3) |
(525) |
U81#(mark(X1),X2,X3) |
→ |
U81#(X1,X2,X3) |
(524) |
U81#(X1,X2,mark(X3)) |
→ |
U81#(X1,X2,X3) |
(526) |
U81#(active(X1),X2,X3) |
→ |
U81#(X1,X2,X3) |
(527) |
U81#(X1,active(X2),X3) |
→ |
U81#(X1,X2,X3) |
(528) |
U81#(X1,X2,active(X3)) |
→ |
U81#(X1,X2,X3) |
(529) |
1.1.27 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U81#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.27.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U81#(X1,mark(X2),X3) |
→ |
U81#(X1,X2,X3) |
(525) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U81#(mark(X1),X2,X3) |
→ |
U81#(X1,X2,X3) |
(524) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U81#(X1,X2,mark(X3)) |
→ |
U81#(X1,X2,X3) |
(526) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U81#(active(X1),X2,X3) |
→ |
U81#(X1,X2,X3) |
(527) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U81#(X1,active(X2),X3) |
→ |
U81#(X1,X2,X3) |
(528) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U81#(X1,X2,active(X3)) |
→ |
U81#(X1,X2,X3) |
(529) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
28th
component contains the
pair
U82#(X1,mark(X2),X3) |
→ |
U82#(X1,X2,X3) |
(531) |
U82#(mark(X1),X2,X3) |
→ |
U82#(X1,X2,X3) |
(530) |
U82#(X1,X2,mark(X3)) |
→ |
U82#(X1,X2,X3) |
(532) |
U82#(active(X1),X2,X3) |
→ |
U82#(X1,X2,X3) |
(533) |
U82#(X1,active(X2),X3) |
→ |
U82#(X1,X2,X3) |
(534) |
U82#(X1,X2,active(X3)) |
→ |
U82#(X1,X2,X3) |
(535) |
1.1.28 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U82#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.28.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U82#(X1,mark(X2),X3) |
→ |
U82#(X1,X2,X3) |
(531) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U82#(mark(X1),X2,X3) |
→ |
U82#(X1,X2,X3) |
(530) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U82#(X1,X2,mark(X3)) |
→ |
U82#(X1,X2,X3) |
(532) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U82#(active(X1),X2,X3) |
→ |
U82#(X1,X2,X3) |
(533) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U82#(X1,active(X2),X3) |
→ |
U82#(X1,X2,X3) |
(534) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U82#(X1,X2,active(X3)) |
→ |
U82#(X1,X2,X3) |
(535) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
29th
component contains the
pair
U83#(X1,mark(X2),X3) |
→ |
U83#(X1,X2,X3) |
(537) |
U83#(mark(X1),X2,X3) |
→ |
U83#(X1,X2,X3) |
(536) |
U83#(X1,X2,mark(X3)) |
→ |
U83#(X1,X2,X3) |
(538) |
U83#(active(X1),X2,X3) |
→ |
U83#(X1,X2,X3) |
(539) |
U83#(X1,active(X2),X3) |
→ |
U83#(X1,X2,X3) |
(540) |
U83#(X1,X2,active(X3)) |
→ |
U83#(X1,X2,X3) |
(541) |
1.1.29 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U83#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.29.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U83#(X1,mark(X2),X3) |
→ |
U83#(X1,X2,X3) |
(537) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U83#(mark(X1),X2,X3) |
→ |
U83#(X1,X2,X3) |
(536) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U83#(X1,X2,mark(X3)) |
→ |
U83#(X1,X2,X3) |
(538) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U83#(active(X1),X2,X3) |
→ |
U83#(X1,X2,X3) |
(539) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U83#(X1,active(X2),X3) |
→ |
U83#(X1,X2,X3) |
(540) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U83#(X1,X2,active(X3)) |
→ |
U83#(X1,X2,X3) |
(541) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
30th
component contains the
pair
U84#(X1,mark(X2),X3) |
→ |
U84#(X1,X2,X3) |
(543) |
U84#(mark(X1),X2,X3) |
→ |
U84#(X1,X2,X3) |
(542) |
U84#(X1,X2,mark(X3)) |
→ |
U84#(X1,X2,X3) |
(544) |
U84#(active(X1),X2,X3) |
→ |
U84#(X1,X2,X3) |
(545) |
U84#(X1,active(X2),X3) |
→ |
U84#(X1,X2,X3) |
(546) |
U84#(X1,X2,active(X3)) |
→ |
U84#(X1,X2,X3) |
(547) |
1.1.30 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U84#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.30.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U84#(X1,mark(X2),X3) |
→ |
U84#(X1,X2,X3) |
(543) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U84#(mark(X1),X2,X3) |
→ |
U84#(X1,X2,X3) |
(542) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U84#(X1,X2,mark(X3)) |
→ |
U84#(X1,X2,X3) |
(544) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U84#(active(X1),X2,X3) |
→ |
U84#(X1,X2,X3) |
(545) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U84#(X1,active(X2),X3) |
→ |
U84#(X1,X2,X3) |
(546) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U84#(X1,X2,active(X3)) |
→ |
U84#(X1,X2,X3) |
(547) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
31th
component contains the
pair
U85#(X1,mark(X2)) |
→ |
U85#(X1,X2) |
(549) |
U85#(mark(X1),X2) |
→ |
U85#(X1,X2) |
(548) |
U85#(active(X1),X2) |
→ |
U85#(X1,X2) |
(550) |
U85#(X1,active(X2)) |
→ |
U85#(X1,X2) |
(551) |
1.1.31 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U85#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.31.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U85#(X1,mark(X2)) |
→ |
U85#(X1,X2) |
(549) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U85#(mark(X1),X2) |
→ |
U85#(X1,X2) |
(548) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U85#(active(X1),X2) |
→ |
U85#(X1,X2) |
(550) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U85#(X1,active(X2)) |
→ |
U85#(X1,X2) |
(551) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
32th
component contains the
pair
U86#(active(X)) |
→ |
U86#(X) |
(553) |
U86#(mark(X)) |
→ |
U86#(X) |
(552) |
1.1.32 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[U86#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.32.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U86#(active(X)) |
→ |
U86#(X) |
(553) |
|
1 |
> |
1 |
U86#(mark(X)) |
→ |
U86#(X) |
(552) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
33th
component contains the
pair
U91#(X1,mark(X2),X3) |
→ |
U91#(X1,X2,X3) |
(555) |
U91#(mark(X1),X2,X3) |
→ |
U91#(X1,X2,X3) |
(554) |
U91#(X1,X2,mark(X3)) |
→ |
U91#(X1,X2,X3) |
(556) |
U91#(active(X1),X2,X3) |
→ |
U91#(X1,X2,X3) |
(557) |
U91#(X1,active(X2),X3) |
→ |
U91#(X1,X2,X3) |
(558) |
U91#(X1,X2,active(X3)) |
→ |
U91#(X1,X2,X3) |
(559) |
1.1.33 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U91#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.33.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U91#(X1,mark(X2),X3) |
→ |
U91#(X1,X2,X3) |
(555) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U91#(mark(X1),X2,X3) |
→ |
U91#(X1,X2,X3) |
(554) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U91#(X1,X2,mark(X3)) |
→ |
U91#(X1,X2,X3) |
(556) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U91#(active(X1),X2,X3) |
→ |
U91#(X1,X2,X3) |
(557) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U91#(X1,active(X2),X3) |
→ |
U91#(X1,X2,X3) |
(558) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U91#(X1,X2,active(X3)) |
→ |
U91#(X1,X2,X3) |
(559) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
34th
component contains the
pair
U92#(X1,mark(X2),X3) |
→ |
U92#(X1,X2,X3) |
(561) |
U92#(mark(X1),X2,X3) |
→ |
U92#(X1,X2,X3) |
(560) |
U92#(X1,X2,mark(X3)) |
→ |
U92#(X1,X2,X3) |
(562) |
U92#(active(X1),X2,X3) |
→ |
U92#(X1,X2,X3) |
(563) |
U92#(X1,active(X2),X3) |
→ |
U92#(X1,X2,X3) |
(564) |
U92#(X1,X2,active(X3)) |
→ |
U92#(X1,X2,X3) |
(565) |
1.1.34 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U92#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.34.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U92#(X1,mark(X2),X3) |
→ |
U92#(X1,X2,X3) |
(561) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U92#(mark(X1),X2,X3) |
→ |
U92#(X1,X2,X3) |
(560) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U92#(X1,X2,mark(X3)) |
→ |
U92#(X1,X2,X3) |
(562) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U92#(active(X1),X2,X3) |
→ |
U92#(X1,X2,X3) |
(563) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U92#(X1,active(X2),X3) |
→ |
U92#(X1,X2,X3) |
(564) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U92#(X1,X2,active(X3)) |
→ |
U92#(X1,X2,X3) |
(565) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
35th
component contains the
pair
U93#(X1,mark(X2),X3) |
→ |
U93#(X1,X2,X3) |
(567) |
U93#(mark(X1),X2,X3) |
→ |
U93#(X1,X2,X3) |
(566) |
U93#(X1,X2,mark(X3)) |
→ |
U93#(X1,X2,X3) |
(568) |
U93#(active(X1),X2,X3) |
→ |
U93#(X1,X2,X3) |
(569) |
U93#(X1,active(X2),X3) |
→ |
U93#(X1,X2,X3) |
(570) |
U93#(X1,X2,active(X3)) |
→ |
U93#(X1,X2,X3) |
(571) |
1.1.35 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U93#(x1, x2, x3)] |
= |
1 · x1 + 1 · x2 + 1 · x3
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.35.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U93#(X1,mark(X2),X3) |
→ |
U93#(X1,X2,X3) |
(567) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U93#(mark(X1),X2,X3) |
→ |
U93#(X1,X2,X3) |
(566) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U93#(X1,X2,mark(X3)) |
→ |
U93#(X1,X2,X3) |
(568) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
U93#(active(X1),X2,X3) |
→ |
U93#(X1,X2,X3) |
(569) |
|
1 |
> |
1 |
2 |
≥ |
2 |
3 |
≥ |
3 |
U93#(X1,active(X2),X3) |
→ |
U93#(X1,X2,X3) |
(570) |
|
1 |
≥ |
1 |
2 |
> |
2 |
3 |
≥ |
3 |
U93#(X1,X2,active(X3)) |
→ |
U93#(X1,X2,X3) |
(571) |
|
1 |
≥ |
1 |
2 |
≥ |
2 |
3 |
> |
3 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
36th
component contains the
pair
U94#(X1,mark(X2)) |
→ |
U94#(X1,X2) |
(573) |
U94#(mark(X1),X2) |
→ |
U94#(X1,X2) |
(572) |
U94#(active(X1),X2) |
→ |
U94#(X1,X2) |
(574) |
U94#(X1,active(X2)) |
→ |
U94#(X1,X2) |
(575) |
1.1.36 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[mark(x1)] |
= |
1 · x1
|
[active(x1)] |
= |
1 · x1
|
[U94#(x1, x2)] |
= |
1 · x1 + 1 · x2
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.36.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
U94#(X1,mark(X2)) |
→ |
U94#(X1,X2) |
(573) |
|
1 |
≥ |
1 |
2 |
> |
2 |
U94#(mark(X1),X2) |
→ |
U94#(X1,X2) |
(572) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U94#(active(X1),X2) |
→ |
U94#(X1,X2) |
(574) |
|
1 |
> |
1 |
2 |
≥ |
2 |
U94#(X1,active(X2)) |
→ |
U94#(X1,X2) |
(575) |
|
1 |
≥ |
1 |
2 |
> |
2 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
37th
component contains the
pair
s#(active(X)) |
→ |
s#(X) |
(577) |
s#(mark(X)) |
→ |
s#(X) |
(576) |
1.1.37 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[s#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.37.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
s#(active(X)) |
→ |
s#(X) |
(577) |
|
1 |
> |
1 |
s#(mark(X)) |
→ |
s#(X) |
(576) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.
-
The
38th
component contains the
pair
length#(active(X)) |
→ |
length#(X) |
(579) |
length#(mark(X)) |
→ |
length#(X) |
(578) |
1.1.38 Monotonic Reduction Pair Processor with Usable Rules
Using the linear polynomial interpretation over the naturals
[active(x1)] |
= |
1 · x1
|
[mark(x1)] |
= |
1 · x1
|
[length#(x1)] |
= |
1 · x1
|
having no usable rules (w.r.t. the implicit argument filter of the
reduction pair),
the
rule
could be deleted.
1.1.38.1 Size-Change Termination
Using size-change termination in combination with
the subterm criterion
one obtains the following initial size-change graphs.
length#(active(X)) |
→ |
length#(X) |
(579) |
|
1 |
> |
1 |
length#(mark(X)) |
→ |
length#(X) |
(578) |
|
1 |
> |
1 |
As there is no critical graph in the transitive closure, there are no infinite chains.