Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Asking about boolean equality function

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Asking about boolean equality function


chronological Thread 
  • From: Jean-Francois Monin <jean-francois.monin AT imag.fr>
  • To: "Ly Kim Quyen (Gwenhael)" <lykimq AT gmail.com>
  • Cc: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Asking about boolean equality function
  • Date: Mon, 25 Jul 2011 15:38:43 +0800

Because A <-> B, by definition, is A -> B /\ B-> A.
f : A -> B can be applied to an argument x:A,
g: A <-> B cannot, only (fst g) can.

Hope this helps,
JF

On Mon, Jul 25, 2011 at 10:27:21AM +0800, Ly Kim Quyen (Gwenhael) wrote:
> Lemma bcoef_pos_ok : forall n (p : poly n), bcoef_pos n p = true <->
> coef_pos n p.
> 
> Lemma bcoef_pos_ok_2 : forall n (p : poly n), bcoef_pos n p = true ->
> coef_pos n p.
> [...]
> 
> My question is: Why I cannot apply the lemma *bcoef_pos_ok* in this
> definition?
> I got the error saying that: "*The expression "bcoef_pos_ok n p" of type
> "bcoef_pos n p = true <-> coef_pos n p"
> cannot be applied to the term  "h0" : "bcoef_pos n p = true"* "
> But if I am using the lemma *bcoef_pos_ok_2* it works.
> 
> Thank you very much,
> Gwen



Archive powered by MhonArc 2.6.16.

Top of Page