Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Beginner's question: rewrite

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Beginner's question: rewrite


chronological Thread 
  • From: Alexandre Pilkiewicz <alexandre.pilkiewicz AT polytechnique.org>
  • To: Ben Moseley <ben_moseley AT mac.com>
  • Cc: Eric Tanter <etanter AT dcc.uchile.cl>, coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Beginner's question: rewrite
  • Date: Sun, 26 Dec 2010 14:29:31 +0100
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type :content-transfer-encoding; b=T62lB7eoIBkcDk6vVPHy2/59k9cQuIW0Tj+i+gugadLXHjaszEJxDVxlI4BuBD2yBd RyuSKayik4CHNTRYGKcq2EXw2vd0j60//HilPMhIqmWoZ71HR7qjWHLz0SNmSShj02WD TvDW4AxgTavSfqYUziNEqeadObzW7ZPU849To=

2010/12/26 Ben Moseley 
<ben_moseley AT mac.com>:
> The problem seems to be that the two different usages of '+' in your 
> 'assert' are getting mapped to different 'plus' implementations.
>
> This can be seen if you use:
>
> Unset Printing Notations.
>
>  assert (H: S (S n') + m = S (S (n' + m))).
>
> ...
>
>   eq (plus (S (S n')) m) (S (S (Peano.plus n' m)))

I would like to add that in general, when you have this kind of weird
error message:
'Found no subterm matching "foo" in the current goal.' when you do see
a "foo" in your goal
or "Cannot unify foo with foo", the first thing to do is : Set Printing All.
In your example the problem was due to a notation. It is often the
case that an implicit argument is not the same on both side (an alias
could have been chosen). Set Printing All removes all use of notation,
implicit argument, etc, and allows you to quickly spot the real
problem.

Hope this helps for the future

Alexandre




Archive powered by MhonArc 2.6.16.

Top of Page