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
refine_struct not working as advertised? #160
Comments
@cipher1024 says: “Yeah, |
The goal is for |
Would |
I had a few minutes so I implemented the following: def my_foo {α} (x : semigroup α) (y : group α) : true := trivial
example {α : Type} : true :=
begin
refine_struct (@my_foo α { .. } { .. } ),
-- 9 goals
-- case semigroup, mul
-- α : Type
-- ⊢ α → α → α
-- case semigroup, mul_assoc
-- α : Type
-- ⊢ ∀ (a b c : α), a * b * c = a * (b * c)
-- case group, mul
-- α : Type
-- ⊢ α → α → α
-- case group, mul_assoc
-- α : Type
-- ⊢ ∀ (a b c : α), a * b * c = a * (b * c)
-- case group, one
-- α : Type
-- ⊢ α
-- case group, one_mul
-- α : Type
-- ⊢ ∀ (a : α), 1 * a = a
-- case group, mul_one
-- α : Type
-- ⊢ ∀ (a : α), a * 1 = a
-- case group, inv
-- α : Type
-- ⊢ α → α
-- case group, mul_left_inv
-- α : Type
-- ⊢ ∀ (a : α), a⁻¹ * a = 1
end That should cover it :) |
See: #162 |
Should we rename the tactic to |
Since #162 has been merged, can we close this issue? |
I would say so. Let's see if that satisfies @semorrison. |
The example in comments for
refine_struct
suggests usingrefine_struct ({ .. } : semigroup α),
but I can't get this to work.Here's my MWE:
This just says
failed
at therefine_struct
. Instead I expected it to give me two tagged goals.The text was updated successfully, but these errors were encountered: