summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Dafny: added let expressions (syntax: "var x := E0; E1")Gravatar Rustan Leino2011-11-14
| | | | | Dafny: firmed up semantics of assert/assume expressions (the condition is now good for all program control paths that pass through the expression) Dafny: various implementation clean-ups
* Dafny: implemented the wellformedness check that datatype destructors are ↵Gravatar Rustan Leino2011-11-11
| | | | | | only applied to values created by the corresponding constructor Dafny: implement ghost destructors properly
* Dafny: allow assert/assume expressions in more placesGravatar Rustan Leino2011-11-09
|
* Dafny: added assert/assume expressionsGravatar Rustan Leino2011-11-09
|
* Dafny: moved definition of class.array into prelude, anticipating writing ↵Gravatar Rustan Leino2011-11-09
| | | | axioms that use it
* Dafny: allow single-quote as a character in identifiers in the VS2010 modeGravatar Rustan Leino2011-11-09
|
* Dafny: added "multiset" keyword to syntax highlighting in emacs, vim, latex, VSXGravatar Rustan Leino2011-11-09
|
* Dafny: fixed part of a type-inference issue with datatypes and the < ↵Gravatar Rustan Leino2011-11-09
| | | | | | operator on datatypes Dafny: allow the well-formedness check of a function's specification to know that the function, on the current arguments, returns a value of the declared result type
* Dafny: fixed bug in reads checking of array-to-sequence conversionsGravatar Rustan Leino2011-11-08
|
* Dafny: Cleaned up proof of RevConcat in test caseGravatar Rustan Leino2011-11-08
|
* Dafny: added a new /inductionHeuristic optionGravatar Rustan Leino2011-11-04
|
* Dafny: in test suite (Rippling.dfy), replaced an inline lemma with a call to ↵Gravatar Rustan Leino2011-11-04
| | | | a previous lemma
* Dafny: added options to make Induction Heuristic apply to array index ↵Gravatar Rustan Leino2011-11-04
| | | | expressions
* Added some Dafny and Boogie test cases, including Turing's factorial ↵Gravatar Rustan Leino2011-11-03
| | | | program, Hoare's classic FIND, and some induction tests for negative integers
* Dafny induction:Gravatar Rustan Leino2011-10-29
| | | | | | | * implemented induction tactic for result-less, non-mutating ghost methods * refine heuristics for determining if a variables is usefully passed to a recursive function * disallow certain "ensures" to use two-state features (needed for soundness of the parallel-statement translation, see comments in Resolver.cs and ParallelResolveErrors.dfy) * added command-line flags /induction and /inductionHeuristic (everything is on by default)
* Dafny: allow attributes on function/method declarations to refer to the (in- ↵Gravatar Rustan Leino2011-10-26
| | | | and out-)parameters
* Dafny: removed Dafny's "foreach" statements (replaced by the new "parallel" ↵Gravatar Rustan Leino2011-10-26
| | | | statement)
* Dafny: removed support for assigning to an array-range (that is, an ↵Gravatar Rustan Leino2011-10-26
| | | | assignment statement where the LHS has the form a[lo..hi])
* Dafny: Commented out SnapshotableTrees.Node.FunctionalInsert while ↵Gravatar Rustan Leino2011-10-26
| | | | performance issues with the prover and going into SMTLib2 mode are being investigated.
* BVD: fixed two basic but damning problems with the Dafny provider, and ↵Gravatar Rustan Leino2011-10-26
| | | | elided some temporary variables
* Dafny: implemented compilation of parallel statementsGravatar Rustan Leino2011-10-25
| | | | Dafny: beefed up resolution of parallel statements
* Dafny: check subrange restriction in parallel Assign statementGravatar Rustan Leino2011-10-24
| | | | | Dafny: verify parallel Call statement Dafny: fixed some bugs: handle all cases of comprehension expressions in resolver's UsesSpecFeatures, check target of method calls to be non-null (duh!)
* Dafny: continued translation of "parallel" statements (Assign and Proof ↵Gravatar Rustan Leino2011-10-24
| | | | | | | forms are mostly there, Call is missing and so is compilation) Dafny: included some test cases for the "parallel" statement Dafny: starting changing old "foreach" statements to the new "parallel" statement
* Dafny: added translation of Assign case of the parallel statementGravatar Rustan Leino2011-10-22
| | | | Dafny: discovered and fixed bug in no-overlap check of multi-dimensional array update, and changed previously incorrect MatrixFun.dfy test case (the new version is also a more efficient program)
* Dafny: changed triggers (which are never really used, anyhow) from having a ↵Gravatar Rustan Leino2011-10-21
| | | | | | | special syntactic form to being just an attribute Dafny: added "parallel" statement (so far, only parsing and resolving) Dafny: allow types on bound variables in "match" expressions/statements (there's never any incentive to list them explicitly in the program text, but it nevertheless seemed silly to forbid them)
* Dafny: fixed performance-buggy translation of exists, and also added some ↵Gravatar Rustan Leino2011-10-19
| | | | other features in SplitExpr (such as induction on existential quantifiers)
* Jennisys: changed the fixpoint solver to pick only the true clause in a ↵Gravatar Unknown2011-10-10
| | | | disjunction (if there is one that is true)
* Jennisys: implemented minimization of inferred guardsGravatar Unknown2011-10-10
|
* Jennisys: added some more simple methods in Simple.jen, implemented a couple ofGravatar Unknown2011-10-08
| | | | optimiations/exensions
* MergeGravatar Aleksandar Milicevic2011-10-07
|\
| * Dafny: added COST Verification Competition challenge programs to test suiteGravatar Rustan Leino2011-10-07
| |
* | MergeGravatar Aleksandar Milicevic2011-10-07
|\|
* | Jennisys: Implemented some support for mutator methods by keeping track of ↵Gravatar Aleksandar Milicevic2011-10-07
| | | | | | | | the pre state
| * MergeGravatar Rustan Leino2011-09-30
| |\
| * | Dafny: Updated snapshotable tree to remove IsReadonly precondition for ↵Gravatar Rustan Leino2011-09-30
| | | | | | | | | | | | CreateIterator.
| * | Dafny: fixed bug in translator when LHS of a call was an array element or a natGravatar Rustan Leino2011-09-30
| | |
| | * Dafny: Fixed the 'Answer' file for test 'dafny2'.Gravatar wuestholz2011-09-30
| | |
| * | Dafny: beautification in one test case, and fixed an Answer fileGravatar Rustan Leino2011-09-29
| | |
| * | Dafny: improved a resolution error message, and fixed a crash in the resolverGravatar Rustan Leino2011-09-29
| |/
| * Dafny: Added TreeBarrier as a test caseGravatar peter mueller peter.mueller@inf.ethz.ch2011-09-29
|/
* - updated the examples to use the new keywords (interface/datamodel)Gravatar Aleksandar Milicevic2011-09-29
| | | | | | - updated the README.txt file with instructions on how to run examples - added descriptions for command-line switches - changed genMod option to be true by default
* MergeGravatar Rustan Leino2011-09-28
|\
* | Jennisys: change of keywords, now: interface/datamodel/codeGravatar Rustan Leino2011-09-28
| | | | | | | | Jennisys: allow assignment statements in interfaces (for now, these are syntactic sugar for ensures clauses)
| * Dafny: Added some assertions.Gravatar wuestholz2011-09-23
| |
| * Dafny: Added a 'Checked' configuration and fixed some runtime assertion ↵Gravatar wuestholz2011-09-23
| | | | | | | | violations.
* | Jennisys: added /break flag as a convenient way to break into the debuggerGravatar Rustan Leino2011-09-21
| |
| * Dafny: Fixed an assertion violation in the "Checked" configuration.Gravatar wuestholz2011-09-20
| |
| * Dafny: Added support for attributes on methods and constructors.Gravatar wuestholz2011-09-16
| |
* | Dafny: added Snapshotable Trees exampleGravatar Rustan Leino2011-09-11
| |
* | Dafny: generate a compiler error upon encountering an assume statementGravatar Rustan Leino2011-09-11
| | | | | | | | Dafny: don't compile programs unless all methods have been verified (or a forced compile is requested)