packages feed

speculate-0.3.5: bench/qs2/arith-negate-abs.out

== Signature ==
     0 :: Int
     1 :: Int
   (+) :: Int -> Int -> Int
   (*) :: Int -> Int -> Int
    id :: Int -> Int
negate :: Int -> Int
   abs :: Int -> Int

== Laws ==
  1. id x = x
  2. abs 0 = 0
  3. abs 1 = 1
  4. negate 0 = 0
  5. x * 0 = 0
  6. x * 1 = x
  7. 0 * x = 0
  8. 1 * x = x
  9. x + 0 = x
 10. 0 + x = x
 11. abs (abs x) = abs x
 12. abs (negate x) = abs x
 13. negate (negate x) = x
 14. x * y = y * x
 15. x + y = y + x
 16. negate x * y = x * negate y
 17. x + negate x = 0
 18. abs (x * x) = x * x
 19. negate (x * y) = x * negate y
 20. abs (1 + 1) = 1 + 1
 21. (x * y) * z = x * (y * z)
 22. (x + y) + z = x + (y + z)
 23. x * (y + 1) = x + (x * y)
 24. abs x * abs y = abs (x * y)
 25. abs x + abs x = abs (x + x)
 26. negate x + negate y = negate (x + y)
 27. abs (x + abs x) = x + abs x
 28. abs (1 + abs x) = 1 + abs x
 29. x * (y + y) = y * (x + x)