Leonardo de Moura
|
546f65b542
|
refactor(init/datatypes, init/logic): define sizeof instances and simp lemmas
|
2016-09-01 10:33:50 -07:00 |
|
Leonardo de Moura
|
4131b4168c
|
refactor(library/init): define sizeof at init/datatypes
|
2016-09-01 09:47:46 -07:00 |
|
Leonardo de Moura
|
ff05f16caa
|
fix(library/type_context): store instance fingerprint
|
2016-09-01 09:01:43 -07:00 |
|
Leonardo de Moura
|
54fd9adb47
|
feat(library/equations_compiler): use defeq simplifier to cleanup types of automatically synthesized lemmas
|
2016-08-31 15:54:03 -07:00 |
|
Leonardo de Moura
|
51a338d9a1
|
fix(library/equations_compiler/structural_rec): support for reflexive inductive datatypes
|
2016-08-31 10:46:32 -07:00 |
|
Leonardo de Moura
|
a8690205c9
|
feat(library/type_context): improve on_is_def_eq_failure for stuck terms
|
2016-08-30 10:51:40 -07:00 |
|
Leonardo de Moura
|
bd99de9bf8
|
fix(frontends/lean/pp): remove unnecessary parenthesis when pretty printing (A -> (Pi (b : B), C b))
|
2016-08-29 16:36:04 -07:00 |
|
Leonardo de Moura
|
230db1bc92
|
feat(library/equations_compiler/structural_rec): generate brec_on-based function
We still need to generate lemmas and induction principle.
|
2016-08-29 15:58:13 -07:00 |
|
Leonardo de Moura
|
71916acbf0
|
test(tests/lean): another test for bad annotations
|
2016-08-28 14:54:35 -07:00 |
|
Leonardo de Moura
|
204d950a5f
|
test(tests/lean/run/def13): add map-like test for dependent patter matching
|
2016-08-28 14:45:39 -07:00 |
|
Leonardo de Moura
|
f0f9880ece
|
refactor(library/equations_compiler/elim_match,library/tactic/cases_tactic):
new design for elim_match
I still need to fix lemma generation, and refactor induction/subst tactics
|
2016-08-28 13:15:10 -07:00 |
|
Leonardo de Moura
|
f52be8c96f
|
fix(tests/lean/bad_inaccessible): expected output
|
2016-08-28 08:34:39 -07:00 |
|
Leonardo de Moura
|
16a99436b4
|
fix(frontends/lean/elaborator): make sure all inductive datatype parameters in constructor applications are marked as inaccessible
|
2016-08-28 07:58:18 -07:00 |
|
Leonardo de Moura
|
0ed61c97c9
|
test(tests/lean/inaccessible2): add more invalid pattern tests
|
2016-08-28 07:57:55 -07:00 |
|
Leonardo de Moura
|
ae63821cdb
|
fix(frontends/lean/elaborator): reject inaccessible annotation inside inaccessible annotation
|
2016-08-28 07:57:44 -07:00 |
|
Leonardo de Moura
|
95e8228e8a
|
refactor(library/tactic/cases_tactic): improve low-level API
|
2016-08-25 16:34:40 -07:00 |
|
Leonardo de Moura
|
98aefca014
|
fix(library/local_context): depends_on should take into account assigned metavariables
|
2016-08-25 13:49:54 -07:00 |
|
Leonardo de Moura
|
7851b9c097
|
fix(frontends/lean/definition_cmds): parameter handling
|
2016-08-23 21:13:54 -07:00 |
|
Sebastian Ullrich
|
cee5bfd983
|
feat(frontends/lean/decl_attributes): disallow persistent attribute removal
|
2016-08-23 14:09:35 -07:00 |
|
Sebastian Ullrich
|
abd040589f
|
feat(frontends/lean/decl_attributes, library/attribute_manager): implement attribute removal
|
2016-08-23 14:09:35 -07:00 |
|
Leonardo de Moura
|
e18500dcd4
|
feat(frontends/lean/parser): _ is an anonymous variable again in patterns.
|
2016-08-23 14:06:24 -07:00 |
|
Leonardo de Moura
|
e4fd627ae2
|
feat(library/attribute_manager): fingerprints
The fingerprint changes whenever a new attribute is added.
|
2016-08-23 08:20:37 -07:00 |
|
Leonardo de Moura
|
a4577901e8
|
fix(library/user_recursors): add support for automatically generated recursors
|
2016-08-21 17:17:48 -07:00 |
|
Leonardo de Moura
|
6aa2ab6538
|
chore(tests/lean/run/match2): missing test
|
2016-08-21 15:55:56 -07:00 |
|
Daniel Selsam
|
4f8db64e23
|
refactor(simplifier): many fixes, extensions, and tests
fix(simplifier): missing simp rule in prop simplifier
fix(library/unfold_macros): do not look for untrusted macros when using sufficient trust level
|
2016-08-19 14:57:03 -07:00 |
|
Leonardo de Moura
|
7e4f15b0d8
|
feat(frontends/lean/elaborator): more inaccessible term validation
|
2016-08-19 14:52:11 -07:00 |
|
Leonardo de Moura
|
e99eb6d47e
|
feat(frontends/lean): revising inaccessible terms syntax again :(
|
2016-08-19 13:57:12 -07:00 |
|
Leonardo de Moura
|
e68fbbc12c
|
chore(library/equations_compiler/elim_match): fix style and test output
|
2016-08-18 18:09:36 -07:00 |
|
Leonardo de Moura
|
22b8cb2777
|
fix(library/type_context): whnf cache bug
|
2016-08-18 18:04:19 -07:00 |
|
Leonardo de Moura
|
bd67c9cd9f
|
fix(tests/lean/user_attribute): test output
|
2016-08-18 15:55:55 -07:00 |
|
Sebastian Ullrich
|
21e8c23ed7
|
feat(library/vm/user_attribute): use command instead of attribute for registering
|
2016-08-18 15:51:41 -07:00 |
|
Sebastian Ullrich
|
ca8be3857c
|
feat(library/user_attribute): add user-defined attributes and make attribute_manager environment-aware
|
2016-08-18 12:56:44 -07:00 |
|
Leonardo de Moura
|
cd77f7167e
|
chore(frontends/lean): run_tactic ==> run_command
add `command` as alias for `tactic unit`
|
2016-08-18 12:53:21 -07:00 |
|
Leonardo de Moura
|
ddc3789929
|
feat(frontends/lean): add run_tactic command
This commit also adds the tactic `add_decl`.
|
2016-08-18 10:56:18 -07:00 |
|
Leonardo de Moura
|
7ac58c0715
|
chore(tests/lean/run): fix tests
|
2016-08-17 15:46:06 -07:00 |
|
Leonardo de Moura
|
93d48ae620
|
feat(frontends/lean/parser): revised pattern validation
|
2016-08-17 15:42:13 -07:00 |
|
Daniel Selsam
|
a9b01991c2
|
feat(frontends/lean/inductive_cmd): new frontend for the inductive cmd
Conflicts:
src/frontends/lean/CMakeLists.txt
src/frontends/lean/structure_cmd.h
|
2016-08-17 07:34:03 -07:00 |
|
Sebastian Ullrich
|
e548a6311e
|
chore(frontends/lean/print_cmd): change attribute output to new syntax
|
2016-08-16 13:49:03 -07:00 |
|
Sebastian Ullrich
|
8bbcbb14cf
|
chore(library, tests): use new attribute chaining syntax
sed -E -i 's/(attribute(\s*(\w|\.)+)* \[[^]]+)\] \[/\1, /' {library,tests}/**/*.lean # repeat as needed
|
2016-08-16 13:49:03 -07:00 |
|
Sebastian Ullrich
|
cb6a6b642e
|
refactor(library/attribute_manager): remove attribute tokens and use name for attribute names
|
2016-08-16 13:49:03 -07:00 |
|
Leonardo de Moura
|
0f224ff437
|
fix(library/tactic/subst_tactic): incorrect depends_on
|
2016-08-16 11:19:06 -07:00 |
|
Leonardo de Moura
|
c9475774f4
|
feat(library/tactic/tactic_state): add is_def_eq and is_def_eq_core tactics
|
2016-08-16 11:08:03 -07:00 |
|
Leonardo de Moura
|
f8e5753a13
|
feat(library/type_context, library/tactic): add eta-expansion method and tactic
|
2016-08-14 16:15:12 -07:00 |
|
Leonardo de Moura
|
2354b63099
|
feat(library/tactic/tactic_state): add whnf_core
|
2016-08-14 16:02:40 -07:00 |
|
Leonardo de Moura
|
323701bef1
|
feat(frontends/lean/parser): simplify pattern semantics '_' in a pattern is always a anonymous variable
|
2016-08-13 22:14:40 -07:00 |
|
Leonardo de Moura
|
f7f564a00a
|
feat(frontends/lean/definition_cmds): postprocessing for parameters
|
2016-08-13 17:41:05 -07:00 |
|
Leonardo de Moura
|
8ff2876074
|
fix(frontends/lean/definition_cmds): collect implicit args in the type
|
2016-08-13 16:54:17 -07:00 |
|
Leonardo de Moura
|
2de3d40910
|
feat(frontends/lean/definition_cmds): invoke compiler
|
2016-08-13 16:45:32 -07:00 |
|
Leonardo de Moura
|
0312b84273
|
feat(frontends/lean/definition_cmds): check noncomputable annotation
|
2016-08-13 16:33:02 -07:00 |
|
Leonardo de Moura
|
9e3bf4bd8d
|
fix(frontends/lean/elaborator): improve error message for eliminator elaborator
|
2016-08-13 15:43:44 -07:00 |
|