summaryrefslogtreecommitdiff
path: root/Test/vacid0
Commit message (Collapse)AuthorAge
* Dafny: call C# compiler directly from inside Dafny, and optionally produce a ↵Gravatar Rustan Leino2011-11-22
| | | | .cs file with the new /spillTargetCode switch
* Dafny: retired the "call" keywordGravatar Rustan Leino2011-05-26
|
* Dafny: fixed compilation bugs, added @-signs in front of identifiers to ↵Gravatar Rustan Leino2011-05-11
| | | | avoid clashes with C# keywords, added switch in runtest scripts to turn on compilation
* Dafny: Allow field selections and array-element selection as LHSs of ↵Gravatar Unknown2011-04-05
| | | | assignments where RHS is not just an expression
* Dafny: Added support for an initializing call as part of the new-allocation ↵Gravatar rustanleino2011-03-27
| | | | | | | | | | | syntax. What you previously would have written like: c := new C; call c.Init(x, y); you can now write as: c := new C.Init(x, y);
* Dafny:Gravatar rustanleino2010-09-17
| | | | | | * Added full support for multi-dimensional arrays (except for one issue that still needs to be added in compilation) * Changed syntax of array length from |a| to a.Length (for one-dimensional arrays). The syntax for either dimensions is, for example, b.Length0 and b.Length1 for 2-dimensional arrays. * Internally, this meant adding support for built-in classes and readonly fields
* Boogie:Gravatar rustanleino2010-06-22
| | | | | | | | | * Set Z3's QI_COST as the sum of "weight" and "generation", not their product. This worked better when setting the :weight of a quantifier (see below). Dafny: * Improved axiomatization of sequences; in particular, use an axiom to generate terms that say what the two pieces of a concatenation are * Two of the (previous) sequence axioms could cause a matching loop, in cases where Z3's arithmetic reasoning does not infer all rational arithmetic equalities during instantiation. The effect of this was apparently not noticed before, perhaps the concatenation/drop properties previously had to be supplied in manual assert statements. But now, with the improved sequence axiomatization (see previous bullet), this effect became remarkably noticeable. To reduce the bad effect of this apparent matching loop, Michal and I added a :weight annotation on two of the axioms, which, along with the Boogie change above, seems to give acceptable results. * Removed several assert lemmas that are no longer needed in Test programs (the test programs now contain only about a handful of such lemmas)
* Dafny: Added two additional heuristics for guessing missing loop decreases ↵Gravatar rustanleino2010-06-11
| | | | clauses (for loop guard A!=B and for loop guards with multiple conjuncts)
* Dafny:Gravatar rustanleino2010-06-05
| | | | | | * Fixed bug in translation of well-formedness conditions * Added Test/dafny0/Celebrity.dfy * Added a harness to Test/vacid0/Composite.dfy
* Dafny:Gravatar rustanleino2010-05-21
* Added arrays * Beefed up set axiomatization to know more things about set displays * Added a simple heuristic that can infer some simple decreases clauses for loops * Added Dafny solutions to a couple of VACID benchmarks