This PR fixes a bug when constructing the proof term for a Nullstellensatz certificate produced by the new commutative ring procedure in `grind`. The kernel was rejecting the proof term.
18 lines
572 B
Text
18 lines
572 B
Text
open Lean.Grind
|
||
|
||
set_option grind.warning false
|
||
|
||
example {α} [CommRing α] [IsCharP α 0] [NoNatZeroDivisors α]
|
||
(d t : α)
|
||
(Δ40 : d + t + d * t = 0)
|
||
(Δ41 : 2 * d + 2 * d * t - 4 * d * t^2 + 2 * d * t^4 + 2 * d^2 * t^4 = 0) :
|
||
t + 2 * t^2 - t^3 - 2 * t^4 + t^5 = 0 := by
|
||
grind +ring
|
||
|
||
example {α} [CommRing α] [IsCharP α 0] [NoNatZeroDivisors α]
|
||
(d t d_inv : α)
|
||
(Δ40 : d * (d + t + d * t) = 0)
|
||
(Δ41 : d^2 * (d + d * t - 2 * d * t^2 + d * t^4 + d^2 * t^4) = 0)
|
||
(_ : d * d_inv = 1) :
|
||
t + 2 * t^2 - t^3 - 2 * t^4 + t^5 = 0 := by
|
||
grind +ring
|