NO
0 RelTRS
↳1 RelTRStoRelADPProof (⇔, 0 ms)
↳2 RelADPP
↳3 RelADPDepGraphProof (⇔, 0 ms)
↳4 AND
↳5 RelADPP
↳6 RelADPDerelatifyingProof (⇔, 0 ms)
↳7 QDP
↳8 MRRProof (⇔, 23 ms)
↳9 QDP
↳10 MRRProof (⇔, 0 ms)
↳11 QDP
↳12 PisEmptyProof (⇔, 0 ms)
↳13 YES
↳14 RelADPP
↳15 RelADPDerelatifyingProof (⇔, 0 ms)
↳16 QDP
↳17 MRRProof (⇔, 19 ms)
↳18 QDP
↳19 PisEmptyProof (⇔, 0 ms)
↳20 YES
↳21 RelADPP
↳22 RelADPDerelatifyingProof (⇔, 0 ms)
↳23 QDP
↳24 MRRProof (⇔, 15 ms)
↳25 QDP
↳26 TransformationProof (⇔, 0 ms)
↳27 QDP
↳28 NonTerminationLoopProof (⇒, 0 ms)
↳29 NO
↳30 RelADPP
↳31 RelADPReductionPairProof (⇔, 107 ms)
↳32 RelADPP
↳33 DAbsisEmptyProof (⇔, 0 ms)
↳34 YES
↳35 RelADPP
↳36 RelADPReductionPairProof (⇔, 97 ms)
↳37 RelADPP
↳38 DAbsisEmptyProof (⇔, 0 ms)
↳39 YES
↳40 RelADPP
↳41 RelADPReductionPairProof (⇔, 91 ms)
↳42 RelADPP
↳43 DAbsisEmptyProof (⇔, 0 ms)
↳44 YES
↳45 RelADPP
↳46 RelADPReductionPairProof (⇔, 112 ms)
↳47 RelADPP
↳48 DAbsisEmptyProof (⇔, 0 ms)
↳49 YES
↳50 RelADPP
↳51 RelADPReductionPairProof (⇔, 88 ms)
↳52 RelADPP
↳53 RelADPDepGraphProof (⇔, 0 ms)
↳54 RelADPP
↳55 RelADPDerelatifyingProof (⇔, 0 ms)
↳56 QDP
↳57 MRRProof (⇔, 10 ms)
↳58 QDP
↳59 MRRProof (⇔, 0 ms)
↳60 QDP
↳61 PisEmptyProof (⇔, 0 ms)
↳62 YES
↳63 RelADPP
↳64 RelADPReductionPairProof (⇔, 103 ms)
↳65 RelADPP
↳66 DAbsisEmptyProof (⇔, 0 ms)
↳67 YES
↳68 RelADPP
↳69 RelADPReductionPairProof (⇔, 107 ms)
↳70 RelADPP
↳71 RelADPDepGraphProof (⇔, 0 ms)
↳72 TRUE
↳73 RelADPP
↳74 RelADPReductionPairProof (⇔, 101 ms)
↳75 RelADPP
↳76 DAbsisEmptyProof (⇔, 0 ms)
↳77 YES
↳78 RelADPP
↳79 RelADPReductionPairProof (⇔, 108 ms)
↳80 RelADPP
↳81 DAbsisEmptyProof (⇔, 0 ms)
↳82 YES
↳83 RelADPP
↳84 RelADPReductionPairProof (⇔, 98 ms)
↳85 RelADPP
↳86 DAbsisEmptyProof (⇔, 0 ms)
↳87 YES
↳88 RelADPP
↳89 RelADPReductionPairProof (⇔, 99 ms)
↳90 RelADPP
↳91 RelADPDepGraphProof (⇔, 0 ms)
↳92 TRUE
↳93 RelADPP
↳94 RelADPReductionPairProof (⇔, 97 ms)
↳95 RelADPP
↳96 RelADPDepGraphProof (⇔, 0 ms)
↳97 RelADPP
↳98 RelADPDerelatifyingProof (⇔, 0 ms)
↳99 QDP
↳100 MRRProof (⇔, 23 ms)
↳101 QDP
↳102 PisEmptyProof (⇔, 0 ms)
↳103 YES
top(U(x, y)) → top(check(D(x, y)))
D(x, B) → U(x, B)
F(x, U(O(y), z)) → U(x, F(y, z))
F(x, U(N(y), z)) → U(x, F(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
D(E, F(x, y)) → F(E, D(x, y))
check(O(x)) → O(x)
check(D(x, y)) → D(check(x), y)
E → N(E)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
check(U(x, y)) → U(check(x), y)
check(F(x, y)) → F(check(x), y)
check(N(x)) → N(check(x))
check(D(x, y)) → D(x, check(y))
We upgrade the RelTRS problem to an equivalent Relative ADP Problem [IJCAR24].
top(U(x, y)) → TOP(check(D(x, y)))
top(U(x, y)) → top(CHECK(D(x, y)))
top(U(x, y)) → top(check(D1(x, y)))
D(x, B) → U(x, B)
F(x, U(O(y), z)) → U(x, F1(y, z))
F(x, U(N(y), z)) → U(x, F1(y, z))
D(O(x), F(y, z)) → F1(x, D(y, z))
D(O(x), F(y, z)) → F(x, D1(y, z))
D(N(x), F(y, z)) → F1(x, D(y, z))
D(N(x), F(y, z)) → F(x, D1(y, z))
F(x, U(E, y)) → U(x, F1(E, y))
F(x, U(E, y)) → U(x, F(E1, y))
D(E, F(x, y)) → F1(E, D(x, y))
D(E, F(x, y)) → F(E1, D(x, y))
D(E, F(x, y)) → F(E, D1(x, y))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E1)
check(F(x, y)) → F1(x, CHECK(y))
check(U(x, y)) → U(x, CHECK(y))
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
check(F(x, y)) → F1(CHECK(x), y)
check(N(x)) → N(CHECK(x))
check(D(x, y)) → D1(x, CHECK(y))
We use the relative dependency graph processor [IJCAR24].
The approximation of the Relative Dependency Graph contains:
3 SCCs with nodes from P_abs,
12 Lassos,
Result: This relative DT problem is equivalent to 15 subproblems.
F(x, U(O(y), z)) → U(x, F1(y, z))
F(x, U(E, y)) → U(x, F1(E, y))
F(x, U(N(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
E → N(E)
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
We use the first derelatifying processor [IJCAR24].
There are no annotations in relative ADPs, so the relative ADP problem can be transformed into a non-relative DP problem.
F1(x, U(O(y), z)) → F1(y, z)
F1(x, U(E, y)) → F1(E, y)
F1(x, U(N(y), z)) → F1(y, z)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F1(x, U(O(y), z)) → F1(y, z)
F(x, U(O(y), z)) → U(x, F(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
POL(B) = 0
POL(D(x1, x2)) = x1 + x2
POL(E) = 1
POL(F(x1, x2)) = 2 + x1 + x2
POL(F1(x1, x2)) = x1 + x2
POL(N(x1)) = x1
POL(O(x1)) = 1 + x1
POL(U(x1, x2)) = x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 2·x1
F1(x, U(E, y)) → F1(E, y)
F1(x, U(N(y), z)) → F1(y, z)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F1(x, U(E, y)) → F1(E, y)
F1(x, U(N(y), z)) → F1(y, z)
POL(B) = 1
POL(D(x1, x2)) = 1 + 2·x1 + x2
POL(E) = 2
POL(F(x1, x2)) = 2·x1 + x2
POL(F1(x1, x2)) = x1 + x2
POL(N(x1)) = x1
POL(O(x1)) = 2 + 2·x1
POL(U(x1, x2)) = 1 + 2·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = x1
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
D(O(x), F(y, z)) → F(x, D1(y, z))
D(E, F(x, y)) → F(E, D1(x, y))
D(N(x), F(y, z)) → F(x, D1(y, z))
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
We use the first derelatifying processor [IJCAR24].
There are no annotations in relative ADPs, so the relative ADP problem can be transformed into a non-relative DP problem.
D1(O(x), F(y, z)) → D1(y, z)
D1(E, F(x, y)) → D1(x, y)
D1(N(x), F(y, z)) → D1(y, z)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
D1(O(x), F(y, z)) → D1(y, z)
D1(E, F(x, y)) → D1(x, y)
D1(N(x), F(y, z)) → D1(y, z)
F(x, U(O(y), z)) → U(x, F(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
POL(B) = 0
POL(D(x1, x2)) = 2 + x1 + x2
POL(D1(x1, x2)) = x1 + x2
POL(E) = 0
POL(F(x1, x2)) = 2 + x1 + x2
POL(N(x1)) = x1
POL(O(x1)) = 1 + 2·x1
POL(U(x1, x2)) = 2 + x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = x1
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
top(U(x, y)) → TOP(check(D(x, y)))
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
We use the first derelatifying processor [IJCAR24].
There are no annotations in relative ADPs, so the relative ADP problem can be transformed into a non-relative DP problem.
TOP(U(x, y)) → TOP(check(D(x, y)))
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
POL(B) = 2
POL(D(x1, x2)) = x1 + 2·x2
POL(E) = 1
POL(F(x1, x2)) = x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 1 + 2·x1
POL(TOP(x1)) = 2·x1
POL(U(x1, x2)) = x1 + 2·x2
POL(check(x1)) = x1
POL(top(x1)) = x1
TOP(U(x, y)) → TOP(check(D(x, y)))
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
TOP(U(x0, x1)) → TOP(D(check(x0), x1)) → TOP(U(x0, x1)) → TOP(D(check(x0), x1))
TOP(U(x0, x1)) → TOP(D(x0, check(x1))) → TOP(U(x0, x1)) → TOP(D(x0, check(x1)))
TOP(U(x0, B)) → TOP(check(U(x0, B))) → TOP(U(x0, B)) → TOP(check(U(x0, B)))
TOP(U(E, F(x0, x1))) → TOP(check(F(E, D(x0, x1)))) → TOP(U(E, F(x0, x1))) → TOP(check(F(E, D(x0, x1))))
TOP(U(N(x0), F(x1, x2))) → TOP(check(F(x0, D(x1, x2)))) → TOP(U(N(x0), F(x1, x2))) → TOP(check(F(x0, D(x1, x2))))
TOP(U(x0, x1)) → TOP(D(check(x0), x1))
TOP(U(x0, x1)) → TOP(D(x0, check(x1)))
TOP(U(x0, B)) → TOP(check(U(x0, B)))
TOP(U(E, F(x0, x1))) → TOP(check(F(E, D(x0, x1))))
TOP(U(N(x0), F(x1, x2))) → TOP(check(F(x0, D(x1, x2))))
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E1, y))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
F(x, U(E, y)) → U(x, F(E1, y))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 3
POL(CHECK(x1)) = 2 + 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 2·x1 + 2·x2
POL(E) = 1
POL(E1) = 0
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 2·x1 + 3·x2
POL(N(x1)) = x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 2
POL(U(x1, x2)) = x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
D(N(x), F(y, z)) → F1(x, D(y, z))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
D(N(x), F(y, z)) → F1(x, D(y, z))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 0
POL(CHECK(x1)) = 2 + 3·x1
POL(D(x1, x2)) = 3 + 2·x1 + 3·x2
POL(D1(x1, x2)) = 2 + 3·x2
POL(E) = 1
POL(E1) = 3
POL(F(x1, x2)) = 3 + 2·x1 + 2·x2
POL(F1(x1, x2)) = 1 + x2
POL(N(x1)) = x1
POL(O(x1)) = 2·x1
POL(TOP(x1)) = 0
POL(U(x1, x2)) = 2·x1 + x2
POL(check(x1)) = 2·x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
F(x, U(E, y)) → U(x, F1(E, y))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
F(x, U(E, y)) → U(x, F1(E, y))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 0
POL(CHECK(x1)) = 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 2·x2
POL(D1(x1, x2)) = 2·x1 + 2·x2
POL(E) = 3
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 2·x2
POL(F1(x1, x2)) = 3·x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 3 + 3·x1
POL(TOP(x1)) = 2 + 2·x1
POL(U(x1, x2)) = 2 + 3·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(N(x)) → N(CHECK(x))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
D(O(x), F(y, z)) → F(x, D1(y, z))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
D(O(x), F(y, z)) → F(x, D1(y, z))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 1
POL(CHECK(x1)) = 2 + 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 2·x1 + 3·x2
POL(E) = 3
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 2·x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 2
POL(U(x1, x2)) = 3·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
F(x, U(N(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Relative ADPs:
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
F(x, U(N(y), z)) → U(x, F1(y, z))
check(U(x, y)) → U(x, CHECK(y))
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
POL(B) = 2
POL(CHECK(x1)) = 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 2·x2
POL(D1(x1, x2)) = 2·x1
POL(E) = 0
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 2·x2
POL(F1(x1, x2)) = 0
POL(N(x1)) = 3·x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 2 + 2·x1 + x12
POL(U(x1, x2)) = x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
F(x, U(N(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
We use the relative dependency graph processor [IJCAR24].
The approximation of the Relative Dependency Graph contains:
1 SCC with nodes from P_abs,
0 Lassos,
Result: This relative DT problem is equivalent to 1 subproblem.
F(x, U(N(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
E → N(E)
check(U(x, y)) → U(check(x), y)
check(N(x)) → N(check(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
We use the first derelatifying processor [IJCAR24].
There are no annotations in relative ADPs, so the relative ADP problem can be transformed into a non-relative DP problem.
F1(x, U(N(y), z)) → F1(y, z)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
POL(B) = 2
POL(D(x1, x2)) = 2·x1 + 2·x2
POL(E) = 2
POL(F(x1, x2)) = 2·x1 + 2·x2
POL(F1(x1, x2)) = x1 + x2
POL(N(x1)) = x1
POL(O(x1)) = 2 + 2·x1
POL(U(x1, x2)) = 2·x1 + 2·x2
POL(check(x1)) = x1
POL(top(x1)) = x1
F1(x, U(N(y), z)) → F1(y, z)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F1(x, U(N(y), z)) → F1(y, z)
POL(B) = 1
POL(D(x1, x2)) = 1 + 2·x1 + x2
POL(E) = 2
POL(F(x1, x2)) = 1 + 2·x1 + x2
POL(F1(x1, x2)) = x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 1 + x1
POL(U(x1, x2)) = 1 + 2·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = x1
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
D(N(x), F(y, z)) → F(x, D1(y, z))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
D(N(x), F(y, z)) → F(x, D1(y, z))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 0
POL(CHECK(x1)) = 2 + 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 2·x1 + 3·x2
POL(E) = 3
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 2·x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 0
POL(U(x1, x2)) = 3·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
D(E, F(x, y)) → F1(E, D(x, y))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Relative ADPs:
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
check(U(x, y)) → U(CHECK(x), y)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
D(E, F(x, y)) → F1(E, D(x, y))
check(O(x)) → O(CHECK(x))
check(N(x)) → N(CHECK(x))
POL(B) = 1
POL(CHECK(x1)) = 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 3·x1 + 2·x2
POL(E) = 1
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 3·x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = x1
POL(U(x1, x2)) = 3 + 2·x1 + 2·x2
POL(check(x1)) = x1
POL(top(x1)) = 0
D(E, F(x, y)) → F1(E, D(x, y))
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(N(x)) → N(CHECK(x))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
We use the relative dependency graph processor [IJCAR24].
The approximation of the Relative Dependency Graph contains:
0 SCCs with nodes from P_abs,
0 Lassos,
Result: This relative DT problem is equivalent to 0 subproblems.
D(E, F(x, y)) → F(E, D1(x, y))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
D(E, F(x, y)) → F(E, D1(x, y))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 0
POL(CHECK(x1)) = 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 2·x1 + 3·x2
POL(E) = 0
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 2·x1 + 2·x2
POL(N(x1)) = 3·x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 0
POL(U(x1, x2)) = x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(E, F(x, y)) → F(E, D(x, y))
D(x, B) → U(x, B)
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
D(O(x), F(y, z)) → F1(x, D(y, z))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
D(O(x), F(y, z)) → F1(x, D(y, z))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 1
POL(CHECK(x1)) = 2 + 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 2·x1 + 3·x2
POL(E) = 1
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 2·x1 + 2·x2
POL(N(x1)) = x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 2
POL(U(x1, x2)) = 2·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
D(E, F(x, y)) → F(E1, D(x, y))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Absolute ADPs:
D(E, F(x, y)) → F(E1, D(x, y))
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
POL(B) = 0
POL(CHECK(x1)) = 2 + 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 3·x1 + x2
POL(E) = 0
POL(E1) = 0
POL(F(x1, x2)) = 3 + 3·x1 + x2
POL(F1(x1, x2)) = 2·x1
POL(N(x1)) = 3·x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = x1 + x12
POL(U(x1, x2)) = 3·x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(E, F(x, y)) → F(E, D(x, y))
D(x, B) → U(x, B)
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
D(x, B) → U(x, B)
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Relative ADPs:
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
D(x, B) → U(x, B)
check(U(x, y)) → U(x, CHECK(y))
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
POL(B) = 1
POL(CHECK(x1)) = 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = x1
POL(E) = 0
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 1 + x2
POL(N(x1)) = x1
POL(O(x1)) = x1
POL(TOP(x1)) = 2 + 2·x1
POL(U(x1, x2)) = x1 + x2
POL(check(x1)) = 3 + 3·x1
POL(top(x1)) = 0
D(x, B) → U(x, B)
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
We use the relative dependency graph processor [IJCAR24].
The approximation of the Relative Dependency Graph contains:
0 SCCs with nodes from P_abs,
0 Lassos,
Result: This relative DT problem is equivalent to 0 subproblems.
F(x, U(O(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
check(D(x, y)) → D1(CHECK(x), y)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(F(x, y)) → F1(x, CHECK(y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(D(x, y)) → D1(x, CHECK(y))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
We use the reduction pair processor [IJCAR24].
The following rules can be oriented strictly (l^# > ann(r))
and therefore we can remove all of its annotations in the right-hand side:
Relative ADPs:
check(D(x, y)) → D1(CHECK(x), y)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(F(x, y)) → F1(x, CHECK(y))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(F(x, y)) → F1(CHECK(x), y)
check(D(x, y)) → D1(x, CHECK(y))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
F(x, U(E, y)) → U(x, F(E, y))
F(x, U(O(y), z)) → U(x, F1(y, z))
check(U(x, y)) → U(x, CHECK(y))
check(O(x)) → O(CHECK(x))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
POL(B) = 2
POL(CHECK(x1)) = 2·x1
POL(D(x1, x2)) = 3 + 3·x1 + 3·x2
POL(D1(x1, x2)) = 2·x1 + 2·x2
POL(E) = 0
POL(E1) = 3
POL(F(x1, x2)) = 3 + 3·x1 + 3·x2
POL(F1(x1, x2)) = 0
POL(N(x1)) = x1
POL(O(x1)) = 3·x1
POL(TOP(x1)) = 2 + 2·x12
POL(U(x1, x2)) = x1 + x2
POL(check(x1)) = x1
POL(top(x1)) = 0
F(x, U(O(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
E → N(E)
check(O(x)) → O(CHECK(x))
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(CHECK(x), y)
check(N(x)) → N(CHECK(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(U(x, y)) → U(x, CHECK(y))
check(F(x, y)) → F(x, check(y))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
We use the relative dependency graph processor [IJCAR24].
The approximation of the Relative Dependency Graph contains:
1 SCC with nodes from P_abs,
0 Lassos,
Result: This relative DT problem is equivalent to 1 subproblem.
F(x, U(O(y), z)) → U(x, F1(y, z))
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
check(N(x)) → N(check(x))
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
D(O(x), F(y, z)) → F(x, D(y, z))
check(D(x, y)) → D(x, check(y))
F(x, U(E, y)) → U(x, F(E, y))
We use the first derelatifying processor [IJCAR24].
There are no annotations in relative ADPs, so the relative ADP problem can be transformed into a non-relative DP problem.
F1(x, U(O(y), z)) → F1(y, z)
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
F(x, U(O(y), z)) → U(x, F(y, z))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))
F1(x, U(O(y), z)) → F1(y, z)
F(x, U(O(y), z)) → U(x, F(y, z))
D(O(x), F(y, z)) → F(x, D(y, z))
POL(B) = 2
POL(D(x1, x2)) = 2·x1 + 2·x2
POL(E) = 0
POL(F(x1, x2)) = 2·x1 + 2·x2
POL(F1(x1, x2)) = x1 + x2
POL(N(x1)) = x1
POL(O(x1)) = 2 + x1
POL(U(x1, x2)) = 2·x1 + 2·x2
POL(check(x1)) = x1
POL(top(x1)) = x1
check(O(x)) → O(x)
E → N(E)
F(x, U(N(y), z)) → U(x, F(y, z))
check(U(x, y)) → U(check(x), y)
D(x, B) → U(x, B)
D(E, F(x, y)) → F(E, D(x, y))
check(N(x)) → N(check(x))
top(U(x, y)) → top(check(D(x, y)))
check(D(x, y)) → D(check(x), y)
check(F(x, y)) → F(x, check(y))
check(U(x, y)) → U(x, check(y))
check(O(x)) → O(check(x))
D(N(x), F(y, z)) → F(x, D(y, z))
check(F(x, y)) → F(check(x), y)
F(x, U(E, y)) → U(x, F(E, y))
check(D(x, y)) → D(x, check(y))