Commit Graph

982 Commits

Author SHA1 Message Date
Adam C. Foltzer
50ca428018 add regression in #269 to benchmark suite 2015-08-20 15:49:06 -07:00
Adam C. Foltzer
3825ce84c8 update to use Text in Ident 2015-08-19 14:42:40 -07:00
Trevor Elliott
5cf2b9e47e Warning removal 2015-08-14 17:43:02 -07:00
Trevor Elliott
9092492d6a Improvement improvements
Integrate interval analysis into improvements to simplify fin constraints, and
rewriting of equality constraints.
2015-08-14 17:38:50 -07:00
Trevor Elliott
d71fd8a3ee Issue #148 is fixed now 2015-08-14 17:38:50 -07:00
Adam C. Foltzer
dce6f994e8 Merge branch 'master' into feature/benchmarks 2015-08-14 16:23:10 -07:00
Adam C. Foltzer
ab9ccb50d7 make NFData deriving 7.8-compatible 2015-08-14 14:42:38 -07:00
Trevor Elliott
a4c3892002 Finish a comment 2015-08-13 23:08:00 -07:00
Trevor Elliott
0d4a5bf5d3 Warning removal 2015-08-13 22:50:23 -07:00
Trevor Elliott
6784125cfa Add an intersection function for intervals 2015-08-13 22:49:54 -07:00
Iavor S. Diatchki
ad6f0fb8aa Solving fin constraints direclty. 2015-08-13 16:38:48 -07:00
Iavor S. Diatchki
b6fa8d9473 Bufixes, and pass in info argument. 2015-08-13 16:38:34 -07:00
Trevor Elliott
f54a3b13ca Remove debugging output 2015-08-13 14:44:29 -07:00
Trevor Elliott
82f8bbbe0d Conservative use of fin constraints 2015-08-13 14:43:18 -07:00
Trevor Elliott
a21a646af2 Enable OverloadedStrings to fix a build error 2015-08-13 14:42:10 -07:00
Trevor Elliott
9fa56160f8 Only add subtraction in special cases during goal rewriting
It's only OK to subtract something if you know that it's finite.  This change
adds a fairly conservative check when rewriting `a + b = r` to `a = r - b` that
`b` be finite.
2015-08-13 11:15:12 -07:00
Brian Huffman
dadc5e1781 Switch Name type to use Data.Text instead of String
This gives a few percent speedup in the interpreter.
2015-08-12 17:58:57 -07:00
Brian Huffman
4976a8db3e Use abstract interface to module Cryptol.ModuleSystem.Name
This makes it possible to change the representation of
the Name type without breaking lots of other code.
2015-08-12 17:40:06 -07:00
Iavor S. Diatchki
c9e4fab6a8 Fix up tests. 2015-08-12 15:52:18 -07:00
Adam C. Foltzer
ef2fd808ee add junit-style output for make bench target 2015-08-12 15:47:50 -07:00
Iavor S. Diatchki
1d69f4b67d Merge remote-tracking branch 'origin/wip/goal-rewriting'
Conflicts:
	src/Cryptol/TypeCheck/Solve.hs
2015-08-12 15:42:03 -07:00
Iavor S. Diatchki
44ef6930d7 Merge branch 'master' of github.com:GaloisInc/cryptol 2015-08-12 15:02:34 -07:00
Iavor S. Diatchki
31dd1125ec Definitions of semantics for partial predicates. 2015-08-12 15:02:22 -07:00
Iavor S. Diatchki
c363d92c44 Clean up simplification of individual constraints, somewhat. 2015-08-12 15:01:51 -07:00
Adam C. Foltzer
32e55cc11f add benchmark sources 2015-08-12 14:41:44 -07:00
Adam C. Foltzer
4e6dcaa026 add NFData instances for many cryptol types
add more benchmarks as well
2015-08-12 14:29:30 -07:00
Trevor Elliott
c10a92be84 First pass at goal rewriting
Attempt to normalize equality constraints involving a single unification
variable into a form where that variable is alone on one side of the equation.
Applying this normalization before attempting to simplify goals seems to clean
up some cases that the solver wasn't able to deal with.
2015-08-11 23:35:19 -07:00
Trevor Elliott
579b129c2f Only import Traversable in < ghc 7.10 2015-08-11 17:16:57 -07:00
Trevor Elliott
77c69efe8d Add the CPP pragma 2015-08-11 17:11:11 -07:00
Iavor S. Diatchki
306713a824 Checkpoint 2015-08-11 09:22:28 -07:00
Iavor S. Diatchki
d86c288928 More logging 2015-08-11 09:22:09 -07:00
Iavor S. Diatchki
09847cab01 Rewrite div equalities as multiplication 2015-08-11 09:21:38 -07:00
Adam C. Foltzer
e9c85a3925 add a hex version of Big Sequence 2015-08-10 16:53:08 -07:00
Trevor Elliott
4874ad0d6e Make fewer calls to addToComment 2015-08-10 15:04:15 -07:00
Adam C. Foltzer
d3d6ae154a add typechecking and large sequence benchmarks 2015-08-10 13:52:01 -07:00
Brian Huffman
c9a57766be Use custom applicative functor to speed up interpreter on list comprehensions 2015-08-10 12:19:09 -07:00
Adam C. Foltzer
b6d6691ab0 start benchmarking suite with a Prelude parse test 2015-08-10 11:24:36 -07:00
Brian Huffman
e5e190a138 Fix typos in comments 2015-08-10 09:22:03 -07:00
Brian Huffman
97a3983077 Optimize evaluation of list comprehensions in Cryptol interpreter
To avoid doing so many map unions, the evaluation function for list
comprehensions now produces a map containing lists of values instead
of a list of maps.
2015-08-07 17:51:25 -07:00
Brian Huffman
59df701c57 Optimize append operator (#) on bitvectors.
The interpreter no longer converts bitvectors to lists of bits before
appending them together.
2015-08-07 13:44:30 -07:00
Trevor Elliott
24cb45c4ea Merge pull request #266 from msaaltink/issue-258
Fix for issue #258 (incude of literate file fails)
2015-08-05 18:35:06 -07:00
Mark Saaltink
cf0e58042c Fix for issue-258 (incude of literate file fails) 2015-08-05 21:25:32 -04:00
Adam C. Foltzer
eac8c9a5f7 Merge pull request #263 from nbraud/master
README.md: Trivial fixes
2015-07-29 09:40:40 -07:00
Adam C. Foltzer
d2393de268 add server flag to deps install step 2015-07-28 13:30:20 -07:00
Nicolas Braud-Santoni
3f8cde4eae README.md: Trivial fixes 2015-07-26 15:56:05 +02:00
Daniel Wagner
9d1e1a4c5e instead of deleting bindings at the end of specializing a declaration group, restore them to their previous values 2015-07-23 18:12:00 -07:00
Daniel Wagner
a958ce3328 regression test for a specializer bug 2015-07-23 18:08:14 -07:00
Brian Huffman
75fe508370 More efficient implementation of symbolic indexing. Fixes #250. 2015-07-22 11:14:14 -07:00
Adam C. Foltzer
7e674d0c07 Merge pull request #262 from ntc2/master
Only require cryptol-server's build depends when it's being built. Workaround for https://github.com/haskell/cabal/issues/1725
2015-07-22 10:58:26 -07:00
Nathan Collins
7c52103fab Only require cryptol-server's build depends when it's being built.
By moving `build-depends` under the `if flag(server)` check. The diff
is a little hard to read, because I did not change the indentation of
the dependencies. Thanks @elliottt for the fix!
2015-07-22 09:22:15 -07:00