I have a proof goal in the form of: g A B (λx. f A B (h x)) C D = foo
and a theorem like: f ?A ?B (h ?x) ?y = bar ?x ?y
that I want to use as an unfold rule. But the rule does not do anything because I need to eta-expand the lambda in my proof goal. How would I do that? (alternatively, getting rid of the ?y
in the theorem would work too)
The abs_def
attribute performs contraction of theorems of the form ?f ?x = ?g ?x
. So you can just do my_unfold_rule[abs_def]
.
Thanks, that's exactly what I needed.
Jan van Brügge has marked this topic as resolved.
Last updated: Dec 21 2024 at 12:33 UTC