Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] rewrite clears hypotheses in evar's context

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] rewrite clears hypotheses in evar's context


Chronological Thread 
  • From: Samuel Gruetter <gruetter AT mit.edu>
  • To: coq-club <coq-club AT inria.fr>
  • Subject: Re: [Coq-Club] rewrite clears hypotheses in evar's context
  • Date: Tue, 11 Oct 2022 20:21:22 +0000
  • Accept-language: en-US
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=gruetter AT mit.edu; spf=Pass smtp.mailfrom=gruetter AT mit.edu; spf=None smtp.helo=postmaster AT outgoing-exchange-7.mit.edu
  • Ironport-data: A9a23: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 VUIqat4rI1XhKI//QuMu5KYJf3BgA7S8g==
  • Ironport-hdrordr: A9a23:Bimo4Kyg5/P2BcVjXOczKrPwIb1zdoMgy1knxilNoH1uA6+lfq +V9sjzuSWYtN9VYh4dcLO7WJVoI0mxyXcd2+B4VotKHjOJhILCFuBfBP7Zslrd8lrFh4pgPN 9bAs1D4YrLfDpHsfo=
  • Ironport-phdr: A9a23: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 EB5Zm6seg==
  • Ironport-sdr: 6345d05d_UTikTtGKKxuj83+0aYQXNT43QuQnIz2DJzumv6a+ZTc2sXS oUzS2mySn8UHApk+6FQjoiM3b46UCBcHvOaQW7w==

I think the intended behavior of rewrite is to always create a proof term that uses eq_rect.

If you don't want an eq_rect, I would, given a definitional rewrite that replaces lhs with rhs in H, just do "change lhs with rhs in H".

Or if you insist that you want to use the rewrite tactic to determine the new type T of H, you could do the rewrite in a throw-away subgoal and pass T back to the original goal using an evar, and then do "change T in H" in the original goal. Demo based on your gist:

https://gist.github.com/samuelgruetter/d50c05b46e58412948eca13e6f67cc63




From: coq-club-request AT inria.fr <coq-club-request AT inria.fr> on behalf of Abhishek Anand <aa755 AT pm.me>
Sent: Monday, October 10, 2022 11:03 PM
To: coq-club
Subject: [Coq-Club] rewrite clears hypotheses in evar's context
 
rewriting in a hypothesis that existed when an evar was created results in the deletion of that hypothesis from the context of that evar. 

More surprisingly, this happens even when the rewrite uses a definitional equation, as shown in the lemma test2 in the page linked above.
In this case, it seems trivial for Coq to not clear the hypothesis.

Even when the rewrite is with a non-definitional equality, can Coq not insert eq_rect​ at appropriate places to avoid dropping the hypothesis from the context of the evar?


--
Abhishek Anand



Archive powered by MHonArc 2.6.19+.

Top of Page