coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Vadim Zaliva <vzaliva AT cmu.edu>
- To: coq-club AT inria.fr
- Subject: Re: [Coq-Club] setoid rewriting
- Date: Mon, 8 Aug 2016 11:52:32 -0700
- Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=vadim.zaliva AT west.cmu.edu; spf=Pass smtp.mailfrom=vadim.zaliva AT west.cmu.edu; spf=None smtp.helo=postmaster AT mail-wm0-f50.google.com
- Ironport-phdr: 9a23:XhBLMx1b0BegDsgismDT+DRfVm0co7zxezQtwd8ZsegULfad9pjvdHbS+e9qxAeQG96Ks7QV06GP6viocFdDyK7JiGoFfp1IWk1NouQttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXsq3G/pQQfBg/4fVIsYL+kQsiD14/ujrj60qaQSj0AvCC6b7J2IUf+hiTqne5Sv7FfLL0swADCuHpCdrce72ppIVWOg0S0vZ/or9YwuxhX7vkm7otLVbjwV6U+V71RSjo8YE4v48i+ixDPTA7H1HIYU3sf2k5WEQHB7Q/zdpz0r233uvcri3rSBtH/Ub1hAWfq1KxsUhK90Co=
Pierre and Matthieu, thanks for the responses!
I did not expect the results to be equivalent but I wanted to illustrate that all Foo's instances in the goal are rewritable, at least in this order.
Perhaps the better example is:
setoid_rewrite Foo at 1.
vs.
setoid_rewrite Foo.
Shouldn't the following 2 be equivalent?
Vadim
--
CMU ECE PhD candidate
Mobile: +1(510)220-1060
On Sun, Aug 7, 2016 at 7:50 AM, Pierre Courtieu <pierre.courtieu AT gmail.com> wrote:
AFAIK there is no reason these two tactics should be equivalent. setoid_rewrite only detects possible simultaneous rewriting but does not perform repeat in any way. The repeat can take advantage of the intermediate results to find new redexes.
For instance in the word rewriting context:
Foo: aabb -> ab
On aaabbb
Repeat Foo at 1 gives ab (due to intermediate result aabb).
Whereas setoid only gives aabb.
That said, it does not explain why setoid_rewrite takes so long. But as a general rule you can not expect thes tactics to behave identically unless particular cases.
P.On dim. 7 août 2016 at 11:27 Matthieu Sozeau <mattam AT mattam.org> wrote:It might be due to the compatibility constraints of the first being weaker than the second (which attempts a parallel rewrite of all the instances of Foo in the goal), leading to a divergence in the proof search.
-- MatthieuOn Mon, 1 Aug 2016 at 22:16, Vadim Zaliva <vzaliva AT cmu.edu> wrote:Could anybody please explain to me why the following works:repeat setoid_rewrite Foo at 1.while this one does not (takes forever):setoid_rewrite Foo.I am using 8.5pl2.--
- [Coq-Club] setoid rewriting, Vadim Zaliva, 08/01/2016
- Re: [Coq-Club] setoid rewriting, Matthieu Sozeau, 08/07/2016
- [Coq-Club] setoid rewriting, Pierre Courtieu, 08/07/2016
- Re: [Coq-Club] setoid rewriting, Vadim Zaliva, 08/08/2016
- Re: [Coq-Club] setoid rewriting, Matthieu Sozeau, 08/09/2016
- Re: [Coq-Club] setoid rewriting, Vadim Zaliva, 08/08/2016
- [Coq-Club] setoid rewriting, Pierre Courtieu, 08/07/2016
- Re: [Coq-Club] setoid rewriting, Matthieu Sozeau, 08/07/2016
Archive powered by MHonArc 2.6.18.