lean4-htt/tests/lean/run/grind_cutsat_div_mod.lean
Joachim Breitner 0e49576fe4
feat: guard_msgs to treat trace messages separate (#8267)
This PR makes `#guard_msgs` to treat `trace` messages separate from
`info`, `warning` and `error`. It also introduce the ability to say
`#guard_msgs (pass info`, like `(drop info)` so far, and also adds
`(check info)` as the explicit form of `(info)`, for completeness.

Fixes #8266
2025-05-09 05:44:34 +00:00

29 lines
707 B
Text

set_option grind.warning false
example (x y : Int) : x / 2 + y = 3 → x = 5 → y = 1 := by
grind
example (x y : Int) : x / -2 + y = 3 → x = 5 → y = 5 := by
grind
example (x y : Int) : x % -2 + y = 3 → x = 5 → y = 2 := by
grind
example (x y : Int) : x % 2 + y = 3 → x = 5 → y = 2 := by
grind
/--
trace: [grind.cutsat.model] x := 5
[grind.cutsat.model] y := 2
-/
#guard_msgs (trace) in
set_option trace.grind.cutsat.model true in
example (x y : Int) : x % 2 + y = 3 → x ≤ 5 → x > 4 → y = 1 := by
fail_if_success grind
sorry
example (x y : Int) : x = y / 2 → y % 2 = 0 → y - 2*x = 0 := by
grind
example (x : Int) : x ≥ 0 → (x + 4) / 2 ≤ x + 2 := by
grind