1. 28 Sep, 2017 1 commit
  2. 20 Jan, 2014 1 commit
    • Andrei Paskevich's avatar
      "eliminate_epsilon" added in drivers · 9c20cd7c
      Andrei Paskevich authored
      Currently, the builtin theory why3.HighOrd (or just HighOrd) must
      be explicitly "use"-d. However, the type (HighOrd.func 'a 'b) can
      be written ('a -> 'b), and the type (HighOrd.pred 'a) can be written
      ('a -> bool), and the application operation (HighOrd.(@)) can be
      written as the usual juxtaposition. Thus, normally, you do not have
      to write the qualifiers. The builtin theory why3.Bool (or just Bool)
      is needed for "bool". The names "HighOrd", "func", "pred", and "(@)"
      are not yet fixed and may change.
      
      "eliminate_epsilon" tries to be smart when a lambda (or some other
      comprehension form) occurs under equality or at the top of a definition.
      We could go even further and replace (\ x . t) s with t[x <- s], without
      lifting the lambda. I'm not sure it's worth it: we rarely write redexes
      manually. They can and will appear through inlining, though.
      
      Anyone who wants to construct epsilon-terms directly using the API
      should remember that these are not Hilbert's epsilons: by writing
      an epsilon term, you postulate the existence (though not necessarily
      uniqueness) of the described object, and "eliminate_epsilon" will
      happily convert it to an axiom expressing this existence. We only
      use epsilons to write comprehensions whose soundness is guaranteed
      by a background theory, e.g. lambda-calculus.
      9c20cd7c
  3. 29 Jun, 2011 1 commit
  4. 04 Jun, 2011 1 commit
  5. 16 Mar, 2011 1 commit
  6. 23 Aug, 2010 1 commit
  7. 16 Aug, 2010 1 commit
  8. 11 Aug, 2010 1 commit
  9. 09 Jul, 2010 1 commit
  10. 26 Apr, 2010 3 commits
  11. 21 Apr, 2010 1 commit
  12. 20 Apr, 2010 1 commit
  13. 23 Mar, 2010 1 commit
  14. 22 Mar, 2010 1 commit
  15. 19 Mar, 2010 1 commit
    • Francois Bobot's avatar
      · 23ca2d16
      Francois Bobot authored
         - Util : Ajout de Creation generique de Set,Map et Hashtbl 
                  quand on a un tag et une egalitée physique
         - Hashweak : Implementation de l'idee de Jean-Christophe et Andreï
         - Register : Simplification des types comme demandé par Jean-Christophe
                      Mise à jour des fichiers qui en dépendait
         - Theory   : Ajout d'une facilité de création des th_inst
         - Encoding_decorate : Prelude pour l'encodage de Stéphane en utilisant flat_theory d'Andreï
         - Ty : Ajout de Sty, Mty et Hty
         - Main : Reduction de la taille des lignes à 80 colonnes
      
      23ca2d16
  16. 17 Mar, 2010 1 commit
  17. 16 Mar, 2010 2 commits
  18. 14 Mar, 2010 1 commit
    • Francois Bobot's avatar
      · c70a9c38
      Francois Bobot authored
       - Ajout de split_conjunction
       - Ajout du choix d'appliquer les transformations avant ou après la séparation
         en un but par contexte (certainement à modifier)
       - Ajout de quelques transformations et plugins
       - ajout des options list-printers et list-transforms
      
      
      
      c70a9c38