R
↳Dependency Pair Analysis
F(f(a, a), x) -> F(a, f(b, f(a, x)))
F(f(a, a), x) -> F(b, f(a, x))
F(f(a, a), x) -> F(a, x)
F(x, f(y, z)) -> F(f(x, y), z)
F(x, f(y, z)) -> F(x, y)
R
↳DPs
→DP Problem 1
↳Narrowing Transformation
F(f(a, a), x) -> F(a, x)
F(x, f(y, z)) -> F(x, y)
F(f(a, a), x) -> F(b, f(a, x))
F(x, f(y, z)) -> F(f(x, y), z)
F(f(a, a), x) -> F(a, f(b, f(a, x)))
f(f(a, a), x) -> f(a, f(b, f(a, x)))
f(x, f(y, z)) -> f(f(x, y), z)
innermost
two new Dependency Pairs are created:
F(f(a, a), x) -> F(a, f(b, f(a, x)))
F(f(a, a), x'') -> F(a, f(f(b, a), x''))
F(f(a, a), f(y', z')) -> F(a, f(b, f(f(a, y'), z')))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Forward Instantiation Transformation
F(f(a, a), f(y', z')) -> F(a, f(b, f(f(a, y'), z')))
F(f(a, a), x'') -> F(a, f(f(b, a), x''))
F(x, f(y, z)) -> F(x, y)
F(f(a, a), x) -> F(b, f(a, x))
F(x, f(y, z)) -> F(f(x, y), z)
F(f(a, a), x) -> F(a, x)
f(f(a, a), x) -> f(a, f(b, f(a, x)))
f(x, f(y, z)) -> f(f(x, y), z)
innermost
one new Dependency Pair is created:
F(f(a, a), x) -> F(a, x)
F(f(a, a), f(y'', z'')) -> F(a, f(y'', z''))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳FwdInst
...
→DP Problem 3
↳Forward Instantiation Transformation
F(f(a, a), f(y'', z'')) -> F(a, f(y'', z''))
F(f(a, a), x'') -> F(a, f(f(b, a), x''))
F(x, f(y, z)) -> F(x, y)
F(f(a, a), x) -> F(b, f(a, x))
F(x, f(y, z)) -> F(f(x, y), z)
F(f(a, a), f(y', z')) -> F(a, f(b, f(f(a, y'), z')))
f(f(a, a), x) -> f(a, f(b, f(a, x)))
f(x, f(y, z)) -> f(f(x, y), z)
innermost
four new Dependency Pairs are created:
F(x, f(y, z)) -> F(x, y)
F(x'', f(f(y'', z''), z)) -> F(x'', f(y'', z''))
F(f(a, a), f(y', z)) -> F(f(a, a), y')
F(f(a, a), f(f(y''', z'''), z)) -> F(f(a, a), f(y''', z'''))
F(f(a, a), f(f(y'''', z''''), z)) -> F(f(a, a), f(y'''', z''''))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳FwdInst
...
→DP Problem 4
↳Remaining Obligation(s)
F(f(a, a), f(f(y'''', z''''), z)) -> F(f(a, a), f(y'''', z''''))
F(f(a, a), f(f(y''', z'''), z)) -> F(f(a, a), f(y''', z'''))
F(f(a, a), f(y', z)) -> F(f(a, a), y')
F(f(a, a), f(y', z')) -> F(a, f(b, f(f(a, y'), z')))
F(f(a, a), x'') -> F(a, f(f(b, a), x''))
F(x'', f(f(y'', z''), z)) -> F(x'', f(y'', z''))
F(f(a, a), x) -> F(b, f(a, x))
F(x, f(y, z)) -> F(f(x, y), z)
F(f(a, a), f(y'', z'')) -> F(a, f(y'', z''))
f(f(a, a), x) -> f(a, f(b, f(a, x)))
f(x, f(y, z)) -> f(f(x, y), z)
innermost