Commit 86a95cbe authored by MARCHE Claude's avatar MARCHE Claude

Coq tactic: works with Coq 8.5

also compatible with Coq 8.4
parent a36ddc02
Require Import Why3. Require Import Why3.
Ltac ae := why3 "alt-ergo" timelimit 5.
Ltac z3 := why3 "z3" timelimit 5. Inductive Why3Unhabited : Prop := .
Axiom letUsTrustWhy3 : Why3Unhabited.
Ltac ae := why3 "alt-ergo" timelimit 5 ; case letUsTrustWhy3.
Ltac z3 := why3 "z3" timelimit 5; case letUsTrustWhy3.
Require Export ZArith. Require Export ZArith.
Open Scope Z_scope. Open Scope Z_scope.
...@@ -52,9 +56,8 @@ with p : nat -> Prop := ...@@ -52,9 +56,8 @@ with p : nat -> Prop :=
| cc : p O. | cc : p O.
Goal p O. Goal p O.
(* not a first order goal (* not a first order goal *)
ae. try ae.
*)
exact cc. exact cc.
Qed. Qed.
...@@ -64,9 +67,8 @@ with bar : nat -> Prop := ...@@ -64,9 +67,8 @@ with bar : nat -> Prop :=
d : forall f:nat->nat, bar (f O). d : forall f:nat->nat, bar (f O).
Goal fooo O. Goal fooo O.
(* Don't know (* Don't know *)
ae. try ae.
*)
exact (c (d (fun x => O))). exact (c (d (fun x => O))).
Qed. Qed.
...@@ -84,9 +86,8 @@ Qed. ...@@ -84,9 +86,8 @@ Qed.
Parameter f : (nat -> nat) -> nat. Parameter f : (nat -> nat) -> nat.
Goal f (plus O) = f (plus O). Goal f (plus O) = f (plus O).
(* not a first order goal (* not a first order goal *)
ae. try ae.
*)
trivial. trivial.
Qed. Qed.
...@@ -324,14 +325,5 @@ Require Import Rfunctions. ...@@ -324,14 +325,5 @@ Require Import Rfunctions.
Require Import Rbasic_fun. Require Import Rbasic_fun.
Goal forall (x:R), (0 <= x * x)%R. Goal forall (x:R), (0 <= x * x)%R.
(* don't know ae.
ae Qed.
*)
(* timeout
z3.
*)
(* timeout
why3 "cvc3" timelimit 3.
*)
intros.
Admitted.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment