Brian Huffman
6a99eb99dd
Modify symbolic Value type to match the interpreter's Value type
...
This is a step towards unifying the two modules.
2014-07-22 15:32:26 -07:00
Brian Huffman
907e4b55a9
Fix typo in comment
2014-07-22 15:16:00 -07:00
Brian Huffman
c5a14e388d
Rewrite symbolic simulator in pure functional style
...
We now take advantage of new features of SBV 3.1, including
the "sBranch" mechanism for evaluating reachability of conditional
branches.
2014-07-22 13:44:17 -07:00
Brian Huffman
c2859d579b
Update output for regression test 226
2014-07-21 16:18:47 -07:00
Brian Huffman
c8b3b8c134
Update output for regression test 086.
...
(cf. revision 0ee396d434
)
2014-07-21 16:13:56 -07:00
Brian Huffman
ffebd5c330
Update output for regression test number 290
2014-07-21 16:02:38 -07:00
Brian Huffman
ec0395e9d0
Update regression test number 289, which now runs successfully.
...
This test works as of revision db08bfafa9
.
Versions of SBV prior to 3.1 did not distinguish the boolean type from
the size-1 bitvector type; this example uses literals like "0b0" and
"0b1", so it triggered the SBV bug, which manifested as a type error from
the external SMT solver.
2014-07-21 16:01:43 -07:00
Brian Huffman
db08bfafa9
Merge changes from SBV release version 3.1
2014-07-21 15:23:34 -07:00
Brian Huffman
11d5c884b7
prove/sat commands avoid generating SBV bitvector variables of zero width
2014-07-21 14:59:33 -07:00
Brian Huffman
010d930638
Optimize symbolic "extract" to produce literal value if result has width 0
2014-07-21 11:28:40 -07:00
Brian Huffman
733c7932c5
Fix compiler warnings
2014-07-21 10:38:21 -07:00
Brian Huffman
ca14cff93a
Pretty-print hex literals in parser AST using lowercase "abcdef".
...
This makes the Cryptol.Parser.AST pretty printer consistent with the
one for values in Cryptol.Eval.Value.
2014-07-15 16:43:20 -07:00
Brian Huffman
4f28f4bfed
Update regression tests for :prove and :sat output
...
As of ee8685e4f2
, :sat and :prove now
parse and then pretty print the given predicate with appropriate
parenthesization.
2014-07-15 16:26:37 -07:00
Brian Huffman
ee8685e4f2
REPL handles printing of :sat/prove results; parenthesize predicates as appropriate
2014-07-15 15:35:37 -07:00
Brian Huffman
f0ab651157
:sat and :prove print counterexamples in the user-configured number base
2014-07-15 14:32:14 -07:00
Thomas M. DuBuisson
97488c0cc1
Add an FNV-1a example (non-cryptographic hash).
2014-05-29 22:13:28 -07:00
Brian Huffman
62cdfd453f
Cryptol REPL prints a hint if the user omits "=" on a ":set" command.
...
Old behavior:
Cryptol> :set base 16
base 16 = 10
New behavior:
Cryptol> :set base 16
Unknown user option: `base 16`
Did you mean: `:set base = 16`?
2014-05-27 15:46:42 -07:00
Brian Huffman
0ee396d434
Pretty printer for Cryptol.Parser.AST.Expr parenthesizes infix operators.
...
(The printer for Cryptol.TypeCheck.AST.Expr already does this.)
Previously:
Cryptol> :t (+)
+ : {a} (Arith a) => a -> a -> a
Now:
Cryptol> :t (+)
(+) : {a} (Arith a) => a -> a -> a
2014-05-15 14:41:22 -07:00
Brian Huffman
682c130b11
Add "fin" constraint on index size for (@), (!) and (!!), like (@@) has.
...
Prior to this changeset, any of the following three expressions
[1,2,3] @ (zero : [inf])
[1,2,3] ! (zero : [inf])
[1,2,3] !! [zero : [inf]]
would produce the following error:
Location: [Eval] fromVWord
Message: not a word
[False, False, False, False, False, ...]
2014-05-13 13:38:55 -07:00
Brian Huffman
b304eb2ef0
New module Cryptol.TypeCheck.TypeOf has functions to compute Type of an Expr
2014-05-09 16:27:07 -07:00
Brian Huffman
a6077dd59a
Add more destructor functions for TypeCheck.AST.Type
2014-05-09 16:26:31 -07:00
Trevor Elliott
28043c395c
Only print Loading
when the module is going to be loaded
...
Looks like we were re-loading everything afterall! This closes #10
2014-05-06 14:32:17 -07:00
Trevor Elliott
25f17d0202
Some bug fixes related to fenced code in markdown
...
``` as cryptol wasn't supported, and fenced code blocks that weren't
understood were having their internals processed as markdown
2014-05-06 14:29:51 -07:00
Trevor Elliott
f1f1991ce0
No plans to allow indented code fence blocks
...
Support for the indented blocks isn't consistent, so it seems easier to just
avoid trying to support this feature.
2014-05-06 10:59:29 -07:00
Sergei Trofimovich
b713a8ac9f
Setup.hs: unbreak 'runhaskell Setup configure' building mode
...
Otherwise default hook won't generate src/GitRev.hs file.
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2014-05-02 15:28:11 +03:00
Dylan McNamee
87042d4604
fixing lone bad reference in doc, added syntax chapter, replaced Salsa spec
...
PDF with pointer to it, fixed table in section 1.2.2
2014-04-30 11:37:15 -07:00
Adam C. Foltzer
3919ebeab7
fix expected output for tests after fix in #10
2014-04-29 11:43:19 -07:00
Dylan McNamee
3188a212b5
Fixing a type constraint solver bug submitted by Jaak Randmets,
...
verified by Iavor. Regression tests passed.
2014-04-28 10:17:11 -07:00
Adam C. Foltzer
8ad498ca57
disable email notifications for travis
2014-04-27 21:54:18 -07:00
Adam C. Foltzer
924de3f152
install the Cabal library before starting the Travis build
2014-04-27 21:33:38 -07:00
Adam C. Foltzer
2b6642457b
add travis.yml
2014-04-27 21:27:57 -07:00
Adam C. Foltzer
2cf71679c6
Merge branch 'master' into devel
2014-04-27 20:51:56 -07:00
Dylan McNamee
3e0ce32888
document that four failing tests is expected (for now)
2014-04-27 11:29:52 -07:00
Dylan McNamee
3e22966c1c
spelling in README
2014-04-27 11:26:37 -07:00
Trevor Elliott
1dac36494a
Only print Loading
when the module is going to be loaded
...
Looks like we were re-loading everything afterall! This closes #10
2014-04-25 11:15:08 -07:00
Joseph Kiniry
e54f73717d
Merge branch 'master' of github.com:GaloisInc/cryptol
2014-04-25 09:58:10 +02:00
Joseph Kiniry
200df77725
Missing space.
2014-04-25 09:57:44 +02:00
Joseph Kiniry
728f9cc00e
Two new todos.
2014-04-25 09:57:38 +02:00
Dylan McNamee
62acc96f97
Fixing makefile to be compatible with David Lazar's speck fix
2014-04-24 18:07:47 -07:00
Dylan McNamee
203b2c8596
Merge branch 'master' of https://github.com/davidlazar/cryptol into davidlazar-master
2014-04-24 18:01:46 -07:00
Adam C. Foltzer
2f229e0c9c
reinsert book authors into acknowledgments
2014-04-24 14:47:55 -07:00
David Lazar
fe67268088
Simplify type constraints.
2014-04-24 17:33:43 -04:00
David Lazar
bda2596f30
Minor whitespace tweak.
2014-04-24 17:28:25 -04:00
David Lazar
e1c2ddec55
Fix formatting in speck.cry.
2014-04-24 17:27:34 -04:00
David Lazar
46c93d1a33
spec.cry should be speck.cry.
2014-04-24 17:19:20 -04:00
Dylan McNamee
bd578915ea
incorporating "thanks" in main README
2014-04-24 10:59:06 -07:00
Adam C. Foltzer
8c97b35bb2
updated docs
2014-04-24 10:55:52 -07:00
Dylan McNamee
8fbb351063
final tweaks to the book
2014-04-24 10:53:00 -07:00
Adam C. Foltzer
934e0aae53
change system description parameter in makefile
2014-04-23 19:36:41 -07:00
Adam C. Foltzer
4a2da5686a
temporarily check docs into the repo
...
Getting the right TeX Live and pandoc environments on the build slaves
is turning out to be a Big Headache. For now, build docs locally and
keep the repo copies up to date.
2014-04-23 19:16:57 -07:00