17 lines
549 B
Text
17 lines
549 B
Text
module
|
|
reset_grind_attrs%
|
|
attribute [grind] List.not_mem_nil
|
|
|
|
/--
|
|
error: Tactic `grind` failed: the goal mentions the declaration `incList`, which is being defined. To avoid circular reasoning, try rewriting the goal to eliminate `incList` before using `grind`.
|
|
|
|
as✝ : List Nat
|
|
a : Nat
|
|
as : List Nat
|
|
⊢ ∀ (a : Nat), a ∈ (incList as).val → a > 0
|
|
-/
|
|
#guard_msgs (error) in
|
|
def incList (as : List Nat) : { as : List Nat // ∀ a, a ∈ as → a > 0 } :=
|
|
match as with
|
|
| [] => ⟨[], by grind⟩
|
|
| a::as => ⟨(incList as).1, by grind⟩
|