Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mlRewriteBy ... in ... suceeds, even if LHS doesn't appear in the hypothesis, but it appears in the goal. #449

Open
Thrithralas opened this issue Jan 27, 2025 · 0 comments

Comments

@Thrithralas
Copy link
Collaborator

Take the following example:

Example wrong
    {Σ : Signature}
    {syntax : Syntax}
    (Γ : Theory)
    (a b : Pattern) :
    theory ⊆ Γ ->
    well_formed a = true ->
    well_formed b = true ->
    Γ ⊢ a =ml b ---> b ---> a.
Proof.
  intros.
  mlIntro. mlIntro.
  mlRewriteBy "0" at 1 in "1".
Abort.

"1" has no occurences of the pattern a in it, yet mlRewriteBy "0" at 1 in "1". still suceeds by rewriting the goal to b. This is due to mlRewriteBy ... in ... reverting the hypothesis, then applying the standard mlRewriteBy tactic, in which case the goal has an occurence, even if the hypothesis did not.

This was a known bug in #441, but the solution to this does not seem obvious.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant