Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Is it possible to perform tactics in an existential's context from Ltac?

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Is it possible to perform tactics in an existential's context from Ltac?


Chronological Thread 
  • From: Armaël Guéneau <armael.gueneau AT ens-lyon.fr>
  • To: coq-club AT inria.fr, jmgrosen AT mit.edu
  • Subject: Re: [Coq-Club] Is it possible to perform tactics in an existential's context from Ltac?
  • Date: Sat, 30 Jun 2018 12:52:10 +0200
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=armael.gueneau AT ens-lyon.fr; spf=Neutral smtp.mailfrom=armael.gueneau AT ens-lyon.fr; spf=None smtp.helo=postmaster AT labbe.ens-lyon.fr
  • Ironport-phdr: 9a23:0T9xpBEe+EIeyHQWi0iqeZ1GYnF86YWxBRYc798ds5kLTJ78oM+wAkXT6L1XgUPTWs2DsrQY07SQ6/iocFdDyK7JiGoFfp1IWk1NouQttCtkPvS4D1bmJuXhdS0wEZcKflZk+3amLRodQ56mNBXdrXKo8DEdBAj0OxZrKeTpAI7SiNm82/yv95HJbAhEmDuwbaluIBmqsA7cqtQYjYx+J6gr1xDHuGFIe+NYxWNpIVKcgRPx7dqu8ZBg7ipdpesv+9ZPXqvmcas4S6dYDCk9PGAu+MLrrxjDQhCR6XYaT24bjwBHAwnB7BH9Q5fxri73vfdz1SWGIcH7S60/VDK/5KlpVRDokj8KOSMn/mHZisJ+j6xVrxyuqBN934Hab5qYNOZ8c67HYd8WWWRMU8RXWidcAo28dYwPD+8ZMOtEtYn9okEBqge6BQa0Be3v1yVPhnno0qIgzuQqDAbL0xY6H9ILqnvbstH1OL0dUeCo0qbIyyvMYOlL2Trm9ofIdAshreiIXbNwdsrRz1MjFw3fjliJr4HuIjCb1vwVvmSG4OdsSfijhmwlpg1rvzSix8UhhpPXio4L1FzI7SZ0zYUvKdGlTEN3fMSoHIZRui2ELYd6X8AvTmNutS0n0LMJo4S7czIPyJk/xx7QdfiHc4+Q7xLnTumeOix3i2x/dL2hgRay6lGsyun8V8mz1lZGtCRFksPUunAM0Rzc9NSHR+Ng8kquxTqDzQLe5+NeLUwplKfWKYQtzqAumpYNqUjDGzX5mETyjK+YbEUk/e2o5vz9bbX8o5+TLZF7igXkPqQhh8ywH+I4PRYUUGiG4umzyrvj/VbgTLVOjvw2la/ZvIrUJcQBvqK5GRNa0p4/6xajCDeryMgXnX4eLF5cZB2Hi5XpNErVLfDjDfa/hkysny1xy/DHOL3hGJTNIWLZnLfvZ7Yuo3JbnQE01JVU449eIrAHOvP6HEHr8JTaCxAjNBe5xc7iCck7248DCkyVBarMGbnXuNyM0c0you+BbZJd7D/nLvEo47jhkHI/lFYAVaSvxt4TeXe+WPp8dRbKKUHwi8sMRD9Z9jE1S/bn3QXbAGxjIk2qVqd53QkVTYevDIPNXIeo2efT0SGgW5lHYWYABEreSy60JbXBYO8FbWepGuEkiiYNDOPzRok6kBW/swm8xaA1drOJqB1djorq0Z1O38OWlRw28mUlXcCU2WuACWxyhSYMVjgwmq5l8xRw

On 29/06/2018 21:20, John M Grosen wrote:
> Unfortunately, the instantiate + refine trick doesn't help in my scenario.
> In particular, I don't know the index of the existential variable I want to
> instantiate.

What about:

Goal exists (n : nat), n = 42.
eexists.
match goal with |- ?x = _ =>
pose (foo := x);
instantiate (1 := 42) in (Value of foo)
end.

In short, it looks like you can introduce a local definition for the
evar you just matched, and then the index of that evar will necessarily
be 1 when you instantiate _in that definition_ using Value of.

And you can still do `unshelve instantiate (1 := _) in (Value of foo)`
to get a goal corresponding to instantiating the evar.



Archive powered by MHonArc 2.6.18.

Top of Page