R
↳Dependency Pair Analysis
FOLDB(t, s(n)) -> F(foldB(t, n), B)
FOLDB(t, s(n)) -> FOLDB(t, n)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
FOLDC(t, s(n)) -> FOLDC(t, n)
F(t, x) -> F'(t, g(x))
F(t, x) -> G(x)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F'(triple(a, b, c), A) -> F''(foldB(triple(s(a), 0, c), b))
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
FOLD(t, x, s(n)) -> F(fold(t, x, n), x)
FOLD(t, x, s(n)) -> FOLD(t, x, n)
R
↳DPs
→DP Problem 1
↳Narrowing Transformation
→DP Problem 2
↳Remaining
FOLDB(t, s(n)) -> FOLDB(t, n)
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
FOLDC(t, s(n)) -> FOLDC(t, n)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a, b, c), A) -> F''(foldB(triple(s(a), 0, c), b))
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, x) -> F'(t, g(x))
FOLDB(t, s(n)) -> F(foldB(t, n), B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
six new Dependency Pairs are created:
F(t, x) -> F'(t, g(x))
F(t, A) -> F'(t, A)
F(t, B) -> F'(t, A)
F(t, B) -> F'(t, B)
F(t, C) -> F'(t, A)
F(t, C) -> F'(t, B)
F(t, C) -> F'(t, C)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Narrowing Transformation
→DP Problem 2
↳Remaining
F(t, B) -> F'(t, B)
FOLDC(t, s(n)) -> FOLDC(t, n)
F(t, A) -> F'(t, A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, C) -> F'(t, B)
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a, b, c), A) -> F''(foldB(triple(s(a), 0, c), b))
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
FOLDB(t, s(n)) -> FOLDB(t, n)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
two new Dependency Pairs are created:
F'(triple(a, b, c), A) -> F''(foldB(triple(s(a), 0, c), b))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 4
↳Instantiation Transformation
→DP Problem 2
↳Remaining
FOLDB(t, s(n)) -> FOLDB(t, n)
FOLDC(t, s(n)) -> FOLDC(t, n)
F(t, C) -> F'(t, B)
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F(t, A) -> F'(t, A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, B) -> F'(t, B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
one new Dependency Pair is created:
F(t, A) -> F'(t, A)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 5
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(t, B) -> F'(t, B)
FOLDC(t, s(n)) -> FOLDC(t, n)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, C) -> F'(t, B)
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
FOLDB(t, s(n)) -> FOLDB(t, n)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
one new Dependency Pair is created:
FOLDB(t, s(n)) -> FOLDB(t, n)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 6
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
FOLDC(t, s(n)) -> FOLDC(t, n)
F(t, C) -> F'(t, B)
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, B) -> F'(t, B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
one new Dependency Pair is created:
FOLDC(t, s(n)) -> FOLDC(t, n)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 7
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(t, B) -> F'(t, B)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, C) -> F'(t, B)
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
two new Dependency Pairs are created:
F'(triple(a, b, c), A) -> FOLDB(triple(s(a), 0, c), b)
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 8
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F(t, C) -> F'(t, B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, B) -> F'(t, B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
two new Dependency Pairs are created:
F''(triple(a, b, c)) -> FOLDC(triple(a, b, 0), c)
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 9
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(t, C) -> F'(t, B)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, B) -> F'(t, B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(t, B) -> F'(t, A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
four new Dependency Pairs are created:
F(t, B) -> F'(t, A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 10
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
F(t, B) -> F'(t, B)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, C) -> F'(t, B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
one new Dependency Pair is created:
F(t, B) -> F'(t, B)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 11
↳Narrowing Transformation
→DP Problem 2
↳Remaining
F(t, C) -> F'(t, B)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t, s(n)) -> F(foldB(t, n), B)
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
two new Dependency Pairs are created:
FOLDB(t, s(n)) -> F(foldB(t, n), B)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 12
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(t, C) -> F'(t, A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(t, C) -> F'(t, B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
four new Dependency Pairs are created:
F(t, C) -> F'(t, A)
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 13
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
F(t, C) -> F'(t, B)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
one new Dependency Pair is created:
F(t, C) -> F'(t, B)
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 14
↳Narrowing Transformation
→DP Problem 2
↳Remaining
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t, s(n)) -> F(foldC(t, n), C)
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
two new Dependency Pairs are created:
FOLDC(t, s(n)) -> F(foldC(t, n), C)
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 15
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
two new Dependency Pairs are created:
F'(triple(a', 0, c'), A) -> F''(triple(s(a'), 0, c'))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 16
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
five new Dependency Pairs are created:
F(triple(a'', b'', c''), A) -> F'(triple(a'', b'', c''), A)
F(triple(a'''', s(n'''), c''''), A) -> F'(triple(a'''', s(n'''), c''''), A)
F(triple(a'''', s(n''''), c''''), A) -> F'(triple(a'''', s(n''''), c''''), A)
F(triple(a'''', s(s(n'''''')), c''''), A) -> F'(triple(a'''', s(s(n'''''')), c''''), A)
F(triple(a''', 0, s(n'''''')), A) -> F'(triple(a''', 0, s(n'''''')), A)
F(triple(a''', 0, s(s(n''''''''))), A) -> F'(triple(a''', 0, s(s(n''''''''))), A)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 17
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a''', 0, s(s(n''''''''))), A) -> F'(triple(a''', 0, s(s(n''''''''))), A)
F(triple(a''', 0, s(n'''''')), A) -> F'(triple(a''', 0, s(n'''''')), A)
F(triple(a'''', s(s(n'''''')), c''''), A) -> F'(triple(a'''', s(s(n'''''')), c''''), A)
F(triple(a'''', s(n''''), c''''), A) -> F'(triple(a'''', s(n''''), c''''), A)
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a'''', s(n'''), c''''), A) -> F'(triple(a'''', s(n'''), c''''), A)
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
five new Dependency Pairs are created:
F'(triple(a, b, c), B) -> F(triple(a, b, c), A)
F'(triple(a', s(n'''''), c'), B) -> F(triple(a', s(n'''''), c'), A)
F'(triple(a', s(n''''''), c'), B) -> F(triple(a', s(n''''''), c'), A)
F'(triple(a', s(s(n'''''''')), c'), B) -> F(triple(a', s(s(n'''''''')), c'), A)
F'(triple(a', 0, s(n'''''''')), B) -> F(triple(a', 0, s(n'''''''')), A)
F'(triple(a', 0, s(s(n''''''''''))), B) -> F(triple(a', 0, s(s(n''''''''''))), A)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 18
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
F'(triple(a', 0, s(s(n''''''''''))), B) -> F(triple(a', 0, s(s(n''''''''''))), A)
F(triple(a''', 0, s(n'''''')), A) -> F'(triple(a''', 0, s(n'''''')), A)
F'(triple(a', 0, s(n'''''''')), B) -> F(triple(a', 0, s(n'''''''')), A)
F'(triple(a', s(s(n'''''''')), c'), B) -> F(triple(a', s(s(n'''''''')), c'), A)
F'(triple(a', s(n''''''), c'), B) -> F(triple(a', s(n''''''), c'), A)
F(triple(a'''', s(s(n'''''')), c''''), A) -> F'(triple(a'''', s(s(n'''''')), c''''), A)
F(triple(a'''', s(n''''), c''''), A) -> F'(triple(a'''', s(n''''), c''''), A)
F(triple(a'''', s(n'''), c''''), A) -> F'(triple(a'''', s(n'''), c''''), A)
F'(triple(a', s(n'''''), c'), B) -> F(triple(a', s(n'''''), c'), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F(triple(a''', 0, s(s(n''''''''))), A) -> F'(triple(a''', 0, s(s(n''''''''))), A)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
five new Dependency Pairs are created:
FOLDB(t'', s(0)) -> F(t'', B)
FOLDB(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), B)
FOLDB(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), B)
FOLDB(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), B)
FOLDB(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), B)
FOLDB(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), B)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 3
↳Nar
...
→DP Problem 19
↳Forward Instantiation Transformation
→DP Problem 2
↳Remaining
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), B)
FOLDB(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), B)
FOLDB(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), B)
FOLDB(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), B)
FOLDB(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), B)
F'(triple(a', 0, s(s(n''''''''''))), B) -> F(triple(a', 0, s(s(n''''''''''))), A)
F(triple(a''', 0, s(s(n''''''''))), A) -> F'(triple(a''', 0, s(s(n''''''''))), A)
F(triple(a''', 0, s(n'''''')), A) -> F'(triple(a''', 0, s(n'''''')), A)
F'(triple(a', 0, s(n'''''''')), B) -> F(triple(a', 0, s(n'''''''')), A)
F'(triple(a', s(s(n'''''''')), c'), B) -> F(triple(a', s(s(n'''''''')), c'), A)
F(triple(a'''', s(s(n'''''')), c''''), A) -> F'(triple(a'''', s(s(n'''''')), c''''), A)
F(triple(a'''', s(n''''), c''''), A) -> F'(triple(a'''', s(n''''), c''''), A)
F'(triple(a', s(n''''''), c'), B) -> F(triple(a', s(n''''''), c'), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a'''', s(n'''), c''''), A) -> F'(triple(a'''', s(n'''), c''''), A)
F'(triple(a', s(n'''''), c'), B) -> F(triple(a', s(n'''''), c'), A)
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
five new Dependency Pairs are created:
FOLDC(t'', s(0)) -> F(t'', C)
FOLDC(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), C)
FOLDC(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), C)
FOLDC(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), C)
FOLDC(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), C)
FOLDC(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), C)
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Remaining Obligation(s)
FOLDC(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), C)
FOLDC(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), C)
FOLDC(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), C)
FOLDC(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), C)
FOLDC(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), C)
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), B)
FOLDB(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), B)
FOLDB(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), B)
FOLDB(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), B)
FOLDB(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), B)
F'(triple(a', 0, s(s(n''''''''''))), B) -> F(triple(a', 0, s(s(n''''''''''))), A)
F(triple(a''', 0, s(s(n''''''''))), A) -> F'(triple(a''', 0, s(s(n''''''''))), A)
F(triple(a''', 0, s(n'''''')), A) -> F'(triple(a''', 0, s(n'''''')), A)
F'(triple(a', 0, s(n'''''''')), B) -> F(triple(a', 0, s(n'''''''')), A)
F'(triple(a', s(s(n'''''''')), c'), B) -> F(triple(a', s(s(n'''''''')), c'), A)
F'(triple(a', s(n''''''), c'), B) -> F(triple(a', s(n''''''), c'), A)
F(triple(a'''', s(s(n'''''')), c''''), A) -> F'(triple(a'''', s(s(n'''''')), c''''), A)
F(triple(a'''', s(n''''), c''''), A) -> F'(triple(a'''', s(n''''), c''''), A)
F(triple(a'''', s(n'''), c''''), A) -> F'(triple(a'''', s(n'''), c''''), A)
F'(triple(a', s(n'''''), c'), B) -> F(triple(a', s(n'''''), c'), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
FOLD(t, x, s(n)) -> FOLD(t, x, n)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
R
↳DPs
→DP Problem 1
↳Nar
→DP Problem 2
↳Remaining Obligation(s)
FOLDC(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), C)
FOLDC(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), C)
FOLDC(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), C)
FOLDC(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), C)
FOLDC(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), C)
F(triple(a'', b'', c''), C) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(n''''), c'''), C) -> F'(triple(a''', s(n''''), c'''), A)
FOLDB(triple(a'''', b'''', c''''), s(0)) -> F(triple(a'''', b'''', c''''), B)
FOLDB(triple(a''''', s(s(n'''''''')), c'''''), s(0)) -> F(triple(a''''', s(s(n'''''''')), c'''''), B)
FOLDB(triple(a''''', s(n''''''), c'''''), s(0)) -> F(triple(a''''', s(n''''''), c'''''), B)
FOLDB(triple(a''''', s(n'''''), c'''''), s(0)) -> F(triple(a''''', s(n'''''), c'''''), B)
FOLDB(triple(a''''', 0, c'''''), s(0)) -> F(triple(a''''', 0, c'''''), B)
F'(triple(a', 0, s(s(n''''''''''))), B) -> F(triple(a', 0, s(s(n''''''''''))), A)
F(triple(a''', 0, s(s(n''''''''))), A) -> F'(triple(a''', 0, s(s(n''''''''))), A)
F(triple(a''', 0, s(n'''''')), A) -> F'(triple(a''', 0, s(n'''''')), A)
F'(triple(a', 0, s(n'''''''')), B) -> F(triple(a', 0, s(n'''''''')), A)
F'(triple(a', s(s(n'''''''')), c'), B) -> F(triple(a', s(s(n'''''''')), c'), A)
F'(triple(a', s(n''''''), c'), B) -> F(triple(a', s(n''''''), c'), A)
F(triple(a'''', s(s(n'''''')), c''''), A) -> F'(triple(a'''', s(s(n'''''')), c''''), A)
F(triple(a'''', s(n''''), c''''), A) -> F'(triple(a'''', s(n''''), c''''), A)
F(triple(a'''', s(n'''), c''''), A) -> F'(triple(a'''', s(n'''), c''''), A)
F'(triple(a', s(n'''''), c'), B) -> F(triple(a', s(n'''''), c'), A)
F(triple(a'', b'', c''), B) -> F'(triple(a'', b'', c''), B)
F(triple(a''', s(s(n'''''')), c'''), B) -> F'(triple(a''', s(s(n'''''')), c'''), A)
F(triple(a''', s(n''''), c'''), B) -> F'(triple(a''', s(n''''), c'''), A)
F'(triple(a', s(s(n'''')), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(s(n'''')))
F(triple(a''', s(n'''), c'''), B) -> F'(triple(a''', s(n'''), c'''), A)
F(triple(a''', 0, c'''), B) -> F'(triple(a''', 0, c'''), A)
FOLDB(t'', s(s(n''))) -> F(f(foldB(t'', n''), B), B)
FOLDB(t'', s(s(n''))) -> FOLDB(t'', s(n''))
F'(triple(a', s(n''), c'), A) -> FOLDB(triple(s(a'), 0, c'), s(n''))
F(triple(a''', s(n'''), c'''), C) -> F'(triple(a''', s(n'''), c'''), A)
F'(triple(a''', 0, s(s(n''''''))), A) -> F''(triple(s(a'''), 0, s(s(n''''''))))
F''(triple(a', b', s(s(n'''')))) -> FOLDC(triple(a', b', 0), s(s(n'''')))
F'(triple(a''', 0, s(n'''')), A) -> F''(triple(s(a'''), 0, s(n'''')))
F(triple(a''', 0, c'''), C) -> F'(triple(a''', 0, c'''), A)
FOLDC(t'', s(s(n''))) -> F(f(foldC(t'', n''), C), C)
FOLDC(t'', s(s(n''))) -> FOLDC(t'', s(n''))
F''(triple(a', b', s(n''))) -> FOLDC(triple(a', b', 0), s(n''))
F'(triple(a', s(n'), c'), A) -> F''(f(foldB(triple(s(a'), 0, c'), n'), B))
F(triple(a''', s(s(n'''''')), c'''), C) -> F'(triple(a''', s(s(n'''''')), c'''), A)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost
FOLD(t, x, s(n)) -> FOLD(t, x, n)
g(A) -> A
g(B) -> A
g(B) -> B
g(C) -> A
g(C) -> B
g(C) -> C
foldB(t, 0) -> t
foldB(t, s(n)) -> f(foldB(t, n), B)
foldC(t, 0) -> t
foldC(t, s(n)) -> f(foldC(t, n), C)
f(t, x) -> f'(t, g(x))
f'(triple(a, b, c), C) -> triple(a, b, s(c))
f'(triple(a, b, c), B) -> f(triple(a, b, c), A)
f'(triple(a, b, c), A) -> f''(foldB(triple(s(a), 0, c), b))
f''(triple(a, b, c)) -> foldC(triple(a, b, 0), c)
fold(t, x, 0) -> t
fold(t, x, s(n)) -> f(fold(t, x, n), x)
innermost