R
↳Dependency Pair Analysis
F(.(nil, y)) -> F(y)
F(.(.(x, y), z)) -> F(.(x, .(y, z)))
G(.(x, nil)) -> G(x)
G(.(x, .(y, z))) -> G(.(.(x, y), z))
R
↳DPs
→DP Problem 1
↳Polynomial Ordering
→DP Problem 2
↳Polo
F(.(.(x, y), z)) -> F(.(x, .(y, z)))
F(.(nil, y)) -> F(y)
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
F(.(nil, y)) -> F(y)
POL(nil) = 1 POL(.(x1, x2)) = x1 + x2 POL(F(x1)) = x1
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Instantiation Transformation
→DP Problem 2
↳Polo
F(.(.(x, y), z)) -> F(.(x, .(y, z)))
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
one new Dependency Pair is created:
F(.(.(x, y), z)) -> F(.(x, .(y, z)))
F(.(.(x'', y0), .(y'', z''))) -> F(.(x'', .(y0, .(y'', z''))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Inst
...
→DP Problem 4
↳Instantiation Transformation
→DP Problem 2
↳Polo
F(.(.(x'', y0), .(y'', z''))) -> F(.(x'', .(y0, .(y'', z''))))
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
one new Dependency Pair is created:
F(.(.(x'', y0), .(y'', z''))) -> F(.(x'', .(y0, .(y'', z''))))
F(.(.(x'''', y0''), .(y''0, .(y'''', z'''')))) -> F(.(x'''', .(y0'', .(y''0, .(y'''', z'''')))))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Inst
...
→DP Problem 5
↳Polynomial Ordering
→DP Problem 2
↳Polo
F(.(.(x'''', y0''), .(y''0, .(y'''', z'''')))) -> F(.(x'''', .(y0'', .(y''0, .(y'''', z'''')))))
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
F(.(.(x'''', y0''), .(y''0, .(y'''', z'''')))) -> F(.(x'''', .(y0'', .(y''0, .(y'''', z'''')))))
POL(.(x1, x2)) = 1 + x1 POL(F(x1)) = 1 + x1
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 3
↳Inst
...
→DP Problem 6
↳Dependency Graph
→DP Problem 2
↳Polo
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polynomial Ordering
G(.(x, .(y, z))) -> G(.(.(x, y), z))
G(.(x, nil)) -> G(x)
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
G(.(x, nil)) -> G(x)
POL(G(x1)) = x1 POL(nil) = 1 POL(.(x1, x2)) = x1 + x2
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polo
→DP Problem 7
↳Instantiation Transformation
G(.(x, .(y, z))) -> G(.(.(x, y), z))
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
one new Dependency Pair is created:
G(.(x, .(y, z))) -> G(.(.(x, y), z))
G(.(.(x'', y''), .(y0, z''))) -> G(.(.(.(x'', y''), y0), z''))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polo
→DP Problem 7
↳Inst
...
→DP Problem 8
↳Instantiation Transformation
G(.(.(x'', y''), .(y0, z''))) -> G(.(.(.(x'', y''), y0), z''))
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
one new Dependency Pair is created:
G(.(.(x'', y''), .(y0, z''))) -> G(.(.(.(x'', y''), y0), z''))
G(.(.(.(x'''', y''''), y''0), .(y0'', z''''))) -> G(.(.(.(.(x'''', y''''), y''0), y0''), z''''))
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polo
→DP Problem 7
↳Inst
...
→DP Problem 9
↳Polynomial Ordering
G(.(.(.(x'''', y''''), y''0), .(y0'', z''''))) -> G(.(.(.(.(x'''', y''''), y''0), y0''), z''''))
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))
G(.(.(.(x'''', y''''), y''0), .(y0'', z''''))) -> G(.(.(.(.(x'''', y''''), y''0), y0''), z''''))
POL(G(x1)) = x1 POL(.(x1, x2)) = 1 + x2
R
↳DPs
→DP Problem 1
↳Polo
→DP Problem 2
↳Polo
→DP Problem 7
↳Inst
...
→DP Problem 10
↳Dependency Graph
f(nil) -> nil
f(.(nil, y)) -> .(nil, f(y))
f(.(.(x, y), z)) -> f(.(x, .(y, z)))
g(nil) -> nil
g(.(x, nil)) -> .(g(x), nil)
g(.(x, .(y, z))) -> g(.(.(x, y), z))