§ Wisdom of Critial Pair Theory


Old rules:
(twoPow w i) * x = x <<< i
x * (twoPow w i) = x <<< i
twoPow w i * twoPow w j = twoPow w (i + j)

"When you have a non confluent simp set identify the problematic left hand side and come up with a new rule to join the divergence".

New rules:
BitVec.twoPow x * y = y <<< x
x * BitVec.twoPow y = x <<< y
(BitVec.twoPow x) <<< y = BitVec.twoPow (x + y)