0 RelTRS
↳1 RelTRStoRelADPProof (⇔, 0 ms)
↳2 RelADPP
↳3 RelADPDepGraphProof (⇔, 0 ms)
↳4 RelADPP
↳5 RelADPCleverAfsProof (⇒, 48 ms)
↳6 QDP
↳7 MRRProof (⇔, 0 ms)
↳8 QDP
↳9 PisEmptyProof (⇔, 0 ms)
↳10 YES
t(f(x), g(y), f(z)) → t(z, g(x), g(y))
t(g(x), g(y), f(z)) → t(f(y), f(z), x)
g(g(x)) → f(f(x))
f(f(x)) → g(g(x))
g(f(x)) → f(g(x))
f(g(x)) → g(f(x))
We upgrade the RelTRS problem to an equivalent Relative ADP Problem [IJCAR24].
t(f(x), g(y), f(z)) → T(z, g(x), g(y))
t(f(x), g(y), f(z)) → t(z, G(x), g(y))
t(f(x), g(y), f(z)) → t(z, g(x), G(y))
t(g(x), g(y), f(z)) → T(f(y), f(z), x)
t(g(x), g(y), f(z)) → t(F(y), f(z), x)
t(g(x), g(y), f(z)) → t(f(y), F(z), x)
g(g(x)) → F(F(x))
f(f(x)) → G(G(x))
g(f(x)) → F(G(x))
f(g(x)) → G(F(x))
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.
t(g(x), g(y), f(z)) → T(f(y), f(z), x)
t(f(x), g(y), f(z)) → T(z, g(x), g(y))
t(f(x), g(y), f(z)) → t(z, g(x), g(y))
g(g(x)) → f(f(x))
f(f(x)) → g(g(x))
g(f(x)) → f(g(x))
t(g(x), g(y), f(z)) → t(f(y), f(z), x)
f(g(x)) → g(f(x))
Furthermore, We use an argument filter [LPAR04].
Filtering:t_3 =
f_1 =
T_3 =
g_1 =
Found this filtering by looking at the following order that orders at least one DP strictly:Recursive path order with status [RPO].
Quasi-Precedence:
[f1, g1] > T3
T3: multiset
f1: multiset
g1: multiset
T0(f0(x), g0(y), f0(z)) → T0(z, g0(x), g0(y))
T0(g0(x), g0(y), f0(z)) → T0(f0(y), f0(z), x)
t0(f0(x), g0(y), f0(z)) → t0(z, g0(x), g0(y))
g0(g0(x)) → f0(f0(x))
f0(f0(x)) → g0(g0(x))
g0(f0(x)) → f0(g0(x))
t0(g0(x), g0(y), f0(z)) → t0(f0(y), f0(z), x)
f0(g0(x)) → g0(f0(x))
T0(f0(x), g0(y), f0(z)) → T0(z, g0(x), g0(y))
T0(g0(x), g0(y), f0(z)) → T0(f0(y), f0(z), x)
t0(f0(x), g0(y), f0(z)) → t0(z, g0(x), g0(y))
t0(g0(x), g0(y), f0(z)) → t0(f0(y), f0(z), x)
POL(T0(x1, x2, x3)) = 2·x1 + 2·x2 + 2·x3
POL(f0(x1)) = 1 + x1
POL(g0(x1)) = 1 + x1
POL(t0(x1, x2, x3)) = 2·x1 + 2·x2 + 2·x3
g0(g0(x)) → f0(f0(x))
f0(f0(x)) → g0(g0(x))
g0(f0(x)) → f0(g0(x))
f0(g0(x)) → g0(f0(x))