Commit graph

55 commits

Author SHA1 Message Date
Leonardo de Moura
d85e26898e fix(library/blast): uninitialized variables 2015-11-18 18:56:19 -08:00
Leonardo de Moura
f8a20341cb refactor(library/blast): get_hypothesis_decl return a reference 2015-11-18 18:20:02 -08:00
Daniel Selsam
413989afd6 feat(library/blast/backward): backward chaining strategy 2015-11-18 17:48:39 -08:00
Leonardo de Moura
5251752b9c chore(library/blast/state): document branch extension methods 2015-11-18 17:29:01 -08:00
Leonardo de Moura
70a1aebfe3 feat(library/blast/state): add initialized event handler for branch extensions. 2015-11-18 17:24:04 -08:00
Leonardo de Moura
223e77c4a9 refactor(library/blast): use branch_extension for recursor_action 2015-11-18 15:49:02 -08:00
Leonardo de Moura
6823a34935 feat(library/blast): branch extensions 2015-11-18 15:30:59 -08:00
Leonardo de Moura
59e676e4fa fix(library/blast/strategy): initialization
A strategy is supposed to solve the current branch.
2015-11-18 10:20:02 -08:00
Leonardo de Moura
24ed427c2f feat(library/blast): add "recursor" (aka elimination/induction) action 2015-11-15 18:00:32 -08:00
Leonardo de Moura
2549e49e72 feat(library/blast): add priority_queue for hypotheses we want to eliminate (apply recursion over) 2015-11-15 13:32:43 -08:00
Leonardo de Moura
bae37d287d fix(library/blast/state): bad style warnings 2015-11-15 12:38:07 -08:00
Leonardo de Moura
9921228dd5 feat(library/blast): add simp_rule_sets to branch 2015-11-14 13:16:00 -08:00
Leonardo de Moura
0f4e59a84f feat(library/blast): add "no_confusion" action 2015-11-13 18:19:05 -08:00
Leonardo de Moura
3849aff674 fix(library/blast/subst): bug in subst action, add hypothesis_idx_buffer_set (helper class), refine revert_action interface 2015-11-13 16:10:25 -08:00
Leonardo de Moura
ca4c078089 feat(library/blast): add "subst" action 2015-11-13 15:21:26 -08:00
Leonardo de Moura
cc4608a392 feat(library/blast): add "revert" auxiliary action 2015-11-13 14:15:48 -08:00
Leonardo de Moura
bc8c5a3f68 feat(library/blast): basic tracing for blast 2015-11-13 13:05:20 -08:00
Leonardo de Moura
2889ec5870 feat(library/blast/state): add methods for deleting hypotheses 2015-11-13 11:59:34 -08:00
Leonardo de Moura
4aa20fcff0 feat(library/blast/state): add support for "silent" proof steps. 2015-11-13 10:54:10 -08:00
Leonardo de Moura
1e436b8b3e fix(library/blast/state): incorrect assertions 2015-11-12 16:28:09 -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
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
f8f3f9402e feat(library/blast): major reorg and basic backward chaining action 2015-11-10 17:00:16 -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
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
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
Leonardo de Moura
c5117785a8 feat(library/blast): add intros action 2015-11-08 19:18:40 -08:00
Leonardo de Moura
6340b1ae5b feat(library/blast): very basic search procedure and iterative deepening 2015-11-08 17:57:37 -08:00
Leonardo de Moura
fd917effad feat(library/blast): use new type_inference module in blast 2015-11-08 14:05:00 -08:00
Leonardo de Moura
c626e2e3c6 refactor(library/blast): divide hypotheses in: assumption, active and todo
The sets active and todo are disjoint.

A metavariable declaration can only depend on assumptions.
2015-10-04 21:59:37 -07:00
Leonardo de Moura
44881552b4 refactor(library/blast): refactor hypothesis object: merge m_value and m_justification fields 2015-10-04 21:27:39 -07:00
Leonardo de Moura
7b883cae8f feat(library/blast): simplify metavar_decl 2015-10-04 18:24:21 -07:00
Leonardo de Moura
4ab14e709e feat(library/blast): finish is_def_eq/unifier for blast tactic 2015-10-03 18:19:05 -07:00
Leonardo de Moura
0a3fbda050 feat(library/blast): convert universe metavariables into uref's 2015-10-02 15:50:41 -07:00
Leonardo de Moura
442cbff578 feat(library/blast): add blast tactic is_def_eq procedure (aka unification)
We still have to implement subst_mref, assign_mref, and occurs check.
2015-10-02 15:21:28 -07:00
Leonardo de Moura
aadac02bec feat(library/blast): add infer_type for blast tactic 2015-10-02 13:11:17 -07:00
Leonardo de Moura
63c8966816 refactor(library/blast): change how we mark fixed/frozen hypothesis 2015-09-29 14:08:14 -07:00
Leonardo de Moura
bce193ed2d feat(library/blast/state): make sure the type/value of hypotheses and target is a closed term. 2015-09-29 12:42:20 -07:00
Leonardo de Moura
df39d2f368 feat(library/blast): add helper functions to access blast tactic thread local state/context 2015-09-29 10:04:11 -07:00
Leonardo de Moura
48e8b8b866 feat(library/blast): basic sanity checking for blast data-structures 2015-09-28 18:55:24 -07:00
Leonardo de Moura
465a939146 feat(library/bast): convert a blast branch back into a goal 2015-09-28 18:28:11 -07:00
Leonardo de Moura
3f751c170b feat(library/blast): finish goal -> state translation 2015-09-28 17:39:30 -07:00
Leonardo de Moura
885f5745c4 refactor(library/blast): revise how goal meta-vars are compiled into blast mrefs 2015-09-28 16:40:19 -07:00
Leonardo de Moura
f01fd744cf feat(library/blast): convert goal into blast state 2015-09-25 14:44:00 -07:00