lean4-htt/tests/pkg
Leonardo de Moura 0d2a574f96
feat: user-defined grind attributes (#11765)
This PR implements user-defined `grind` attributes. They are useful for
users that want to implement tactics using the `grind` infrastructure
(e.g., `progress*` in Aeneas). New `grind` attributes are declared using
the command
```lean
register_grind_attr my_grind
```
The command is similar to `register_simp_attr`. After the new attribute
is declared. Recall that similar to `register_simp_attr`, the new
attribute cannot be used in the same file it is declared.
```lean
opaque f : Nat → Nat
opaque g : Nat → Nat

@[my_grind] theorem fax : f (f x) = f x := sorry

example theorem fax2 : f (f (f x)) = f x := by
  fail_if_success grind
  grind [my_grind]
```

TODO: remove leftovers after update stage0
2025-12-22 02:57:25 +00:00
..
builtin_attr refactor: update built-in tactic error messages (#9633) 2025-07-31 14:16:57 +00:00
debug feat: debug_assert! (#7256) 2025-03-03 16:34:44 +00:00
def_clash feat: module system is no longer experimental (#11637) 2025-12-12 21:20:26 +00:00
deriving chore: update tests to account for .lake 2023-11-13 20:31:24 -05:00
frontend chore: re-enable tests (#10923) 2025-10-23 08:38:57 +00:00
initialize fix: missing unboxing in interpreter when loading initialized value (#4512) 2024-06-20 10:06:24 +00:00
linter_set feat: implement "linter sets" that can be turned on as a group (#8106) 2025-05-14 23:30:42 +00:00
misc fix: local syntax should create private definitions 2025-08-19 14:49:12 -07:00
mod_clash feat: module system is no longer experimental (#11637) 2025-12-12 21:20:26 +00:00
module fix: grind using congr equation of private imported matcher (#11756) 2025-12-21 17:59:52 +00:00
path with spaces fix: calling programs with spaces on Windows (#4515) 2024-07-26 17:35:05 +00:00
prv feat: improve error message in the case of type class synthesis failure (#11245) 2025-11-21 21:24:27 +00:00
rebuild feat: module system is no longer experimental (#11637) 2025-12-12 21:20:26 +00:00
setup feat: server support for new module setup (#8699) 2025-06-23 18:00:14 +00:00
signal feat: add signal handling support using libuv (#9258) 2025-09-15 13:09:50 +00:00
structure_docstrings feat: module system is no longer experimental (#11637) 2025-12-12 21:20:26 +00:00
test_extern test: disable flaky test 2025-04-29 17:34:10 +02:00
user_attr feat: user-defined grind attributes (#11765) 2025-12-22 02:57:25 +00:00
user_attr_app chore: re-enable tests (#10923) 2025-10-23 08:38:57 +00:00
user_ext chore: disable nondeterministic test 2025-04-24 11:30:26 +02:00
user_opt feat: accept user-defined options on the cmdline (#4741) 2024-08-02 12:24:56 +00:00
user_plugin fix: symbol clashes between packages (#11082) 2025-11-19 02:24:44 +00:00
ver_clash feat: module system is no longer experimental (#11637) 2025-12-12 21:20:26 +00:00
.gitignore test: module clash across packages (#11246) 2025-11-19 02:23:34 +00:00