This PR reduces the number of `Nat.Bitwise` grind annotations we have the deal with distributivity. The new smaller set encourages `grind` to rewrite into DNF. The old behaviour just resulted in saturating up to the instantiation limits.
5 lines
389 B
Text
5 lines
389 B
Text
example (x y z : Nat) : x &&& (y ||| z) = (x &&& y) ||| (x &&& z) := by grind
|
|
example (w x y z : Nat) : (w ||| x) &&& (y ||| z) = (w &&& y) ||| (w &&& z) ||| (x &&& y) ||| (x &&& z) := by grind
|
|
|
|
example (x y z : Nat) : x &&& (y ^^^ z) = (x &&& y) ^^^ (x &&& z) := by grind
|
|
example (w x y z : Nat) : (w ^^^ x) &&& (y ^^^ z) = (w &&& y) ^^^ (w &&& z) ^^^ (x &&& y) ^^^ (x &&& z) := by grind
|