YES
0 RelTRS
↳1 RelTRStoRelADPProof (⇔, 0 ms)
↳2 RelADPP
↳3 RelADPDepGraphProof (⇔, 0 ms)
↳4 AND
↳5 RelADPP
↳6 RelADPCleverAfsProof (⇒, 46 ms)
↳7 QDP
↳8 MRRProof (⇔, 0 ms)
↳9 QDP
↳10 QDPOrderProof (⇔, 3 ms)
↳11 QDP
↳12 PisEmptyProof (⇔, 0 ms)
↳13 YES
↳14 RelADPP
↳15 RelADPCleverAfsProof (⇒, 46 ms)
↳16 QDP
↳17 MRRProof (⇔, 0 ms)
↳18 QDP
↳19 PisEmptyProof (⇔, 0 ms)
↳20 YES
f(g(x)) → g(f(f(x)))
f(h(x)) → h(g(x))
f'(s(x), y, y) → f'(y, x, s(x))
rand(x) → rand(s(x))
rand(x) → x
We upgrade the RelTRS problem to an equivalent Relative ADP Problem [IJCAR24].
f(g(x)) → g(F(f(x)))
f(g(x)) → g(f(F(x)))
f(h(x)) → h(g(x))
f'(s(x), y, y) → F'(y, x, s(x))
rand(x) → RAND(s(x))
rand(x) → x
We use the relative dependency graph processor [IJCAR24].
The approximation of the Relative Dependency Graph contains:
2 SCCs with nodes from P_abs,
0 Lassos,
Result: This relative DT problem is equivalent to 2 subproblems.
f(g(x)) → g(f(f(x)))
f'(s(x), y, y) → F'(y, x, s(x))
f(h(x)) → h(g(x))
rand(x) → rand(s(x))
rand(x) → x
Furthermore, We use an argument filter [LPAR04].
Filtering:s_1 =
F'_3 = 2
f_1 =
h_1 =
rand_1 =
g_1 =
f'_3 = 0, 1, 2
Found this filtering by looking at the following order that orders at least one DP strictly:Combined order from the following AFS and order.
F'(x1, x2, x3) = F'(x1, x2)
s(x1) = s(x1)
f(x1) = x1
g(x1) = x1
f'(x1, x2, x3) = f'
h(x1) = h(x1)
Recursive path order with status [RPO].
Quasi-Precedence:
f' > [F'2, s1]
F'2: multiset
s1: multiset
f': multiset
h1: multiset
F'(s0(x), y) → F'(y, x)
f0(g0(x)) → g0(f0(f0(x)))
f' → f'
f0(h0(x)) → h0(g0(x))
rand0(x) → rand0(s0(x))
rand0(x) → x
rand0(x) → x
POL(F'(x1, x2)) = x1 + x2
POL(f') = 0
POL(f0(x1)) = x1
POL(g0(x1)) = x1
POL(h0(x1)) = x1
POL(rand0(x1)) = 2 + x1
POL(s0(x1)) = x1
F'(s0(x), y) → F'(y, x)
f0(g0(x)) → g0(f0(f0(x)))
f' → f'
f0(h0(x)) → h0(g0(x))
rand0(x) → rand0(s0(x))
The following pairs can be oriented strictly and are deleted.
The remaining pairs can at least be oriented weakly.
F'(s0(x), y) → F'(y, x)
rand0 > [F'2, s01]
F'2: multiset
s01: multiset
f': multiset
rand0: multiset
f0(g0(x)) → g0(f0(f0(x)))
f' → f'
f0(h0(x)) → h0(g0(x))
rand0(x) → rand0(s0(x))
f0(g0(x)) → g0(f0(f0(x)))
f' → f'
f0(h0(x)) → h0(g0(x))
rand0(x) → rand0(s0(x))
f(g(x)) → g(F(f(x)))
f'(s(x), y, y) → f'(y, x, s(x))
f(h(x)) → h(g(x))
f(g(x)) → g(f(F(x)))
rand(x) → rand(s(x))
rand(x) → x
Furthermore, We use an argument filter [LPAR04].
Filtering:s_1 = 0
f_1 =
h_1 = 0
F_1 =
rand_1 =
g_1 =
f'_3 = 0, 1, 2
Found this filtering by looking at the following order that orders at least one DP strictly:Combined order from the following AFS and order.
F(x1) = F(x1)
g(x1) = g(x1)
f(x1) = x1
f'(x1, x2, x3) = f'
s(x1) = s
h(x1) = h
Recursive path order with status [RPO].
Quasi-Precedence:
f' > s
h > [F1, g1]
F1: [1]
g1: multiset
f': multiset
s: multiset
h: multiset
F0(g0(x)) → F0(x)
F0(g0(x)) → F0(f0(x))
f0(g0(x)) → g0(f0(f0(x)))
f' → f'
f0(h) → h
rand0(x) → rand0(s)
rand0(x) → x
F0(g0(x)) → F0(x)
F0(g0(x)) → F0(f0(x))
f0(g0(x)) → g0(f0(f0(x)))
f0(h) → h
rand0(x) → x
f01 > F01 > h > f' > s > rand01 > g01
f'=1
h=1
s=1
f0_1=0
g0_1=1
rand0_1=1
F0_1=1
f' → f'
rand0(x) → rand0(s)