aboutsummaryrefslogtreecommitdiff
path: root/contrib/correctness/examples/fact.v
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/correctness/examples/fact.v')
-rw-r--r--contrib/correctness/examples/fact.v32
1 files changed, 12 insertions, 20 deletions
diff --git a/contrib/correctness/examples/fact.v b/contrib/correctness/examples/fact.v
index a6c443807c..fba440bb17 100644
--- a/contrib/correctness/examples/fact.v
+++ b/contrib/correctness/examples/fact.v
@@ -1,20 +1,14 @@
-(****************************************************************************)
-(* The Calculus of Inductive Constructions *)
-(* *)
-(* Projet Coq *)
-(* *)
-(* INRIA LRI-CNRS ENS-CNRS *)
-(* Rocquencourt Orsay Lyon *)
-(* *)
-(* Coq V6.3 *)
-(* July 1st 1999 *)
-(* *)
-(****************************************************************************)
-(* Certification of Imperative Programs *)
-(* Jean-Christophe Filliātre *)
-(****************************************************************************)
-(* fact.v *)
-(****************************************************************************)
+(***********************************************************************)
+(* v * The Coq Proof Assistant / The Coq Development Team *)
+(* <O___,, * INRIA-Rocquencourt & LRI-CNRS-Orsay *)
+(* \VV/ *************************************************************)
+(* // * This file is distributed under the terms of the *)
+(* * GNU Lesser General Public License Version 2.1 *)
+(***********************************************************************)
+
+(* Certification of Imperative Programs / Jean-Christophe Filliātre *)
+
+(* $Id$ *)
(* Proof of an imperative program computing the factorial (over type nat) *)
@@ -60,6 +54,7 @@ Correctness factorielle
end
{ y = (fact x@0) }.
Proof.
+Split.
(* decreasing of the variant *)
Omega.
(* preservation of the invariant *)
@@ -72,6 +67,3 @@ Rewrite H2 in H1.
Rewrite <- H1.
Auto with arith.
Save.
-
-
-(* $Id$ *)