Commit graph

1625 commits

Author SHA1 Message Date
Leonardo de Moura
26eb6fa849 feat(*): new numeral encoding 2015-11-08 14:04:55 -08:00
Leonardo de Moura
8ee214f133 checkpoint: new numeral encoding 2015-11-08 14:04:55 -08:00
Leonardo de Moura
744d1cba3d feat(library,hott,frontends/lean): avoid keywords with hyphen 2015-11-08 14:04:54 -08:00
Leonardo de Moura
a618bd7d6c refactor(library): use type classes for encoding all arithmetic operations
Before this commit we were using overloading for concrete structures and
type classes for abstract ones.

This is the first of series of commits that implement this modification
2015-11-08 14:04:54 -08:00
Sebastian Ullrich
7c047def97 feat(frontends/lean/parser): recognize padded Exprs terminators 2015-10-13 09:52:35 -07:00
Sebastian Ullrich
dbfebd5409 feat(frontends/lean/scanner): add more checks to read_quoted_symbol 2015-10-13 09:52:35 -07:00
Sebastian Ullrich
6c34718cbc chore(library,frontends/lean): remove option pp.extra_spaces
Obsoleted by improved pretty printer spacing
2015-10-13 09:52:35 -07:00
Leonardo de Moura
5051c0031e feat(frontends/lean): add '#accessible' command for debugging purposes 2015-09-30 18:50:28 -07:00
Leonardo de Moura
a17a6fd660 chore(frontends/lean/pp): fix style 2015-09-30 17:47:46 -07:00
Leonardo de Moura
c9af007994 chore(frontends/lean): fix style 2015-09-30 17:40:35 -07:00
Leonardo de Moura
6153ccd253 fix(frontends/lean/parse_table): compilation warning 2015-09-30 17:40:18 -07:00
Sebastian Ullrich
8a96cb6218 fix(frontends/lean/pp): extend needs_space_sep to two-token lookahead 2015-09-30 17:39:21 -07:00
Sebastian Ullrich
da08079af9 feat(frontends/lean): allow specifying notation spacing via quoted symbols
Unquoted tokens inherit their spacing from the respective reserved definition.
2015-09-30 17:36:32 -07:00
Sebastian Ullrich
8f96b725e3 feat(frontends/lean): save transitions instead of actions in notation::parse_table 2015-09-30 17:36:32 -07:00
Sebastian Ullrich
189a300b11 feat(frontends/lean): improve pretty printing space insertion heuristic 2015-09-30 17:36:32 -07:00
Sebastian Ullrich
8fd8ff2773 fix(frontends/lean): ignore reserved notation for pretty printing
Because reserved notation uses `Prop` as a dummy expression, pretty
printing `Prop` unnecessarily invokes pp_notation on every reserved
notation entry.
2015-09-30 17:36:32 -07:00
Leonardo de Moura
28a5ca5809 fix(frontends/lean): fixes #830 2015-09-18 07:51:02 -07:00
Leonardo de Moura
49a574dbbf refactor(compiler): rename elim_rec to preprocess_rec 2015-09-11 17:12:32 -07:00
Leonardo de Moura
b31ab7d77a feat(compiler,frontends/lean): add #compile command for debugging purposes, add compiler module 2015-09-11 10:49:07 -07:00
Leonardo de Moura
1fdbd681cc feat(frontends/lean/builtin_exprs): name hypothesis in suffices
closes #817
2015-09-03 16:09:39 -07:00
Leonardo de Moura
1dc1574ad4 fix(frontends/lean/parse_table): do not add 'no_info' annotation in tactic expressions 2015-09-02 20:51:06 -07:00
Leonardo de Moura
634c0b5e9d feat(library/tactic,frontends/lean): propagate new options back to elaborator 2015-09-02 20:34:14 -07:00
Leonardo de Moura
c84e886c7b fix(frontends/lean/notation_cmd): fixes #808
This commit and 2b1d2c fixes #808
2015-08-31 18:05:58 -10:00
Leonardo de Moura
2b1d2c21ad fix(frontends/lean/util): bug when parsing priorities and numerals are overloaded 2015-08-31 15:08:21 -10:00
Leonardo de Moura
45163acf25 refactor(kernel/inductive): use local constants to represent introduction rules 2015-08-25 03:46:28 -07:00
Leonardo de Moura
3747ba095a fix(frontends/lean/elaborator): incorrect assertion
It is supposed to be "!first implies is_local(from)"

fixes #807
2015-08-20 17:56:20 -07:00
Leonardo de Moura
87349dc355 feat(frontends/lean/token_table): add 'proposition' keyword 2015-08-19 08:05:31 -07:00
Leonardo de Moura
3a72cd9621 fix(frontends/lean): rename multiword keyword "suffices to show" to "suffices" 2015-08-18 17:57:53 -07:00
Leonardo de Moura
3ce8c5d6f7 feat(frontends/lean): add "suffices to show A, from B, C" construct 2015-08-18 17:04:38 -07:00
Leonardo de Moura
21c41f50ea fix(frontends/lean/elaborator): fixes #803 2015-08-17 14:56:41 -07:00
Leonardo de Moura
b07a364d2f feat(frontends/lean/parser): process multiple parsing actions
closes #800
2015-08-17 09:42:10 -07:00
Leonardo de Moura
d913c04e90 feat(frontends/lean/parse_table): add simple notion of "compatible" parsing actions
See issue #800
2015-08-17 08:41:30 -07:00
Leonardo de Moura
edb4c09bc1 fix(frontends/lean,kernel/inductive): compilation errors in Debug mode 2015-08-16 19:02:48 -07:00
Leonardo de Moura
ea04414058 feat(frontends/lean): allow user to overload notation containing foldr/foldl and/or scoped expressions
see new tests for a summary of new features

see issue #800
2015-08-16 18:24:30 -07:00
Leonardo de Moura
ffde40a500 fix(frontends/lean/parse_table): missing condition 2015-08-16 15:35:17 -07:00
Leonardo de Moura
1d6bebf3a3 feat(frontends/lean/parse_table): start support for multiple "actions" in parsing tables 2015-08-16 13:52:06 -07:00
Leonardo de Moura
498afc1e6f feat(CMakeLists): add shared library 2015-08-13 11:21:05 -07:00
Leonardo de Moura
602626803b fix(frontends/lean/builtin_cmds): 'print axioms' and theorem queue 2015-08-11 21:08:45 -07:00
Leonardo de Moura
5d8d226640 fix(frontends/lean/parser): add support for decimals
Decimal numbers are notation for rationals.
If rat.of_num is not available, then an error is generated.

closes #793
2015-08-11 18:44:48 -07:00
Leonardo de Moura
66a59d5b51 feat(frontends/lean/util): remove hack that overrides priority namespace
closes #789
2015-08-11 18:01:40 -07:00
Leonardo de Moura
0b8f57841a feat(frontends/lean/decl_cmds): closes #791 2015-08-11 17:53:33 -07:00
Daniel Selsam
40471ca8e3 doc(frontends/lean/elaborator): assert invariant in visit_app 2015-08-11 17:02:38 -07:00
Leonardo de Moura
23118371d1 refactor(library/aliases): cleanup 2015-08-11 06:41:56 -07:00
Leonardo de Moura
1f34c72192 fix(frontends/lean/parser): fixes #770 2015-08-08 09:48:31 -07:00
Leonardo de Moura
6c5832a564 feat(frontends/lean/decl_cmds): allow recursive examples
closes #774
2015-08-08 08:26:25 -07:00
Leonardo de Moura
06f20694c8 fix(frontends/lean/builtin_exprs): fixes #768 2015-08-08 04:20:17 -07:00
Leonardo de Moura
5568085ab9 fix(frontends/lean/elaborator): closes #771
Produce nicer error message when type/goal is a metavariable and
universe metavariables have already been instantiated with universe
parameters.
2015-08-07 13:29:22 -07:00
Leonardo de Moura
f21647899f feat(frontends/lean/builtin_exprs): rename 'show' hidden name to 'this'
This is useful if 'show' is recursive
2015-08-07 13:29:21 -07:00
Leonardo de Moura
60ba3d15ff feat(library/data/matrix): add basic matrix module 2015-08-01 19:33:31 +01:00
Leonardo de Moura
1f304ad4b9 fix(frontends/lean/pp): pretty printing 'binder'
This commit also replaces many occurrences of 'binders' with 'binder'.
2015-07-31 11:27:38 -07:00