This PR sets up the new integrated test/bench suite. It then migrates all benchmarks and some related tests to the new suite. There's also some documentation and some linting. For now, a lot of the old tests are left alone so this PR doesn't become even larger than it already is. Eventually, all tests should be migrated to the new suite though so there isn't a confusing mix of two systems.
28 lines
760 B
Text
28 lines
760 B
Text
import Std.Tactic.Do
|
||
open Std.Do
|
||
|
||
/-!
|
||
Test for performing E-matching on theorems that contain universe parameters
|
||
not referenced by any regular parameter.
|
||
-/
|
||
|
||
example (c : (SPred.pure False : SPred []).down) : False := by
|
||
grind
|
||
|
||
opaque foo {α : Type u} {β : Type v} (a : α) (b : β) : Nat
|
||
|
||
@[grind] theorem fooEq (a : Nat) :
|
||
foo.{0, v} (β := List (Sort v)) a [] = foo.{0, w} (β := List (Sort w)) a [] :=
|
||
sorry
|
||
|
||
example
|
||
(_ : foo 1 ([] : List (Sort v)) = 1)
|
||
(_ : foo 2 ([] : List (Sort w)) ≠ foo 2 ([] : List (Sort w')))
|
||
(_ : foo 3 ([] : List (Sort u)) = 3)
|
||
: False := by
|
||
grind
|
||
|
||
opaque boo (x : False) : Prop
|
||
|
||
theorem aux (_ : foo 2 ([] : List (Sort w)) ≠ foo 2 ([] : List (Sort w'))) (_ : boo (by grind)) : True := by
|
||
grind
|