WORST_CASE(?,O(n^2)) Solution: --------- 0 :: [] -(0)-> A(0, 0) 0 :: [] -(0)-> A(3, 0) Cons :: [A(7, 0) x A(14, 7)] -(7)-> A(7, 7) Cons :: [A(3, 0) x A(3, 0)] -(3)-> A(3, 0) Cons :: [A(0, 0) x A(0, 0)] -(0)-> A(0, 0) Cons :: [A(0, 0) x A(8, 8)] -(0)-> A(0, 8) False :: [] -(0)-> A(5, 1) False :: [] -(0)-> A(15, 15) Nil :: [] -(0)-> A(7, 7) Nil :: [] -(0)-> A(3, 0) Nil :: [] -(0)-> A(15, 13) S :: [A(0, 0)] -(0)-> A(0, 0) S :: [A(3, 0)] -(3)-> A(3, 0) True :: [] -(0)-> A(5, 1) True :: [] -(0)-> A(15, 15) cond_insert_ord_x_ys_1 :: [A(5, 1) x A(4, 0) x A(0, 0) x A(3, 0)] -(2)-> A(0, 0) fold#3 :: [A(4, 0) x A(7, 7)] -(3)-> A(0, 0) insert_ord :: [A(0, 0)] -(4)-> A(4, 0) insert_ord :: [A(0, 0)] -(4)-> A(4, 8) insert_ord :: [A(0, 0)] -(5)-> A(5, 5) insert_ord#2 :: [A(0, 0) x A(4, 0) x A(3, 0)] -(1)-> A(0, 0) leq :: [] -(0)-> A(0, 0) leq :: [] -(0)-> A(5, 5) leq :: [] -(0)-> A(7, 15) leq#2 :: [A(0, 0) x A(3, 0)] -(1)-> A(12, 8) main :: [A(9, 9)] -(14)-> A(0, 0) Cost Free Signatures: --------------------- 0 :: [] -(0)-> A_cf(0, 0) Cons :: [A_cf(7, 0) x A_cf(7, 0)] -(7)-> A_cf(7, 0) Cons :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) Cons :: [A_cf(0, 0) x A_cf(9, 9)] -(0)-> A_cf(0, 9) False :: [] -(0)-> A_cf(0, 0) False :: [] -(0)-> A_cf(11, 11) False :: [] -(0)-> A_cf(0, 1) False :: [] -(0)-> A_cf(3, 3) Nil :: [] -(0)-> A_cf(7, 0) Nil :: [] -(0)-> A_cf(11, 3) Nil :: [] -(0)-> A_cf(15, 11) Nil :: [] -(0)-> A_cf(0, 0) S :: [A_cf(0, 0)] -(0)-> A_cf(0, 0) True :: [] -(0)-> A_cf(0, 0) True :: [] -(0)-> A_cf(11, 11) True :: [] -(0)-> A_cf(0, 1) True :: [] -(0)-> A_cf(3, 3) cond_insert_ord_x_ys_1 :: [A_cf(0, 0) x A_cf(7, 0) x A_cf(7, 0) x A_cf(7, 0)] -(14)-> A_cf(7, 0) cond_insert_ord_x_ys_1 :: [A_cf(0, 0) x A_cf(0, 0) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) cond_insert_ord_x_ys_1 :: [A_cf(0, 1) x A_cf(0, 0) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) fold#3 :: [A_cf(0, 4) x A_cf(7, 0)] -(2)-> A_cf(7, 0) insert_ord :: [A_cf(0, 0)] -(0)-> A_cf(0, 4) insert_ord :: [A_cf(0, 0)] -(0)-> A_cf(0, 10) insert_ord#2 :: [A_cf(0, 0) x A_cf(7, 0) x A_cf(7, 0)] -(7)-> A_cf(7, 0) insert_ord#2 :: [A_cf(2, 2) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) insert_ord#2 :: [A_cf(4, 4) x A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) leq :: [] -(0)-> A_cf(0, 0) leq :: [] -(0)-> A_cf(3, 3) leq :: [] -(0)-> A_cf(2, 2) leq :: [] -(0)-> A_cf(11, 11) leq :: [] -(0)-> A_cf(4, 4) leq#2 :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(8, 8) leq#2 :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(3, 3) leq#2 :: [A_cf(0, 0) x A_cf(0, 0)] -(0)-> A_cf(0, 0) Base Constructors: ------------------ 0_A :: [] -(0)-> A(1, 0) 0_A :: [] -(0)-> A(0, 1) Cons_A :: [A(1, 0) x A(1, 0)] -(1)-> A(1, 0) Cons_A :: [A(0, 0) x A(1, 1)] -(0)-> A(0, 1) False_A :: [] -(0)-> A(1, 0) False_A :: [] -(0)-> A(0, 1) Nil_A :: [] -(0)-> A(1, 0) Nil_A :: [] -(0)-> A(0, 1) S_A :: [A(1, 0)] -(1)-> A(1, 0) S_A :: [A(0, 0)] -(0)-> A(0, 1) True_A :: [] -(0)-> A(1, 0) True_A :: [] -(0)-> A(0, 1) insert_ord_A :: [A(0)] -(1)-> A(1, 0) insert_ord_A :: [A(0)] -(0)-> A(0, 1) leq_A :: [] -(0)-> A(1, 0) leq_A :: [] -(0)-> A(0, 1)