| Commit message (Collapse) | Author | Age |
|
|
|
| |
Improvements in encoding of reads of function values.
|
|
|
|
|
|
| |
be a "heap anchor".
Currently, a heap is an anchor if it produced by a havoc (but not a direct update).
|
| |
|
| |
|
|
|
|
|
|
|
| |
with type parameters).
Resolve ClassDecl.TraitsTyp as types.
Moved declaration of TraitParent and NoTraitAtAll to prelude.
|
|
|
|
| |
of proving the existence check of let-such-that and assign-such-that
|
| |
|
| |
|
| |
|
|
|
|
| |
Removed unused cases from axioms where Seq#Take and Seq#Drop take out-of-range arguments
|
| |
|
|
|
|
| |
Results in more manual work, but it also produces more predictable behavior.
|
| |
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
Made up for inadequacy in reasoning machinery (supplying Int(Real(i)) == i axiom)
|
|
|
|
| |
Changed semantics of real-to-int conversions--these now have a precondition that the number converted is already an integer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
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.)
|
|/
|
|
| |
those heap location that hold the array elements
|
|
|
|
| |
Minor changes in a test file.
|
|
|
|
|
|
| |
themselves.
Other serendipitous axiom improvements.
|
|
|
|
| |
Improved situation with (reducing bogosity of) type checking of "object".
|
| |
|
|
|
|
|
|
| |
literals.
Added axiom to better handle DtAlloc/GenericAlloc correspondence (which improves handling of computations).
|
| |
|
|
|
|
| |
the top-level of function bodies. (Note, resolver also needs to allow this before the user can take advantage of this.)
|
| |
|
| |
|
|
|
|
|
|
| |
layers were used: F#2, F, and F#limited. Now, recursive functions take a layer argument, which is specified by Peano numbers.
Also, cleaned up and made more consistent the emission of axioms regarding functions.
|
|
|
|
| |
Removed three redundant multiset axioms.
|
|
|
|
|
|
|
| |
Generates 'computing' axioms for both all formals and just decreasing formals.
Supported are literal datatypes, booleans and numbers.
The axioms are given a weight of 10, which seems enough for Z3 to give up when
it is sane to do so.
|
| |
|
|
|
|
|
|
| |
Issue 17 on dafny.codeplex.com.
Added information that allows multiset members to be unboxed as needed (mimicking what was already done for sets).
|
|
|
|
| |
suite to fail; even with a restrictive trigger, it added a few minutes to the test suite)
|
| |
|
|
|
|
| |
the assign-such-that statement instead. For example: x :| x in S;
|
| |
|
| |
|
|
|
|
| |
prefix versions
|
|
|
|
| |
possible
|
|
|
|
| |
'x' of a set in the encoding satisfies Box(Unbox(x))==x. The soundness and performance of the axiomatization are dicey, so the axioms are made available only to method in-parameters.
|
|
|
|
| |
Restrict what conclusions comethods are allowed to have
|
|
|
|
|
|
|
| |
* Added "comethod" declarations and support for writing manual co-inductive proofs (but currently blindly assume comethod postconditions to, in positive positions, only have copredicates and codatatype equalities--other cases still need to be dealt with)
Code restructuring:
* New set of Boogie procedure stubs generated for each other
* Start of improvements around TrSplitExpr
|
| |
|
|\ |
|
| | |
|
| | |
|