Leonardo de Moura
|
4eeb72b0ee
|
Fix performance problem in has_free_var. Add new test at src/tests/kernel/free_vars.cpp that exposes the problem.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-11 11:19:59 -07:00 |
|
Leonardo de Moura
|
6d9a342f17
|
Add regression test to expose bug fixed in previous commit.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 22:14:27 -07:00 |
|
Leonardo de Moura
|
5c6ee647a9
|
Fix bug in has_free_vars_fn. Add optimization to type_checker.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 22:05:04 -07:00 |
|
Leonardo de Moura
|
7ebaac62a8
|
Add scoped_map. Cache type checker results.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 19:27:56 -07:00 |
|
Leonardo de Moura
|
f79c0d3546
|
Add support for cygwin
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 14:21:13 -07:00 |
|
Leonardo de Moura
|
03461df55e
|
Add frontend object
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 14:21:13 -07:00 |
|
Leonardo de Moura
|
9fbe99bf58
|
Rename define_uv -> add_uvar
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 14:21:13 -07:00 |
|
Leonardo de Moura
|
c6d0afcc40
|
Rename sexpr eqp to is_eqp
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-10 14:21:13 -07:00 |
|
Leonardo de Moura
|
e5fe016a44
|
Add pretty printer for s-expressions and options
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-08 18:38:18 -07:00 |
|
Leonardo de Moura
|
33e8e4af23
|
Add initializer list constructor for hierarchical names
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-08 18:38:18 -07:00 |
|
Leonardo de Moura
|
f18149934b
|
Move sexpr to util directory
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-08 18:38:18 -07:00 |
|
Leonardo de Moura
|
b50d9df784
|
Add options
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-08 18:38:18 -07:00 |
|
Leonardo de Moura
|
ecf9506abe
|
Add object iterator for environment objects
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-08 18:38:18 -07:00 |
|
Leonardo de Moura
|
bede62e2f7
|
Fix bug in sexpr operator <<.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-07 21:53:19 -07:00 |
|
Soonho Kong
|
b970c964ff
|
Add transcendental functions to interval (still need to fill more...)
|
2013-08-07 19:32:15 -07:00 |
|
Soonho Kong
|
ea6b4ddca7
|
Add more tests to interval
|
2013-08-07 19:32:03 -07:00 |
|
Leonardo de Moura
|
2670e94398
|
Add pretty printer for Lean environment
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-07 19:10:12 -07:00 |
|
Leonardo de Moura
|
f8e3563034
|
Add scoped sets
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-07 13:54:18 -07:00 |
|
Leonardo de Moura
|
5acedcddbb
|
Remove useless is_* functions. We can use equality for that (more readable and similar performance).
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-07 08:34:50 -07:00 |
|
Soonho Kong
|
975730a3fb
|
Add test for mpfp
|
2013-08-06 20:00:37 -07:00 |
|
Leonardo de Moura
|
84f4a32c0e
|
Change name convention for creating Lean expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-06 11:27:14 -07:00 |
|
Leonardo de Moura
|
30513398bb
|
Add basic definitions and axioms
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-05 20:06:42 -07:00 |
|
Leonardo de Moura
|
8aee11e538
|
Fix test failure when using clang++ and release mode
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-05 20:06:42 -07:00 |
|
Leonardo de Moura
|
f6057e2b28
|
Add more environment tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-05 20:06:42 -07:00 |
|
Leonardo de Moura
|
0c610e0a77
|
Fix bug in type checker
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-05 20:06:42 -07:00 |
|
Leonardo de Moura
|
70de591934
|
Add definitions and facts
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 20:52:14 -07:00 |
|
Leonardo de Moura
|
5f77a2367f
|
Allow Boolean expressions (aka propositions) to be used as types.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 18:26:01 -07:00 |
|
Leonardo de Moura
|
4b5d60f2b2
|
Add get_uvar method
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 17:47:54 -07:00 |
|
Leonardo de Moura
|
c97db1f0cf
|
Add children environments
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 16:07:37 -07:00 |
|
Leonardo de Moura
|
95447deea3
|
Add normalization a = b for values (aka semantic attachments)
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 14:54:33 -07:00 |
|
Leonardo de Moura
|
f0ccb2a03e
|
Rename eqp --> is_eqp. The name is too similar to heterogeneous equality constructor eq.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 09:41:49 -07:00 |
|
Leonardo de Moura
|
3f789ce2b7
|
Add let and heterogeneous equality. Add bool_type and bool_value.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-04 09:37:52 -07:00 |
|
Leonardo de Moura
|
b979436c40
|
Add basic semantic attachments for arithmetic
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-03 19:57:06 -07:00 |
|
Leonardo de Moura
|
0a679074f0
|
Add support for semantic attachments. Remove expr_numeral
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-03 16:12:15 -07:00 |
|
Leonardo de Moura
|
cce469119f
|
Flip order of the arguments for instance and abstract. Simplify type_checker.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-03 16:12:15 -07:00 |
|
Leonardo de Moura
|
190855ad1b
|
Add (relaxed) version of instantiate that can substitute terms containing free variables
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-03 16:12:15 -07:00 |
|
Leonardo de Moura
|
2972bdfec3
|
Rename abst_type to abst_domain
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-03 16:12:12 -07:00 |
|
Leonardo de Moura
|
e1e3e6b2d6
|
Add instantiate tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-03 16:10:20 -07:00 |
|
Soonho Kong
|
fd7f0e9658
|
Update format test
|
2013-08-02 20:00:40 -07:00 |
|
Soonho Kong
|
cda969187a
|
Add one small test to expr
|
2013-08-02 10:34:46 -07:00 |
|
Leonardo de Moura
|
c13b9a792a
|
Add small example
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-01 22:07:28 -07:00 |
|
Leonardo de Moura
|
3ef9d21875
|
Fix bugs in type checker
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-01 21:40:39 -07:00 |
|
Leonardo de Moura
|
7b00561a94
|
Normalize level expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-01 21:40:39 -07:00 |
|
Leonardo de Moura
|
e220d7c525
|
Add type checker. Fix normalization with non-empty context
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-01 21:40:36 -07:00 |
|
Leonardo de Moura
|
bed5f09907
|
Rename normalize context to local_context. Create context. Fix bug in name.cpp
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-08-01 21:39:02 -07:00 |
|
Soonho Kong
|
322c2b472d
|
Add more to expr pretty-print
|
2013-08-01 18:54:06 -07:00 |
|
Soonho Kong
|
e898bb996c
|
Fix performance bug in format, add paren combinator
|
2013-08-01 18:03:51 -07:00 |
|
Soonho Kong
|
5a89bffe83
|
Add pp to expr
|
2013-08-01 15:42:06 -07:00 |
|
Soonho Kong
|
a7910e1fe7
|
Update format.cpp & format.h + Update format tests
|
2013-08-01 13:43:49 -07:00 |
|
Soonho Kong
|
092b8889e4
|
Add more tests on sexpr_funcs
|
2013-08-01 13:43:27 -07:00 |
|
Leonardo de Moura
|
4efa9a92df
|
Fix performance issue
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-29 21:33:43 -07:00 |
|
Leonardo de Moura
|
08b750c825
|
Remove Prop from kernel
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-29 19:49:34 -07:00 |
|
Leonardo de Moura
|
6452c69b96
|
Use level at kernel expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-29 19:44:26 -07:00 |
|
Leonardo de Moura
|
537e2c101c
|
Add more tests. Fix bug in universe implication test.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-29 19:05:43 -07:00 |
|
Leonardo de Moura
|
a4f456c99e
|
Universe levels
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-28 22:34:39 -07:00 |
|
Leonardo de Moura
|
13bce7bb6f
|
checkpoint
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-26 14:16:29 -07:00 |
|
Leonardo de Moura
|
ed13132c12
|
Add has_free_var, lower_free_vars
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-26 12:27:55 -07:00 |
|
Leonardo de Moura
|
bf0cca3805
|
Add multi-thread tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-25 22:33:13 -07:00 |
|
Leonardo de Moura
|
b6236130f9
|
Fix stack overflow at travis when using clang++ 3.3 in debug mode
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-25 22:05:09 -07:00 |
|
Leonardo de Moura
|
f7138b6ecf
|
Fix normalize
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-25 19:13:45 -07:00 |
|
Leonardo de Moura
|
14c899e7ca
|
Add normalize
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 19:36:54 -07:00 |
|
Leonardo de Moura
|
5889c6488f
|
Add list template.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 16:32:50 -07:00 |
|
Leonardo de Moura
|
b45a5d231c
|
Add buffer test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 15:01:19 -07:00 |
|
Leonardo de Moura
|
c2ebe42ca8
|
Move numerics and sexpr to util
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:57:51 -07:00 |
|
Leonardo de Moura
|
1f7011353b
|
Add (temporary) buffer class
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:57:51 -07:00 |
|
Leonardo de Moura
|
0fb93ad6ef
|
Expose max_sharing_fn object
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
ed3df178ac
|
Improve hash for hierarchical names.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
59592ed36b
|
Add deep copy for kernel expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
ceb6537e3a
|
Fix race condition when updating expression flags: max_shared and closed
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
9b3c47a521
|
Refactor instantiate/abstract code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
c7b12a2815
|
Add abstract/instantiate for kernel expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
ed6d6483fe
|
Rename abst_expr -> abst_body
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
9fd88e6e27
|
Add small demo
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:32 -07:00 |
|
Leonardo de Moura
|
576726bf58
|
Use operator() for creating applications
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:31 -07:00 |
|
Leonardo de Moura
|
54a02b4fc7
|
Simplify expr accessor names
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:31 -07:00 |
|
Leonardo de Moura
|
2c3fc09e3c
|
Add has_free_vars/closed function
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:31 -07:00 |
|
Leonardo de Moura
|
6a2c9ef076
|
Rename/Reorg some kernel files
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:31 -07:00 |
|
Leonardo de Moura
|
90f498994a
|
Add some overloads
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-24 14:56:31 -07:00 |
|
Soonho Kong
|
e5c39cad9c
|
Add color code in format.cpp to test how it looks on terminal
|
2013-07-23 18:42:40 -07:00 |
|
Soonho Kong
|
ab81a57d86
|
Add test cases for format
|
2013-07-23 18:42:36 -07:00 |
|
Leonardo de Moura
|
f00d8c4683
|
Fix bug in max_sharing
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-23 09:18:18 -07:00 |
|
Leonardo de Moura
|
79d00f4d78
|
Rename max_sharing files
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-23 09:01:54 -07:00 |
|
Leonardo de Moura
|
5aa25a635f
|
Add max_shared flag to expr_cell. Improve app constructor.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-23 08:59:39 -07:00 |
|
Leonardo de Moura
|
2a9d0de57b
|
Add max_shared: function for computing maximally shared expressions.
|
2013-07-22 19:31:27 -07:00 |
|
Leonardo de Moura
|
aed8a07c1b
|
Add sexpr test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-22 19:02:11 -07:00 |
|
Leonardo de Moura
|
e6a694ebcc
|
Add expr test
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-22 17:58:35 -07:00 |
|
Leonardo de Moura
|
06320c8615
|
Replace expr == with recursive function. Add goodies for traversing expressions.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-22 16:40:17 -07:00 |
|
Leonardo de Moura
|
c4cd6c4f84
|
Add tests for kernel expression
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-22 13:04:27 -07:00 |
|
Leonardo de Moura
|
a2e72dbd92
|
Rename get_kind() -> kind()
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-22 09:30:55 -07:00 |
|
Leonardo de Moura
|
03cc3739d4
|
Fix bugs in mpbq.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 20:12:04 -07:00 |
|
Leonardo de Moura
|
24cf1a7c3d
|
Add cmp (total order) for sexpr
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 17:05:32 -07:00 |
|
Leonardo de Moura
|
f6e18045f3
|
Add eqp (pointer equality) tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 15:59:10 -07:00 |
|
Leonardo de Moura
|
9e966a0e57
|
Add total order for hierarchical names
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 15:56:18 -07:00 |
|
Leonardo de Moura
|
ecb7316943
|
Fix bugs in hierarchical names module. Add unit tests.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 15:08:14 -07:00 |
|
Leonardo de Moura
|
ecc8e8f813
|
Improve consistency of unit tests names
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 14:52:20 -07:00 |
|
Leonardo de Moura
|
8af56394cc
|
Add foreach for S-expression lists
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 14:32:36 -07:00 |
|
Leonardo de Moura
|
b8315e5593
|
Fix ambiguous overloads. Improve == test for sexprs. Remove redundant code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-21 14:25:56 -07:00 |
|
Leonardo de Moura
|
80d8fdbf48
|
Fix tests exit code
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-20 18:04:05 -07:00 |
|
Leonardo de Moura
|
403e6a141b
|
Add useful goodies for S-expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-20 18:01:10 -07:00 |
|
Leonardo de Moura
|
05991c827b
|
Add S-expressions
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-20 17:22:13 -07:00 |
|
Leonardo de Moura
|
eda1a337de
|
Add more tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-20 14:23:52 -07:00 |
|
Leonardo de Moura
|
f7e59366ea
|
Add neg, div, power to interval. Fix bug in -= operator at interval. Add some unit tests for interval class
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-19 19:24:38 -07:00 |
|
Leonardo de Moura
|
63e596885c
|
Add support for (soft) interrupts
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-19 19:12:55 -07:00 |
|
Leonardo de Moura
|
c581990f67
|
Clean white-spaces
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-19 10:29:33 -07:00 |
|
Leonardo de Moura
|
7f3bd4f254
|
Add inv method to interval
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-19 10:04:25 -07:00 |
|
Leonardo de Moura
|
5063c8cfa1
|
Add interval template
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-19 10:01:53 -07:00 |
|
Leonardo de Moura
|
8353181fd1
|
Add basic mpq tests
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-18 11:10:15 -07:00 |
|
Leonardo de Moura
|
e559bf73a9
|
Add basic testing infrastructure using CTest
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2013-07-18 09:12:07 -07:00 |
|