speculate-0.3.5: tests/model/oddeven.out
max expr size = 5
|- on ineqs = 4
|- on conds = 4
max #-tests = 500
min #-tests = 25 (to consider p ==> q true)
max #-vars = 2 (for inequational and conditional laws)
_ :: Bool (holes: Bool)
_ :: Int (holes: Int)
0 :: Int
1 :: Int
2 :: Int
False :: Bool
True :: Bool
odd :: Int -> Bool
even :: Int -> Bool
mod :: Int -> Int -> Int
(==) :: Int -> Int -> Bool
(==) :: Bool -> Bool -> Bool
(p == p) == True
(p == True) == p
(x == x) == True
(x == y) == (y == x)
odd (x `mod` 2) == odd x
even (x `mod` 2) == even x
(False == odd x) == even x
(False == even x) == odd x
(odd x == even x) == False
(2 == x `mod` 2) == False
(0 == x `mod` 2) == even x
(1 == x `mod` 2) == odd x
(even x == odd y) == (odd x == even y)
(even x == even y) == (odd x == odd y)
x `mod` 1 == 0
(x `mod` 2) `mod` 2 == x `mod` 2
p ==> True
False ==> p
x == 0 ==> even x
x == 1 ==> odd x
x == 2 ==> even x
x `mod` 2 <= 2
0 <= x `mod` 2
x `mod` 2 <= 1
odd x ==> x `mod` x == 0
odd x ==> 0 `mod` x == 0
odd x ==> x `mod` 2 == 1
odd y ==> (x `mod` y) `mod` y == x `mod` y
even x ==> x `mod` 2 == 0