- 06 Apr, 2013 5 commits
-
-
Andrei Paskevich authored
this commit changes the way of tracking occurrences of regions and type variables for the purposes of generalization, effect filtering, and effect checks. It restricts the previous implementation in two aspects: - a psymbol p can be monomorphic (= non-generalizable) in an effect only if p depends (= is defined via) a pvsymbol whose type contains the affected region. See bench/programs/bad-typing/recfun.mlw for an example. This restriction is required for soundness. - an argument of a psymbol cannot contain a region shared with another argument or an external pvsymbol. However, we do not require (so far) that the argument's type doesn't contain the same region twice and we allow the result type to contain known regions. This restriction is not necessary for soundness, and is introduced only to avoid some unintentional user errors and reduce the gap between the types that can be implemented in a "let" and the types that can be declared in a "val".
-
Andrei Paskevich authored
-
Jean-Christophe Filliâtre authored
-
Jean-Christophe Filliâtre authored
-
Jean-Christophe Filliâtre authored
-
- 05 Apr, 2013 1 commit
-
-
Jean-Christophe Filliâtre authored
-
- 03 Apr, 2013 1 commit
-
-
Jean-Christophe Filliâtre authored
[GTK sourceview] why.lang renamed to why3.lang
-
- 28 Mar, 2013 4 commits
-
-
MARCHE Claude authored
-
MARCHE Claude authored
-
Jean-Christophe Filliâtre authored
-
Andrei Paskevich authored
-
- 27 Mar, 2013 3 commits
-
-
Andrei Paskevich authored
Submitted by Johannes Kanig
-
Andrei Paskevich authored
This makes unnecessary all checks for ghost exceptions escaping into the non-ghost code.
-
Andrei Paskevich authored
-
- 26 Mar, 2013 4 commits
-
-
Andrei Paskevich authored
-
Andrei Paskevich authored
In this case, we break the encapsulation and prove the global exception postcondition directly from the code under "abstract".
-
MARCHE Claude authored
-
MARCHE Claude authored
-
- 25 Mar, 2013 6 commits
-
-
Jean-Christophe Filliâtre authored
-
MARCHE Claude authored
-
MARCHE Claude authored
-
MARCHE Claude authored
-
MARCHE Claude authored
-
MARCHE Claude authored
-
- 24 Mar, 2013 1 commit
-
-
Andrei Paskevich authored
-
- 23 Mar, 2013 7 commits
-
-
Andrei Paskevich authored
-
Andrei Paskevich authored
-
Jean-Christophe Filliâtre authored
-
Andrei Paskevich authored
-
Andrei Paskevich authored
also, require to list all write/read effects whenever at least one is listed fix hashtbl_impl, mergesort_queue, and unraveling_a_card_trick
-
Andrei Paskevich authored
-
Andrei Paskevich authored
they now live in examples/tests/ also, simplify bench/bench script
-
- 22 Mar, 2013 3 commits
-
-
MARCHE Claude authored
-
Jean-Christophe Filliâtre authored
a lemma function is introduced with 'let lemma f' or 'let rec lemma f' it is a ghost function it must have return type unit and read-only effects it introduces a goal (its WP), followed by an axiom forall args/reads, precondition => postcondition
-
Jean-Christophe Filliâtre authored
-
- 21 Mar, 2013 5 commits
-
-
François Bobot authored
-
MARCHE Claude authored
-
Andrei Paskevich authored
-
MARCHE Claude authored
-
MARCHE Claude authored
-