R
↳Dependency Pair Analysis
BSORT(.(x, y)) -> LAST(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
BSORT(.(x, y)) -> BUBBLE(.(x, y))
BSORT(.(x, y)) -> BSORT(butlast(bubble(.(x, y))))
BSORT(.(x, y)) -> BUTLAST(bubble(.(x, y)))
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(x, z))
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(y, z))
LAST(.(x, .(y, z))) -> LAST(.(y, z))
BUTLAST(.(x, .(y, z))) -> BUTLAST(.(y, z))
R
↳DPs
→DP Problem 1
↳Forward Instantiation Transformation
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
LAST(.(x, .(y, z))) -> LAST(.(y, z))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
LAST(.(x, .(y, z))) -> LAST(.(y, z))
LAST(.(x, .(y0, .(y'', z'')))) -> LAST(.(y0, .(y'', z'')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 5
↳Forward Instantiation Transformation
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
LAST(.(x, .(y0, .(y'', z'')))) -> LAST(.(y0, .(y'', z'')))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
LAST(.(x, .(y0, .(y'', z'')))) -> LAST(.(y0, .(y'', z'')))
LAST(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> LAST(.(y0'', .(y''0, .(y'''', z''''))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 5
↳FwdInst
...
→DP Problem 6
↳Argument Filtering and Ordering
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
LAST(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> LAST(.(y0'', .(y''0, .(y'''', z''''))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
LAST(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> LAST(.(y0'', .(y''0, .(y'''', z''''))))
POL(LAST(x1)) = 1 + x1 POL(.(x1, x2)) = 1 + x1 + x2
LAST(x1) -> LAST(x1)
.(x1, x2) -> .(x1, x2)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 5
↳FwdInst
...
→DP Problem 7
↳Dependency Graph
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳Forward Instantiation Transformation
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(y, z))
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(x, z))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(x, z))
BUBBLE(.(x'', .(y, .(y'', z'')))) -> BUBBLE(.(x'', .(y'', z'')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 8
↳Forward Instantiation Transformation
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
BUBBLE(.(x'', .(y, .(y'', z'')))) -> BUBBLE(.(x'', .(y'', z'')))
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(y, z))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
two new Dependency Pairs are created:
BUBBLE(.(x, .(y, z))) -> BUBBLE(.(y, z))
BUBBLE(.(x, .(y0, .(y'', z'')))) -> BUBBLE(.(y0, .(y'', z'')))
BUBBLE(.(x, .(y0, .(y'', .(y'''', z''''))))) -> BUBBLE(.(y0, .(y'', .(y'''', z''''))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 8
↳FwdInst
...
→DP Problem 9
↳Forward Instantiation Transformation
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
BUBBLE(.(x, .(y0, .(y'', .(y'''', z''''))))) -> BUBBLE(.(y0, .(y'', .(y'''', z''''))))
BUBBLE(.(x, .(y0, .(y'', z'')))) -> BUBBLE(.(y0, .(y'', z'')))
BUBBLE(.(x'', .(y, .(y'', z'')))) -> BUBBLE(.(x'', .(y'', z'')))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
three new Dependency Pairs are created:
BUBBLE(.(x'', .(y, .(y'', z'')))) -> BUBBLE(.(x'', .(y'', z'')))
BUBBLE(.(x'''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x'''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(x''', .(y''0, .(y'''', .(y'''''', z'''''')))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 8
↳FwdInst
...
→DP Problem 10
↳Forward Instantiation Transformation
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
BUBBLE(.(x''', .(y, .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(x''', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x'''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x'''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x, .(y0, .(y'', z'')))) -> BUBBLE(.(y0, .(y'', z'')))
BUBBLE(.(x, .(y0, .(y'', .(y'''', z''''))))) -> BUBBLE(.(y0, .(y'', .(y'''', z''''))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
four new Dependency Pairs are created:
BUBBLE(.(x, .(y0, .(y'', z'')))) -> BUBBLE(.(y0, .(y'', z'')))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', z''''))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 8
↳FwdInst
...
→DP Problem 11
↳Forward Instantiation Transformation
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', z''''))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x'''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x'''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x, .(y0, .(y'', .(y'''', z''''))))) -> BUBBLE(.(y0, .(y'', .(y'''', z''''))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(x''', .(y''0, .(y'''', .(y'''''', z'''''')))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
five new Dependency Pairs are created:
BUBBLE(.(x, .(y0, .(y'', .(y'''', z''''))))) -> BUBBLE(.(y0, .(y'', .(y'''', z''''))))
BUBBLE(.(x, .(y0'', .(y''0, .(y''''0, .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y''''0, .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0', .(y''', .(y''''0, .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''''0, .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0', .(y''', .(y''''0, .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''''0, .(y'''''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', .(y'''''''''', z'''''''''')))))))) -> BUBBLE(.(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', .(y'''''''''', z'''''''''')))))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 8
↳FwdInst
...
→DP Problem 12
↳Argument Filtering and Ordering
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
BUBBLE(.(x, .(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', .(y'''''''''', z'''''''''')))))))) -> BUBBLE(.(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', .(y'''''''''', z'''''''''')))))))
BUBBLE(.(x, .(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y''''0, .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''''0, .(y'''''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y''''0, .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''''0, .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y''''0, .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y''''0, .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', z''''))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(x''', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x'''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x'''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
BUBBLE(.(x, .(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', .(y'''''''''', z'''''''''')))))))) -> BUBBLE(.(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', .(y'''''''''', z'''''''''')))))))
BUBBLE(.(x, .(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y'''''', .(y''0'''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y''''0, .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''''0, .(y'''''', .(y'''''''', z''''''''))))))
BUBBLE(.(x, .(y0', .(y''', .(y''''0, .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''''0, .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y''''0, .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y''''0, .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUBBLE(.(y0'', .(y''0, .(y'''', z''''))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', .(y'''''', z'''''')))))) -> BUBBLE(.(x''', .(y''0, .(y'''', .(y'''''', z'''''')))))
BUBBLE(.(x''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x'''', .(y, .(y''0, .(y'''', z''''))))) -> BUBBLE(.(x'''', .(y''0, .(y'''', z''''))))
BUBBLE(.(x, .(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))) -> BUBBLE(.(y0', .(y''', .(y''0'', .(y'''''', .(y'''''''', z''''''''))))))
POL(BUBBLE(x1)) = 1 + x1 POL(.(x1, x2)) = 1 + x1 + x2
BUBBLE(x1) -> BUBBLE(x1)
.(x1, x2) -> .(x1, x2)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 8
↳FwdInst
...
→DP Problem 13
↳Dependency Graph
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳Forward Instantiation Transformation
→DP Problem 4
↳Nar
BUTLAST(.(x, .(y, z))) -> BUTLAST(.(y, z))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BUTLAST(.(x, .(y, z))) -> BUTLAST(.(y, z))
BUTLAST(.(x, .(y0, .(y'', z'')))) -> BUTLAST(.(y0, .(y'', z'')))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 14
↳Forward Instantiation Transformation
→DP Problem 4
↳Nar
BUTLAST(.(x, .(y0, .(y'', z'')))) -> BUTLAST(.(y0, .(y'', z'')))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BUTLAST(.(x, .(y0, .(y'', z'')))) -> BUTLAST(.(y0, .(y'', z'')))
BUTLAST(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUTLAST(.(y0'', .(y''0, .(y'''', z''''))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 14
↳FwdInst
...
→DP Problem 15
↳Argument Filtering and Ordering
→DP Problem 4
↳Nar
BUTLAST(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUTLAST(.(y0'', .(y''0, .(y'''', z''''))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
BUTLAST(.(x, .(y0'', .(y''0, .(y'''', z''''))))) -> BUTLAST(.(y0'', .(y''0, .(y'''', z''''))))
POL(BUTLAST(x1)) = 1 + x1 POL(.(x1, x2)) = 1 + x1 + x2
BUTLAST(x1) -> BUTLAST(x1)
.(x1, x2) -> .(x1, x2)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 14
↳FwdInst
...
→DP Problem 16
↳Dependency Graph
→DP Problem 4
↳Nar
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Narrowing Transformation
BSORT(.(x, y)) -> BSORT(butlast(bubble(.(x, y))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
two new Dependency Pairs are created:
BSORT(.(x, y)) -> BSORT(butlast(bubble(.(x, y))))
BSORT(.(x'', nil)) -> BSORT(butlast(.(x'', nil)))
BSORT(.(x'', .(y'', z'))) -> BSORT(butlast(if(<=(x'', y''), .(y'', bubble(.(x'', z'))), .(x'', bubble(.(y'', z'))))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rewriting Transformation
BSORT(.(x'', .(y'', z'))) -> BSORT(butlast(if(<=(x'', y''), .(y'', bubble(.(x'', z'))), .(x'', bubble(.(y'', z'))))))
BSORT(.(x'', nil)) -> BSORT(butlast(.(x'', nil)))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BSORT(.(x'', nil)) -> BSORT(butlast(.(x'', nil)))
BSORT(.(x'', nil)) -> BSORT(nil)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 18
↳Narrowing Transformation
BSORT(.(x'', .(y'', z'))) -> BSORT(butlast(if(<=(x'', y''), .(y'', bubble(.(x'', z'))), .(x'', bubble(.(y'', z'))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
four new Dependency Pairs are created:
BSORT(.(x'', .(y'', z'))) -> BSORT(butlast(if(<=(x'', y''), .(y'', bubble(.(x'', z'))), .(x'', bubble(.(y'', z'))))))
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', bubble(.(y'', nil))))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', bubble(.(y'', .(y', z'')))))))
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', nil))), .(x'', .(y''', nil)))))
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', .(y', z'')))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 19
↳Rewriting Transformation
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', .(y', z'')))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', nil))), .(x'', .(y''', nil)))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', bubble(.(y'', .(y', z'')))))))
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', bubble(.(y'', nil))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', bubble(.(y'', nil))))))
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', .(y'', nil)))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 20
↳Rewriting Transformation
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', .(y'', nil)))))
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', nil))), .(x'', .(y''', nil)))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', bubble(.(y'', .(y', z'')))))))
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', .(y', z'')))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', bubble(.(y'', .(y', z'')))))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 21
↳Rewriting Transformation
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', .(y', z'')))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', nil))), .(x'', .(y''', nil)))))
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', .(y'', nil)))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', nil))), .(x'', .(y''', nil)))))
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', .(x'', nil)), .(x'', .(y''', nil)))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 22
↳Rewriting Transformation
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', .(x'', nil)), .(x'', .(y''', nil)))))
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', .(y'', nil)))))
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', .(y', z'')))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
one new Dependency Pair is created:
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', bubble(.(x'', .(y', z'')))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', if(<=(x'', y'), .(y', bubble(.(x'', z''))), .(x'', bubble(.(y', z''))))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 23
↳Narrowing Transformation
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', if(<=(x'', y'), .(y', bubble(.(x'', z''))), .(x'', bubble(.(y', z''))))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', .(y'', nil)))))
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', .(x'', nil)), .(x'', .(y''', nil)))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
no new Dependency Pairs are created.
BSORT(.(x''', .(y'', nil))) -> BSORT(butlast(if(<=(x''', y''), .(y'', .(x''', nil)), .(x''', .(y'', nil)))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 24
↳Narrowing Transformation
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', .(x'', nil)), .(x'', .(y''', nil)))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', if(<=(x'', y'), .(y', bubble(.(x'', z''))), .(x'', bubble(.(y', z''))))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
no new Dependency Pairs are created.
BSORT(.(x'', .(y''', nil))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', .(x'', nil)), .(x'', .(y''', nil)))))
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 25
↳Argument Filtering and Ordering
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', if(<=(x'', y'), .(y', bubble(.(x'', z''))), .(x'', bubble(.(y', z''))))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost
BSORT(.(x'', .(y''', .(y', z'')))) -> BSORT(butlast(if(<=(x'', y'''), .(y''', if(<=(x'', y'), .(y', bubble(.(x'', z''))), .(x'', bubble(.(y', z''))))), .(x'', if(<=(y''', y'), .(y', bubble(.(y''', z''))), .(y''', bubble(.(y', z''))))))))
BSORT(.(x''', .(y'', .(y', z'')))) -> BSORT(butlast(if(<=(x''', y''), .(y'', if(<=(x''', y'), .(y', bubble(.(x''', z''))), .(x''', bubble(.(y', z''))))), .(x''', if(<=(y'', y'), .(y', bubble(.(y'', z''))), .(y'', bubble(.(y', z''))))))))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
POL(butlast(x1)) = x1 POL(nil) = 0 POL(.(x1, x2)) = 1 + x1 + x2 POL(BSORT(x1)) = 1 + x1 POL(<=(x1, x2)) = x1 + x2
BSORT(x1) -> BSORT(x1)
.(x1, x2) -> .(x1, x2)
butlast(x1) -> butlast(x1)
if(x1, x2, x3) -> x1
<=(x1, x2) -> <=(x1, x2)
R
↳DPs
→DP Problem 1
↳FwdInst
→DP Problem 2
↳FwdInst
→DP Problem 3
↳FwdInst
→DP Problem 4
↳Nar
→DP Problem 17
↳Rw
...
→DP Problem 26
↳Dependency Graph
bsort(nil) -> nil
bsort(.(x, y)) -> last(.(bubble(.(x, y)), bsort(butlast(bubble(.(x, y))))))
bubble(nil) -> nil
bubble(.(x, nil)) -> .(x, nil)
bubble(.(x, .(y, z))) -> if(<=(x, y), .(y, bubble(.(x, z))), .(x, bubble(.(y, z))))
last(nil) -> 0
last(.(x, nil)) -> x
last(.(x, .(y, z))) -> last(.(y, z))
butlast(nil) -> nil
butlast(.(x, nil)) -> nil
butlast(.(x, .(y, z))) -> .(x, butlast(.(y, z)))
innermost