coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Jean-Marc Notin <notin AT lix.polytechnique.fr>
- To: Hermann Lehner <hermann.lehner AT inf.ethz.ch>
- Cc: Coq Club <coq-club AT pauillac.inria.fr>
- Subject: Re: [Coq-Club] Fixpoint definitions over Z
- Date: Mon, 26 May 2008 15:12:17 +0200
- List-archive: <http://pauillac.inria.fr/pipermail/coq-club/>
- Organization: CNRS - LIX
Hello,
There is different ways in Coq for defining such a function. One is to
use the 'Function' definition:
Require Import ZArith.
Require Import Recdef.
Open Scope Z_scope.
Function SumFilterZRec (z: Z) (filter: Z -> bool) (hi: Z) {wf Zgt z} :
Z :=
match Zcompare z hi with
| Lt => if filter z then
z + SumFilterZRec (Zsucc z) filter hi
else
SumFilterZRec (Zsucc z) filter hi
| _ => 0
end.
Definition SumFilterZ (filter : Z -> bool) (lo : Z) (hi : Z) : Z :=
match Zcompare lo hi with
| Lt => SumFilterZRec lo filter hi
| _ => 0
end.
--
Jean-Marc Notin
LIX - Équipe TypiCal
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
- [Coq-Club] Fixpoint definitions over Z, Hermann Lehner
- Re: [Coq-Club] Fixpoint definitions over Z, Jean-Marc Notin
- Re: [Coq-Club] Fixpoint definitions over Z, Hermann Lehner
- Re: [Coq-Club] Fixpoint definitions over Z, Adam Chlipala
- Re: [Coq-Club] Fixpoint definitions over Z, Jean-Marc Notin
Archive powered by MhonArc 2.6.16.