prop_andIsLikePreludeAnd (Fun _ f1) (Fun _ f2) i
  = testInt (p1 &&& p2) i == (fst3 (f1 i) && fst3 (f2 i))
  where
    p1 = predicate f1
    p2 = predicate f2
prop_andIsLikePreludeAnd (Fun _ f1) (Fun _ f2) i
  = testInt (p1 &&& p2) i == (fst3 (f1 i) && fst3 (f2 i))
  where
    p1 = predicate f1
    p2 = predicate f2
prop_andIsLikePreludeAnd (Fun _ f1) (Fun _ f2) i
  = testInt (p1 &&& p2) i == (fst3 (f1 i) && fst3 (f2 i))
  where
    p1 = predicate f1
    p2 = predicate f2