isq :: Bool -> Int -> Int -- testing 360 combinations of argument values -- pruning with 56/91 rules -- 3 candidates of size 1 -- 0 candidates of size 2 -- 3 candidates of size 3 -- 6 candidates of size 4 -- 8 candidates of size 5 -- 48 candidates of size 6 -- 63 candidates of size 7 -- 301 candidates of size 8 -- tested 432 candidates isq False 0 = 0 isq False x = x + 1 isq True 0 = 1 isq True x = x * x (^^^) :: Int -> Int -> Int -- testing 360 combinations of argument values -- pruning with 56/91 rules -- 4 candidates of size 1 -- 0 candidates of size 2 -- 9 candidates of size 3 -- tested 13 candidates 0 ^^^ x = x x ^^^ 0 = x x ^^^ y = 0 (^^^) :: Int -> Int -> Int -- testing 360 combinations of argument values -- pruning with 56/91 rules -- 4 candidates of size 1 -- 0 candidates of size 2 -- 9 candidates of size 3 -- 0 candidates of size 4 -- 39 candidates of size 5 -- 60 candidates of size 6 -- 222 candidates of size 7 -- 996 candidates of size 8 -- 1266 candidates of size 9 -- 11700 candidates of size 10 -- tested 11507 candidates x ^^^ y = if 0 == x * y then x + y else 0