Leonardo de Moura
dc6a3e30c0
refactor(library): test simp and msimp in the standard library
2015-12-30 11:22:58 -08:00
Leonardo de Moura
251b53c669
refactor(library/blast/strategies): rename 'debug_action_strategy' to 'action_strategy'
...
Now, we can also provide a "name" for tracing purposes when
instantiating action_strategy.
2015-12-29 20:45:24 -08:00
Leonardo de Moura
41a01bb606
feat(library/blast/forward/ematch): add option 'blast.ematch.max_instances'
2015-12-29 20:36:11 -08:00
Leonardo de Moura
0148bb08fd
feat(library/blast): add 'ematch_simp' strategy for blast and msimp
shortcut for it.
...
This strategy is based on ematching and congruence closure, but it uses
the [simp] lemmas instead of [forward] lemmas.
2015-12-29 20:04:31 -08:00
Leonardo de Moura
8c87f90a29
feat(frontends/lean/elaborator): avoid redudant "don't know how to synthesize placeholder" when using flycheck
2015-12-29 18:00:19 -08:00
Leonardo de Moura
86a5379a96
feat(library/blast): include strategies failure states in the tactic_exception
...
Reason: better flycheck error messages
2015-12-29 17:14:55 -08:00
Leonardo de Moura
b92416d66c
refactor(library/error_handling): move error_handling to library main dir
2015-12-29 15:31:40 -08:00
Leonardo de Moura
7462874a4a
refactor(library): cleanup nat/int proofs
2015-12-29 12:39:53 -08:00
Leonardo de Moura
a307a0691b
refactor(library/data/nat/basic): cleanup some of the nat proofs
2015-12-29 11:43:56 -08:00
Leonardo de Moura
726867a8fb
refactor(library/algebra/ring): minor cleanup
2015-12-29 11:16:18 -08:00
Leonardo de Moura
3557bd36e7
refactor(library/algebra/group): cleanup proofs using simp and add [simp] attribute
2015-12-29 10:48:47 -08:00
Leonardo de Moura
b117a10f82
refactor(library/blast/simplifier): use priority_queue to store simp/congr lemmas, use name convention used at forward/backward lemmas, normalize lemmas when blast starts, cache get_simp_lemmas
2015-12-28 17:52:57 -08:00
Leonardo de Moura
5b7dc31ad1
chore(library/blast/backward): remove unnecessary include
2015-12-28 14:26:18 -08:00
Leonardo de Moura
079a25f770
refactor(library/blast/forward): make sure backward and forward modules use same naming convention
2015-12-28 12:37:16 -08:00
Leonardo de Moura
482ffe4242
fix(library/attribute_manager): memory leak
2015-12-28 12:31:38 -08:00
Leonardo de Moura
c8b9c98eb6
refactor(library/blast/backward): use priority_queue, make sure head is normalized when building index
2015-12-28 12:26:06 -08:00
Leonardo de Moura
26d0a62052
refactor(*): make sure we use LEAN_DEFAULT_PRIORITY
...
We recently implemented the attribute manager.
2015-12-28 10:47:56 -08:00
Leonardo de Moura
f177082c3b
refactor(*): normalize metaclass names
...
@avigad and @fpvandoorn, I changed the metaclasses names. They
were not uniform:
- The plural was used in some cases (e.g., [coercions]).
- In other cases a cryptic name was used (e.g., [brs]).
Now, I tried to use the attribute name as the metaclass name whenever
possible. For example, we write
definition foo [coercion] ...
definition bla [forward] ...
and
open [coercion] nat
open [forward] nat
It is easier to remember and is uniform.
2015-12-28 10:39:15 -08:00
Leonardo de Moura
96bec8b4f9
fix(frontends/lean/builtin_cmds): allow token and metaclass to have the same name
2015-12-28 09:57:45 -08:00
Leonardo de Moura
89a5d00714
chore(library/blast): style
2015-12-28 09:08:18 -08:00
Leonardo de Moura
f679ce0da9
refactor(frontends/lean): move 'print_cmd' to separate module
2015-12-28 09:08:18 -08:00
Leonardo de Moura
cac10aa728
fix(frontends/lean/parser): allow '...' token to be used in imports
...
Before this commit, we could not write
import ...foo.b
We had to write
import .. .foo.b
or
import . ..foo.b
2015-12-28 09:08:18 -08:00
Leonardo de Moura
2a5a904416
feat(library/blast/discr_tree): remove hack for setting m_fn flag
2015-12-28 09:08:18 -08:00
Leonardo de Moura
93b912ec89
feat(library/blast): use discrimination trees instead of head_map for indexing hypotheses
2015-12-28 09:08:18 -08:00
Leonardo de Moura
1f1fafd535
feat(library/blast/discr_tree): erase operation
2015-12-28 09:08:18 -08:00
Leonardo de Moura
45c29d422f
feat(library/blast/discr_tree): set edge m_fn flag
2015-12-28 09:08:18 -08:00
Leonardo de Moura
43e1292f22
feat(library/blast): add discrimination trees
2015-12-28 09:08:17 -08:00
Ulrik Buchholtz
b09fdc8c61
feat(hott/hit): flattening lemmas for coeq and pushout
2015-12-28 09:06:13 -08:00
Ulrik Buchholtz
f3b2c7010f
feat(hott): functoriality of quotients
2015-12-28 09:06:13 -08:00
Leonardo de Moura
fe66e2aa4a
fix(tests/lean): subtype notation is not in the top-level anymore
2015-12-28 09:04:11 -08:00
Jeremy Avigad
c52ffda0e0
feat(library/algebra/intervals): add notation for intervals
2015-12-26 10:45:53 -08:00
Jeremy Avigad
395eab7c2c
feat(library/theories/topology/basic): start on topology (with Jacob Gross)
2015-12-26 10:29:58 -08:00
Jeremy Avigad
549feb5d7f
feat(library/data/set/basic): add notation and theorems for large unions and intersections
2015-12-26 08:02:04 -08:00
Jeremy Avigad
d83e5d25fc
feat(library/theories/measure_theory/extended_real): start on extended reals
2015-12-24 16:27:48 -05:00
Jeremy Avigad
84cdf3d36d
feat(library/theories/analysis/normed_space): start theory of normed spaces for analysis
2015-12-22 16:39:13 -05:00
Jeremy Avigad
08fbf127c6
feat(library/theories/analysis/metric_space,real_limit): define complete metric space, make real an instance
2015-12-22 16:39:13 -05:00
Jeremy Avigad
5b3fbf1618
feat(library/algebra/module): make a start on modules and vector spaces (with material from Nathaniel Thomas)
2015-12-22 16:39:13 -05:00
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