Skip to content
Snippets Groups Projects
  1. Apr 11, 2014
  2. Apr 09, 2014
  3. Apr 08, 2014
  4. Apr 07, 2014
  5. Mar 25, 2014
  6. Mar 21, 2014
  7. Mar 20, 2014
  8. Mar 17, 2014
  9. Mar 14, 2014
  10. Mar 13, 2014
  11. Mar 11, 2014
  12. Mar 05, 2014
  13. Mar 04, 2014
  14. Mar 03, 2014
  15. Feb 28, 2014
    • Etienne Kneuss's avatar
      Implement the Leon library. Support classes and methods. · 027c0d4c
      Etienne Kneuss authored
      - Implement the Leon Library in Leon-land rather than Scala-land.
        import leon.Utils._ becomes import leon.lang._
        import leon.Annotations._ becomes import leon.annontation._
      
        For now, the library defines generic Options and Lists.
        The library is automatically imported from the ./leon script, unless
        the --library=no option is passed.
      
      - Support parsing of multiple files and modules.
      
      - Introduce new annontations:
          @ignore: remove definition from Leon
          @verified: do not consider for verification unless explicitly
              specified
      027c0d4c
    • Etienne Kneuss's avatar
      EnumeratingSolver / PortfolioSolver · aab7b7f3
      Etienne Kneuss authored
      Use a datagen-based solver to find simple counter-examples. Note that
      this solver returns Unknown most of the time, so it is best to combine
      it with a full-fledged solver.
      
      PortfolioSolver allows us to combine solvers and have them run in
      parallel. The first result (!= Unknown) is used. Solvers can be selected
      for verification using the --solvers option.
      aab7b7f3
  16. Feb 24, 2014
  17. Feb 20, 2014
  18. Feb 18, 2014
  19. Feb 17, 2014
    • Etienne Kneuss's avatar
      Introduce support for methods and multiple objects/fields · 9c7e02b5
      Etienne Kneuss authored
      Methods:
      --------
      
      Methods are now supported in ADT roots only (e.g. single case classes or
      abstract classes). The phase `MethodLifting` converts them to normal
      global functions which makes them transparent to the rest of Leon.
      
      Introducing Leon Library:
      -------------------------
      
      Common structures and functionalities can be shipped as part of the
      Library.scala file, which is a set of ADTs with methods.
      
      Imported via `import leon.Library._`
      
      New Annotations:
      ----------------
      
      - @verified means library function will not be considered for verification
        unless specifically given through --functions
      
      - @proxy allows non-pure bodies, which will be silently ignored.
        pre/post need to be in purescala.
      
      Functions without bodies (e.g. proxy methods) are now materialized with
      a choose construct automatically, replicating the post-condition. This
      allows compilation to bytecode and execution of VCs refering to proxy
      methods.
      
      Tree Modifications:
      -------------------
      - FunDef now have params, not args.
      
      - VarDecl is renamed ValDef.
      
      - Added methods in ClassDef, as well as This and MethodInvocation,
        both are converted to normal function calls by the MethodLifting
        phase.
      9c7e02b5
  20. Feb 13, 2014
  21. Feb 12, 2014
  22. Feb 10, 2014
Loading