Jeremy Avigad
dc8cad10bf
feat(src/emacs/README.md): add header
2015-12-22 16:39:13 -05:00
Jeremy Avigad
6913eb0c76
refactor(library/init/subtype.lean): put subtype notation in the namespace
...
The notation { x : A | P x } is overloaded in set, and is ambiguous.
2015-12-22 16:39:13 -05:00
Jeremy Avigad
68ecdc4c26
feat(src/emacs/README.md): expand instructions slightly
2015-12-22 16:39:13 -05:00
Jeremy Avigad
8d50405e68
chore(library/extras/latex/lstlean.text): update lists for syntax highlighting
2015-12-22 16:39:13 -05:00
Jeremy Avigad
8ccafc4267
fix(library/init/function): fix typo
2015-12-22 16:39:13 -05:00
Jeremy Avigad
baf11d0018
feat(library/algebra/ring_bigops): make start on file with more properties of sums and products
2015-12-22 16:39:13 -05:00
Jeremy Avigad
0e3b13f1a0
refactor(library/algebra): combine group_bigops and group_set_bigops
2015-12-22 16:39:13 -05:00
Soonho Kong
f1daf8f24e
fix(algebra/group.lean): remove unnecessary use of add.assoc from theorem bit0_add_bit1_helper
2015-12-22 09:12:57 -05:00
Ulrik Buchholtz
71cad16c32
fix(extras/depgraph): calculate lean executable path from PATH or guess
2015-12-19 23:03:53 -05:00
Soonho Kong
f911747b60
fix(util/file_lock.cpp): add 'include <fcntl.h>'
...
@wizardbc found that this is needed while working on lean.js.
I think it's because of the use of O_CREAT in open system call.
Related issue: leanprover/lean.js#10
2015-12-19 07:51:00 -05:00
Soonho Kong
43a8b01211
feat(extra/depgraph): add dependency graph script
2015-12-18 18:28:58 -05:00
Soonho Kong
c5223d2d19
fix(emacs/load-lean.el): proceed even if logo image is not created
...
On OSX + emacs-24.5, pgm file is not supported in the terminal.
This patch ignores the error and does not show the Lean logo if it fails to create one.
2015-12-18 14:29:51 -05:00
Leonardo de Moura
a7d1625765
fix(library/blast/forward/forward_lemma_set): check pattern inference when setting attribute
2015-12-17 22:50:14 -08:00
Leonardo de Moura
9a6bd96d6b
chore(frontends/lean/decl_attributes): style
2015-12-17 22:50:01 -08:00
Leonardo de Moura
657b508cdf
fix(tests/lean/simplifier_light): adjust test
2015-12-17 22:42:31 -08:00
Leonardo de Moura
40b7cf3ad4
chore(frontends/lean): remove unnecessary tokens
2015-12-17 22:35:12 -08:00
Leonardo de Moura
128b557d37
refactor(frontends/lean): use attribute_manager to simplify decl_attributes
2015-12-17 22:28:53 -08:00
Leonardo de Moura
d81b2d0f29
feat(library/attribute_manager, frontends/lean/builtin_cmds): use attribute manager information when pretty print definitions
2015-12-17 21:16:31 -08:00
Leonardo de Moura
45dbf76df9
refactor(library): add attribute manager
2015-12-17 20:58:15 -08:00
Floris van Doorn
74366aa061
fix(hott): change some theorems to definitions
...
This ensures that the HoTT library compiles with the option --to_axiom
2015-12-17 12:46:16 -08:00
Floris van Doorn
c852f7bc71
feat(hott): use the induction tactic for trunc at some places
2015-12-17 12:46:16 -08:00
Floris van Doorn
da5f10ce63
feat(hott): minor fixes. allow the usage of numerals for trunc_index
2015-12-17 12:46:16 -08:00
Leonardo de Moura
61ecf018e9
feat(frontends/lean,library/tactic): add easy tactic parsing support for at ...
and with ...
2015-12-17 12:18:32 -08:00
Leonardo de Moura
c824a0e050
chore(library,hott): enforce naming conventions
2015-12-17 11:36:58 -08:00
Leonardo de Moura
13419d1561
chore(hott/library): cleanup
2015-12-17 11:31:07 -08:00
Leonardo de Moura
2502039a5c
fix(frontends/lean/parser): tactic notation that may take numerical parameters
2015-12-17 11:27:31 -08:00
Leonardo de Moura
70f71a18c8
doc(library/type_context): explain why we need tmp_local_generator
2015-12-15 18:58:07 -08:00
Leonardo de Moura
73b28c91a6
fix(library/type_context): local constant management bug
2015-12-15 18:49:26 -08:00
Leonardo de Moura
1387cdfa0f
feat(library/type_context): add eta-expansion to type_context
2015-12-15 17:24:53 -08:00
Leonardo de Moura
10273bf176
feat(library/blast/forward/pattern): improve pattern inference heuristic
2015-12-15 12:55:43 -08:00
Leonardo de Moura
c07345d47f
fix(util/file_lock): handle permission denied at lock creation
...
see #925
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2015-12-15 09:48:20 -08:00
Leonardo de Moura
42eda36225
chore(library/algebra/ordered_ring): use 'note'
2015-12-15 09:33:57 -08:00
Rob Lewis
ec5990f4de
fix(library/norm_num): fix incorrect assert
2015-12-14 14:09:54 -05:00
Leonardo de Moura
521657914c
chore(util/file_lock): style
2015-12-14 10:20:33 -08:00
Sebastian Ullrich
2185ee7e95
feat(library/tactic): make let tactic transparent, introduce new opaque note tactic
...
The new let tactic is semantically equivalent to let terms, while `note`
preserves its old opaque behavior.
2015-12-14 10:14:02 -08:00
Leonardo de Moura
31c9a76777
feat(util/file_lock): add support for Windows
...
Remark: the lock are not being erased on Windows.
I tried different solutions based on MoveFileEx and DeleteFile.
None of them worked. The one based on MoveFileEx
MoveFileEx(m_fname.c_str(), NULL, MOVEFILE_DELAY_UNTIL_REBOOT);
seems to delete the file after REBOOT.
But, this is not very useful.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
2015-12-14 10:07:26 -08:00
Leonardo de Moura
95fba3dba6
chore(library/constants): sort constant decls
2015-12-13 21:39:45 -08:00
Leonardo de Moura
193a9d8cde
refactor(library/norm_num): avoid manual constant name initialization
...
@rlewis1988 We group all Lean constants used in the C++ code at
src/library/constants.txt
Jeremy and Floris check this file before renaming constants in the
library. So, they can quickly decide whether C++ code will be affected
or not.
We also have a python script for initializing the C++ name objects.
To use the script:
- go to src/library
- execute
python ../../script/gen_constants_cpp.py constants.txt
It will create the boring initialization and finalization code, and
declare a procedure get_<id>_name() for each constant in the file constants.txt.
I also move the norm_num1.lean to the set of unit tests that are
executed whenever we push a commit to the main branch.
I found an assertion violation at line 606. Could you take a look?
Best,
Leo
2015-12-13 21:38:59 -08:00
Leonardo de Moura
e3a35ba4fd
feat(frontends/lean): add 'with_attributes' tactical
...
closes #494
2015-12-13 18:27:44 -08:00
Leonardo de Moura
727a4f5a3a
feat(library/tactic/intros_tactic): use '_' to say that some names are irrelevant in the intro tactic
...
See #695
2015-12-13 16:47:31 -08:00
Leonardo de Moura
d4e49a8434
feat(library/tactic/intros_tactic): intro without argument should introduce a single variable
...
see #695
2015-12-13 16:28:39 -08:00
Leonardo de Moura
894875dc5c
feat(library/tactic/congruence_tactic): closes #855
2015-12-13 15:03:25 -08:00
Leonardo de Moura
999f23cbc0
feat(kernel/expr_eq_fn): take names into account when CompareBinderInfo is true
...
This is the correct fix for the id declaration pretty printing
discrepancy reported by Daniel.
TODO: decide whether we need another eq-mode where names are ignored.
For example, in blast, it makes sense to increase sharing by ignoring
binder names.
2015-12-13 14:47:11 -08:00
Leonardo de Moura
49eae56db4
test(library/theories/group_theory): test auto-include in the group theory library
2015-12-13 13:40:54 -08:00
Leonardo de Moura
ce622e9179
feat(frontends/lean): add auto-include for structures and inductive decls
2015-12-13 13:39:34 -08:00
Leonardo de Moura
20de22a8ad
feat(frontends/lean): automatically include anonymous instance implicit variables/parameters (whenever their parameters have been included)
2015-12-13 13:20:54 -08:00
Leonardo de Moura
b6bac2e542
chore(tests/lean/run): adjust tests
2015-12-13 12:23:44 -08:00
Leonardo de Moura
9a4a12899a
fix(frontends/lean/pp): make sure pp doesn't group [] arguments
2015-12-13 12:23:22 -08:00
Leonardo de Moura
a9b567296c
feat(frontends/lean/parser): add anonymous inst implicit name generator
2015-12-13 11:46:48 -08:00
Leonardo de Moura
ef546c5c5b
refactor(library): use anonymous instance implicit arguments
2015-12-13 11:46:48 -08:00