coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Fabien Renaud <Fabien.Renaud AT inria.fr>
- To: coq-club AT inria.fr
- Subject: [Coq-Club] Program and simpl/compute
- Date: Wed, 2 Oct 2013 11:39:52 +0200
Hi,
Now simpl does nothing, and compute gives me something I don't want to read.
Is there a way to do this kind of thing with Program? I tried with Function but simpl only expands to function_terminate and I'm stuck.
By the way, when I defined a Program foo, sometimes I have "foo is defined", and sometimes "foo_func is defined". What does this mean?
Thanks!
I have questions related to Program.
I simplified my problem to the following:
I simplified my problem to the following:
Require Coq.Program.Wf.
Program Fixpoint test (l: list nat) {measure (length l)} :=
match l with
| nil => 0
| X::R => (test (tl R))
end.
Obligation 1.
induction R; simpl; omega.
Defined.
Program Fixpoint test (l: list nat) {measure (length l)} :=
match l with
| nil => 0
| X::R => (test (tl R))
end.
Obligation 1.
induction R; simpl; omega.
Defined.
Ok my function is defined but now suppose I want to prove this:
Lemma foo : forall l x, test (x::l) = 0.
Proof.
intros.
Lemma foo : forall l x, test (x::l) = 0.
Proof.
intros.
Now simpl does nothing, and compute gives me something I don't want to read.
Is there a way to do this kind of thing with Program? I tried with Function but simpl only expands to function_terminate and I'm stuck.
By the way, when I defined a Program foo, sometimes I have "foo is defined", and sometimes "foo_func is defined". What does this mean?
Thanks!
- [Coq-Club] Program and simpl/compute, Fabien Renaud, 10/02/2013
- Re: [Coq-Club] Program and simpl/compute, Matthieu Sozeau, 10/02/2013
- Re: [Coq-Club] Program and simpl/compute, Vincent Laporte, 10/02/2013
- Re: [Coq-Club] Program and simpl/compute, Fabien Renaud, 10/03/2013
- Re: [Coq-Club] Program and simpl/compute, Pierre-Marie Pédrot, 10/03/2013
- Re: [Coq-Club] Program and simpl/compute, Fabien Renaud, 10/03/2013
Archive powered by MHonArc 2.6.18.