This PR implements equality propagation for `Nat` in `grind order`. `grind order` supports offset equalities for rings, but it has an adapter for `Nat`. Example: ```lean example (a b : Nat) (f : Nat → Int) : a ≤ b + 1 → b + 1 ≤ a → f (1 + a) = f (1 + b + 1) := by grind -offset -mbtc -lia -linarith (splits := 0) ```
4 lines
157 B
Text
4 lines
157 B
Text
example {a b : Nat} (ha : 1 ≤ a) : (a - 1 + 1) * b = a * b := by grind
|
|
|
|
example {a b : Nat} (ha : 1 ≤ a) : (a - 1 + 1) * b = a * b := by
|
|
grind => done
|