 14 Jun, 2018 1 commit


Andrei Paskevich authored
Clone "with axiom ." or "with goal ." to change the default ("with lemma ." is also accepted, just in case).

 22 Dec, 2017 1 commit


Andrei Paskevich authored

 15 Dec, 2017 1 commit


Guillaume Melquiond authored

 20 Aug, 2015 1 commit


Andrei Paskevich authored
except for modules/impset.mlw (because of Fset) and modules/mach/* (because of program cloning), the standard library now typechecks. This is still very much the work in progress. Many functions and predicates have still to be converted to "let function" and "let predicate". Here are some TODOs:  do not require the return type for "val predicate", "val lemma", etc.  do not require explicit variant for "let rec" if the code passes the termination check in Decl (see list.why)  what should become "val ghost function" and what should stay just "function" (see array.mlw, matrix.mlw, string.mlw, etc)?  some defined functions in algebra.why and relations.why had to be removed, so that they can be implemented with "let function" in int.mlw (since they are defined, they cannot be instantiated with letfunctions). This seems too restrictive. One way out would be to authorise instantiation of defined functions (with a VC).  should we keep the keyword "model"? reuse of "abstract" in types breaks syntax coloring ("abstract" requires closing "end" in programs but not in types; maybe we can drop that "end" again?).

 02 May, 2013 1 commit


Andrei Paskevich authored
also, make function.Surjective have the same namespace as function.Injective.

 22 Apr, 2012 1 commit


Guillaume Melquiond authored

 29 Jun, 2011 1 commit


Andrei Paskevich authored
 No more "and", "or", "implies", "iff", and "~". Use "/\", "\/", ">", "<>", and "not" instead.  No more "logic". Use "function" or "predicate".

 24 Jan, 2011 1 commit


François Bobot authored
One little example with explicit substitution, unfortunatly shift is too simple and so the axiomatic is inconsistent. too continue

 10 Jan, 2011 1 commit


François Bobot authored
