Commit graph

7573 commits

Author SHA1 Message Date
Leonardo de Moura
2e32cf51f9 feat(library/blast/state): do not track dependecies to values 2015-11-13 10:38:25 -08:00
Leonardo de Moura
a7fdf5cc73 fix(library/blast/blast): avoid unnecessary calls to set_local_instances
This was producing a performance problem since the cache is invalidated/flushed
whenever we call this method.
2015-11-13 10:08:29 -08:00
Leonardo de Moura
0316412992 test(tests/lean/simplifier_norm_num): disable test that is taking a long time 2015-11-13 09:25:39 -08:00
Daniel Selsam
4ba6b4f3f1 fix(algebra/simplifier): reference norm_num namespace 2015-11-12 21:28:11 -08:00
Daniel Selsam
00a5cd519e feat(algebra/simplifier): simp rule set for units 2015-11-12 21:23:28 -08:00
Daniel Selsam
e7890fb456 feat(algebra/simplifier): useful simp rule sets 2015-11-12 21:23:28 -08:00
Daniel Selsam
1276f2f050 feat(library/blast/simplifier): struct for cache key 2015-11-12 21:21:52 -08:00
Daniel Selsam
f17320eccf fix(library/abstract_expr_manager): remove weight and lt 2015-11-12 21:21:52 -08:00
Daniel Selsam
4e85d59785 style(library/abstract_expr_manager): whitespace 2015-11-12 21:21:52 -08:00
Daniel Selsam
3703938e55 feat(library/abstract_expr_manager): compare exprs ignoring subsingletons 2015-11-12 21:21:51 -08:00
Daniel Selsam
031979cb49 feat(library/blast/simplifier): take simp_rule_sets as argument 2015-11-12 21:20:16 -08:00
Jeremy Avigad
98ddc62f6c feat(library/data/complex): add complex numbers 2015-11-12 21:05:38 -08:00
Leonardo de Moura
182085b366 fix(tests/lean/simplifier_norm_num): adjust tests to recent changes 2015-11-12 20:59:26 -08:00
Rob Lewis
44a099f6f1 feat(norm_num): performance and style fixes 2015-11-12 20:53:37 -08:00
Rob Lewis
4bf0519843 feat(norm_num): numeral normalizer works for +, -, *, / 2015-11-12 20:53:37 -08:00
Rob Lewis
616450be64 feat(library/norm_num): extend norm_num to handle subtraction 2015-11-12 20:53:37 -08:00
Leonardo de Moura
8f378db661 feat(library/blast): add normalize procedure to blast API 2015-11-12 20:42:58 -08:00
Leonardo de Moura
e1f81cfdcd feat(library/type_context): add normalizer for type_context 2015-11-12 20:31:36 -08:00
Leonardo de Moura
d9816b6e21 fix(library/type_context): avoid errors in the infer type method due to opaque constants 2015-11-12 20:04:46 -08:00
Leonardo de Moura
9aaa2d0991 feat(frontends/lean): add new command for testing new congruence lemmas
Remark: #congr_simp is the old command, and #congr is the new one.
2015-11-12 18:55:25 -08:00
Leonardo de Moura
1d1cd0fc24 feat(library/congr_lemma_manager): add congruence lemma for normalization and congruence closure 2015-11-12 18:54:12 -08:00
Leonardo de Moura
15cd92f89f fix(library/type_context): methods assign and force_assign were not processing postponed constraints 2015-11-12 18:52:31 -08:00
Leonardo de Moura
1e436b8b3e fix(library/blast/state): incorrect assertions 2015-11-12 16:28:09 -08:00
Leonardo de Moura
98f91931bf fix(library/blast/state): compilation errors 2015-11-12 16:25:59 -08:00
Leonardo de Moura
6eef52196e feat(library/blast): add gexpr "generalized expressions" 2015-11-11 16:11:51 -08:00
Leonardo de Moura
5ceac83b6a feat(frontends/lean/elaborator): restrict the number of places where coercions are considered
We do not consider coercions around meta-variables anymore.
2015-11-11 12:37:19 -08:00
Leonardo de Moura
296a4ab940 test(tests/lean/run): add coercion test issue 2015-11-11 12:12:15 -08:00
Leonardo de Moura
fa3baed701 feat(frontends/lean): add new option (elaborator.coercions) for disabling coercions 2015-11-11 11:57:44 -08:00
Leonardo de Moura
9bedbbb739 refactor(library,hott): remove coercions between algebraic structures
They are classes, and mixing coercion with type class resolution is a
recipe for disaster (aka counterintuitive behavior).
2015-11-11 11:57:44 -08:00
Leonardo de Moura
fee0cff295 feat(library/blast): add simple indexing data-structure for active hypotheses 2015-11-11 00:02:47 -08:00
Leonardo de Moura
41e14fddf8 feat(library/head_map): support local name in the head_map 2015-11-10 20:02:31 -08:00
Leonardo de Moura
bd06bf9fb1 doc(library/blast): document action_result 2015-11-10 17:49:41 -08:00
Leonardo de Moura
48eb6cb138 refactor(library/blast/state): simplify state 2015-11-10 17:27:39 -08:00
Leonardo de Moura
511337a4e9 fix(library/blast): missing file 2015-11-10 17:00:26 -08:00
Leonardo de Moura
f8f3f9402e feat(library/blast): major reorg and basic backward chaining action 2015-11-10 17:00:16 -08:00
Leonardo de Moura
5be1893d98 fix(library/blast/state): bug at instantiate_urefs_mrefs 2015-11-10 16:38:44 -08:00
Leonardo de Moura
6f01a7339a refactor(library/blast): move simple search strategy to separate module 2015-11-10 11:44:18 -08:00
Leonardo de Moura
6ac2bf9c6c refactor(library/blast): add choice_point object 2015-11-10 11:28:59 -08:00
Leonardo de Moura
b76cdb1c68 refactor(library/blast): move blast options to separate module 2015-11-10 11:03:54 -08:00
Leonardo de Moura
f1c2a88e17 feat(library/blast): add proof_expr thin layer for creating proof terms at blast 2015-11-10 10:50:58 -08:00
Leonardo de Moura
5304f62f54 feat(library/blast/hypothesis): track proof depth in hypotheses 2015-11-10 09:54:28 -08:00
Leonardo de Moura
409ad18f9b refactor(library/blast/state): cleanup state interface 2015-11-10 09:20:44 -08:00
Daniel Selsam
fc5dba4cd1 fix(library/simplifier/simp_rule_set): use lists instead of vectors 2015-11-10 08:58:46 -08:00
Leonardo de Moura
b59dd2305c refactor(library/blast): rename state::get ==> state::get_hypothesis_decl 2015-11-09 14:52:21 -08:00
Leonardo de Moura
fb7a47cf2b refactor(library/blast): avoid auxiliary local when creating hypothesis for intros 2015-11-09 14:40:39 -08:00
Leonardo de Moura
a14bb86148 feat(library/blast/state): add mk_lambda/mk_pi for abstracting hrefs 2015-11-09 14:20:19 -08:00
Leonardo de Moura
973a5c4812 feat(library/blast): improve blast type_context push/pop operations 2015-11-09 13:36:49 -08:00
Leonardo de Moura
9c364b410e refactor(library/blast): hypothesis m_depth ==> m_dep_depth 2015-11-09 13:29:07 -08:00
Leonardo de Moura
9a557958f4 refactor(library/blast): merge state and branch classes
We will keep only one active branch in blast.
All other branches are implicit.
2015-11-09 13:24:30 -08:00
Leonardo de Moura
9bdf3a0d33 refactor(library/blast): we should reuse uref/mref/href in idxs
Motivation: avoid nasty bugs when caching results
2015-11-09 12:41:52 -08:00