summaryrefslogtreecommitdiff
path: root/Binaries
Commit message (Collapse)AuthorAge
* Bumped version to 1.9.4.20428Gravatar leino2015-04-29
|
* HashCode for Set/MultiSet/Map should be independent of the order of theGravatar qunyanm2015-04-17
| | | | elements.
* Change GetHashCode for Set, MultiSet and MapGravatar qunyanm2015-04-16
|
* Fix issue #68. Change GetHashCode implementation for Sequence.Gravatar qunyanm2015-04-14
|
* MergeGravatar qunyanm2015-04-06
|\
* | Add z3.exe and z3-license.txt to dafny binary and extension distribution.Gravatar qunyanm2015-04-06
| |
| * Fixed some bugs in override axioms (but still missing support for classes ↵Gravatar leino2015-04-05
|/ | | | | | | with type parameters). Resolve ClassDecl.TraitsTyp as types. Moved declaration of TraitParent and NoTraitAtAll to prelude.
* Add LongLength methods to Set/Map in DafnyRuntime.csGravatar chrishaw2015-03-17
|
* Beefed up collection axioms (in particular, for maps) to improve the chance ↵Gravatar Rustan Leino2015-03-10
| | | | of proving the existence check of let-such-that and assign-such-that
* Removed some old and unused functionsGravatar leino2015-03-09
|
* Fix issue #60Gravatar qunyanm2015-03-06
|
* Add imap display/update expressionsGravatar chrishaw2015-02-27
|
* Add imap type, which is like map but may have have infinite sizeGravatar chrishaw2015-02-26
|
* Optimization to nativeType: have EuclideanModulus_sbyte and ↵Gravatar chrishaw2014-12-11
| | | | EuclideanModulus_short call EuclideanModulus_int, not the BigInteger EuclideanModulus. (Same for EuclideanDivision.)
* Optimization to nativeType: have EuclideanDivision_sbyte and ↵Gravatar chrishaw2014-12-09
| | | | EuclideanDivision_short call EuclideanDivision_int, not the BigInteger EuclideanDivision. (Same for EuclideanModulus.)
* Add nativeType attribute for newtype declarations. Change Compiler.cs to ↵Gravatar chrishaw2014-12-09
| | | | | | | | | | | | | | | | | | | | | | | | use native C# representation of small integer newtypes. Examples: newtype{:nativeType "byte"} byte = i:int | 0 <= i < 0x100 newtype{:nativeType "sbyte"} sbyte = i:int | -0x80 <= i < 0x80 newtype{:nativeType "ushort"} uint16 = i:int | 0 <= i < 0x10000 newtype{:nativeType "short"} int16 = i:int | -0x8000 <= i < 0x8000 newtype{:nativeType "uint"} uint32 = i:int | 0 <= i < 0x100000000 newtype{:nativeType "int"} int32 = i:int | -0x80000000 <= i < 0x80000000 newtype{:nativeType "ulong"} uint64 = i:int | 0 <= i < 0x10000000000000000 newtype{:nativeType "long"} int64 = i:int | -0x8000000000000000 <= i < 0x8000000000000000 newtype month = i:int | 0 <= i < 12 // use smallest compatible C# type if possible (byte in this case), otherwise BigInteger newtype{:nativeType} month = i:int | 0 <= i < 12 // same as {:nativeType true} newtype{:nativeType true} month = i:int | 0 <= i < 12 // use smallest compatible C# type if possible (byte in this case), otherwise error newtype{:nativeType false} month = i:int | 0 <= i < 12 // use BigInteger newtype{:nativeType "uint"} month = i:int | 0 <= i < 12 // use C# uint type if possible, otherwise error newtype{:nativeType} even20 = i:int | 0 <= i < 20 && (i % 2 == 0) // nativeTypes need not be contiguous newtype{:nativeType} even10 = i:even20 | i < 10 // nativeTypes can inherit constraints from other nativeTypes
* Various DafnyPrelude.bpl cleanup.Gravatar leino2014-11-01
| | | | Removed unused cases from axioms where Seq#Take and Seq#Drop take out-of-range arguments
* Improved power of axioms Seq#FromArrayGravatar leino2014-10-31
|
* Add an option to use reduce Z3's knowledge of non-linear arithmetic.Gravatar Bryan Parno2014-10-24
| | | | Results in more manual work, but it also produces more predictable behavior.
* Changed version to 1.9.1.11021Gravatar leino2014-10-21
| | | | Also include ModelViewer.dll in binary distribution
* Comparisons and well-founded order of charGravatar leino2014-10-21
|
* Added types "char" and "string" (the latter being a synonym for "seq<char>").Gravatar leino2014-10-20
| | | | | | Added string literals with various escapes--a subset of those supported in C# and similar languages, including the C# verbatim strings. Previously, the "print" statement and custom attributes could support expression-or-string arguments; there is no longer a need to special-case these, so these arguments are now just expressions. Fixed lack of operator resolution in custom attributes.
* Fixed bugs in previous check-inGravatar leino2014-08-25
| | | | Made up for inadequacy in reasoning machinery (supplying Int(Real(i)) == i axiom)
* Added .Trunc field to real-based typesGravatar leino2014-08-21
| | | | Changed semantics of real-to-int conversions--these now have a precondition that the number converted is already an integer
* Compile lambda functions and apply expressions, and change let expr compilationGravatar Dan Rosén2014-08-12
|
* MergeGravatar Dan Rosén2014-08-11
|\
* | Add higher-order-functions and some other goodiesGravatar Dan Rosén2014-08-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * The reads clause now needs to be self framing. * The requires clause now needs to be framed by the reads clause. * There are one-shot lambdas, with a single arrow, but they will probably be removed. * There is a {:heapQuantifier} attribute to quantifiers, but they will probably be removed. * Add smart handling of type variables * Add < and > for datatype & type parameter
| * Implemented missing routine in runtime system (real-to-int conversion)Gravatar leino2014-07-21
|/
* MergeGravatar Dan Rosén2014-07-07
|\
* | New logical encoding of types with Is and IsAllocGravatar Dan Rosén2014-07-07
| |
| * Added some axioms about seq-to-multiset conversionsGravatar Rustan Leino2014-06-24
| |
| * Specialized Lit function for int and real (leaving all other cases ↵Gravatar Rustan Leino2014-06-10
| | | | | | | | | | | | polymorphic). This reduces the number of int<->U conversions that Boogie adds, which avoids a looping problem in Z3. (Regrettably, the test suite seems to have become rather unstable. Sometimes everything verifies and sometimes there is some looping forever.)
| * Improved axiom that knows that array-to-sequence converstion depends only on ↵Gravatar Rustan Leino2014-06-04
|/ | | | those heap location that hold the array elements
* Compile realsGravatar Rustan Leino2014-04-13
|
* Improvements in sequence axioms to make checking more automatic.Gravatar Rustan Leino2014-04-02
| | | | Minor changes in a test file.
* Added axiom to transfer array element-type information onto the elements ↵Gravatar Rustan Leino2014-03-20
| | | | | | themselves. Other serendipitous axiom improvements.
* Fixed problem with propagating allocation information about array elements.Gravatar Rustan Leino2014-03-20
| | | | Improved situation with (reducing bogosity of) type checking of "object".
* Removed an apparently unneeded trigger.Gravatar Rustan Leino2014-03-06
|
* Fix soundness bug (Issue #9 on dafny.codeplex.com) in function axiom for ↵Gravatar Rustan Leino2014-02-13
| | | | | | literals. Added axiom to better handle DtAlloc/GenericAlloc correspondence (which improves handling of computations).
* Preliminary support for reals in Dafny specs. No compiler suport yet.Gravatar Bryan Parno2014-02-10
|
* MergeGravatar Rustan Leino2014-01-08
|\
* | Allow left-hand sides of a let expression to be patterns (like in the case ↵Gravatar Rustan Leino2014-01-08
| | | | | | | | | | | | | | of a match expression). Moved the implementation of CondApplyBox, BoxIfNecessary, CondApplyUnbox, and ModeledAsBoxType from class ExpressionTranslator to class Translator. Fixed compilation of match expressions, to allow them anywhere.
| * Compile assign-such-that for all integers, not just ones where a bound is foundGravatar Rustan Leino2014-01-06
|/
* Print and translate "match" expressions in general positions, not just at ↵Gravatar Rustan Leino2014-01-03
| | | | the top-level of function bodies. (Note, resolver also needs to allow this before the user can take advantage of this.)
* Embellished axioms about GenericAlloc and DtAlloc.Gravatar Rustan Leino2014-01-03
|
* Fix some things due to changes in Boogie (execution engine API, ↵Gravatar wuestholz2013-12-09
| | | | 'UnivBackPred2.smt2' no longer needed).
* Fixed build failures due to changes in Boogie.Gravatar wuestholz2013-11-23
|
* Fixed typo in build scriptGravatar Rustan Leino2013-08-06
|
* MergeGravatar Rustan Leino2013-08-06
|\
| * Updated 'PrepareDafnyZip.bat'.Gravatar wuestholz2013-08-05
| |