WORST_CASE(?,O(n^2)) Solution: --------- "append" :: ["a"(13, 0) x "a"(10, 0)] -(2)-> "a"(10, 0) "append#1" :: ["a"(13, 0) x "a"(10, 0)] -(1)-> "a"(10, 0) "appendAll" :: ["a"(13, 4)] -(4)-> "a"(13, 0) "appendAll#1" :: ["a"(9, 4)] -(1)-> "a"(10, 0) "appendAll2" :: ["a"(12, 6)] -(4)-> "a"(13, 0) "appendAll2#1" :: ["a"(8, 6)] -(3)-> "a"(9, 0) "appendAll3" :: ["a"(13, 6)] -(8)-> "a"(10, 0) "appendAll3#1" :: ["a"(8, 6)] -(7)-> "a"(10, 0) "cons" :: ["a"(13, 0) x "a"(13, 0)] -(13)-> "a"(13, 0) "cons" :: ["a"(13, 4) x "a"(13, 4)] -(9)-> "a"(9, 4) "cons" :: ["a"(14, 6) x "a"(14, 6)] -(8)-> "a"(8, 6) "cons" :: ["a"(10, 0) x "a"(10, 0)] -(10)-> "a"(10, 0) "nil" :: [] -(0)-> "a"(13, 0) "nil" :: [] -(0)-> "a"(9, 4) "nil" :: [] -(0)-> "a"(8, 6) "nil" :: [] -(0)-> "a"(12, 8) "nil" :: [] -(0)-> "a"(12, 0) Cost Free Signatures: --------------------- "append" :: ["a"_cf(0, 0) x "a"_cf(0, 0)] -(0)-> "a"_cf(0, 0) "append" :: ["a"_cf(3, 0) x "a"_cf(3, 0)] -(0)-> "a"_cf(3, 0) "append" :: ["a"_cf(4, 0) x "a"_cf(4, 0)] -(1)-> "a"_cf(4, 0) "append" :: ["a"_cf(4, 0) x "a"_cf(4, 0)] -(0)-> "a"_cf(4, 0) "append" :: ["a"_cf(3, 0) x "a"_cf(0, 0)] -(1)-> "a"_cf(0, 0) "append" :: ["a"_cf(3, 0) x "a"_cf(3, 0)] -(2)-> "a"_cf(3, 0) "append" :: ["a"_cf(1, 0) x "a"_cf(0, 0)] -(1)-> "a"_cf(0, 0) "append#1" :: ["a"_cf(0, 0) x "a"_cf(0, 0)] -(0)-> "a"_cf(0, 0) "append#1" :: ["a"_cf(3, 0) x "a"_cf(3, 0)] -(0)-> "a"_cf(3, 0) "append#1" :: ["a"_cf(4, 0) x "a"_cf(4, 0)] -(1)-> "a"_cf(4, 0) "append#1" :: ["a"_cf(4, 0) x "a"_cf(4, 0)] -(0)-> "a"_cf(4, 0) "append#1" :: ["a"_cf(3, 0) x "a"_cf(0, 0)] -(1)-> "a"_cf(0, 0) "append#1" :: ["a"_cf(3, 0) x "a"_cf(3, 0)] -(2)-> "a"_cf(3, 0) "append#1" :: ["a"_cf(1, 0) x "a"_cf(0, 0)] -(1)-> "a"_cf(0, 0) "appendAll" :: ["a"_cf(4, 0)] -(2)-> "a"_cf(3, 0) "appendAll" :: ["a"_cf(0, 0)] -(0)-> "a"_cf(0, 0) "appendAll" :: ["a"_cf(4, 0)] -(2)-> "a"_cf(4, 0) "appendAll" :: ["a"_cf(2, 0)] -(0)-> "a"_cf(0, 0) "appendAll" :: ["a"_cf(4, 0)] -(0)-> "a"_cf(3, 0) "appendAll" :: ["a"_cf(1, 0)] -(0)-> "a"_cf(0, 0) "appendAll#1" :: ["a"_cf(4, 0)] -(2)-> "a"_cf(3, 0) "appendAll#1" :: ["a"_cf(0, 0)] -(0)-> "a"_cf(0, 0) "appendAll#1" :: ["a"_cf(4, 0)] -(2)-> "a"_cf(4, 0) "appendAll#1" :: ["a"_cf(2, 0)] -(0)-> "a"_cf(0, 0) "appendAll#1" :: ["a"_cf(4, 0)] -(0)-> "a"_cf(3, 0) "appendAll#1" :: ["a"_cf(1, 0)] -(0)-> "a"_cf(0, 0) "appendAll2" :: ["a"_cf(4, 0)] -(0)-> "a"_cf(4, 0) "appendAll2" :: ["a"_cf(2, 0)] -(0)-> "a"_cf(0, 0) "appendAll2" :: ["a"_cf(5, 0)] -(1)-> "a"_cf(0, 0) "appendAll2" :: ["a"_cf(1, 0)] -(1)-> "a"_cf(0, 0) "appendAll2#1" :: ["a"_cf(4, 0)] -(0)-> "a"_cf(4, 0) "appendAll2#1" :: ["a"_cf(2, 0)] -(0)-> "a"_cf(0, 0) "appendAll2#1" :: ["a"_cf(5, 0)] -(1)-> "a"_cf(0, 0) "appendAll2#1" :: ["a"_cf(1, 0)] -(1)-> "a"_cf(0, 0) "appendAll3" :: ["a"_cf(5, 0)] -(0)-> "a"_cf(0, 0) "appendAll3" :: ["a"_cf(1, 0)] -(0)-> "a"_cf(0, 0) "appendAll3#1" :: ["a"_cf(5, 0)] -(0)-> "a"_cf(0, 0) "appendAll3#1" :: ["a"_cf(1, 0)] -(0)-> "a"_cf(0, 0) "cons" :: ["a"_cf(0, 0) x "a"_cf(0, 0)] -(0)-> "a"_cf(0, 0) "cons" :: ["a"_cf(4, 0) x "a"_cf(4, 0)] -(4)-> "a"_cf(4, 0) "cons" :: ["a"_cf(3, 0) x "a"_cf(3, 0)] -(3)-> "a"_cf(3, 0) "cons" :: ["a"_cf(2, 0) x "a"_cf(2, 0)] -(2)-> "a"_cf(2, 0) "cons" :: ["a"_cf(5, 0) x "a"_cf(5, 0)] -(5)-> "a"_cf(5, 0) "cons" :: ["a"_cf(1, 0) x "a"_cf(1, 0)] -(1)-> "a"_cf(1, 0) "nil" :: [] -(0)-> "a"_cf(0, 0) "nil" :: [] -(0)-> "a"_cf(4, 0) "nil" :: [] -(0)-> "a"_cf(8, 8) "nil" :: [] -(0)-> "a"_cf(3, 0) "nil" :: [] -(0)-> "a"_cf(2, 0) "nil" :: [] -(0)-> "a"_cf(5, 0) "nil" :: [] -(0)-> "a"_cf(1, 0) Base Constructors: ------------------ "\"cons\"_a" :: ["a"(1, 0) x "a"(1, 0)] -(1)-> "a"(1, 0) "\"cons\"_a" :: ["a"(1, 1) x "a"(1, 1)] -(0)-> "a"(0, 1) "\"nil\"_a" :: [] -(0)-> "a"(1, 0) "\"nil\"_a" :: [] -(0)-> "a"(0, 1)