coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Aaron Bohannon <bohannon AT cis.upenn.edu>
- To: Coq Club <coq-club AT inria.fr>
- Subject: [Coq-Club] MapsTo in FMapInterface
- Date: Wed, 9 Feb 2011 15:06:09 -0500
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:date:x-google-sender-auth:message-id:subject :from:to:content-type; b=n8agb4NyvN7Co2c8gj5RPHg2/IXR2bJ+7JObQ2Oc40lfTIsgwfUlWX07USQo9HtQ6j AV7KoO/FnU2AqkMmHshLeonJ0w5NDfh4jh0q6QQfwiQicuXdDjryqLL6+N8umJ6gWeBp u7VrGgrGzGjTvvdMoK7l+7cdZtsxQZVfiTFKQ=
Hi,
I am using FMaps in my development and want to write a tactic that
matches hypotheses of the form (MyMap.MapsTo k v m). The problem is
that, when I destruct a proposition of the form (MyMap.In k m), I end
up with a hypothesis of the form (MyMap.Raw.PX.MapsTo _ _ _). A
tactic that matches on (MyMap.MapsTo _ _ _) will not match hypotheses
of the form (MyMap.Raw.PX.MapsTo _ _ _). Of course, I can write a
tactic that refers directly to MyMap.Raw.PX.MapsTo, but I feel like
this is violating the intended abstraction of the FMap interface.
Unforunately, the tactic "fold MyMap.MapsTo" does not help because
MyMap.MapsTo seems to be defined as an eta-expansion of
MyMap.Raw.PX.MapsTo. Any other ideas? Or do I have to write a tactic
that breaks the abstraction?
- Aaron
- [Coq-Club] MapsTo in FMapInterface, Aaron Bohannon
- Re: [Coq-Club] MapsTo in FMapInterface,
Adam Chlipala
- Re: [Coq-Club] MapsTo in FMapInterface,
Aaron Bohannon
- Re: [Coq-Club] MapsTo in FMapInterface,
Aaron Bohannon
- Re: [Coq-Club] MapsTo in FMapInterface, Stéphane Lescuyer
- Re: [Coq-Club] MapsTo in FMapInterface,
Aaron Bohannon
- Re: [Coq-Club] MapsTo in FMapInterface,
Aaron Bohannon
- Re: [Coq-Club] MapsTo in FMapInterface,
Adam Chlipala
Archive powered by MhonArc 2.6.16.