Zulip Chat Archive

Stream: general

Topic: subtype_instance


Scott Morrison (Oct 15 2018 at 04:10):

I'm having trouble using subtype_instance.

With a state of

R S : examples.CommRing,
f g : R ⟶ S,
h : is_subring {r : ↥R | ⇑f r = ⇑g r}
⊢ comm_ring ↥{r : ↥R | ⇑f r = ⇑g r}

running subtype_instance reports:

assumption tactic failed
state:
R S : examples.CommRing,
f g : R ⟶ S,
h : is_subring {r : ↥R | ⇑f r = ⇑g r}
⊢ set ?m_1

Is this expected? I appreciate I may be asking too much from subtype_instance there.

Mario Carneiro (Oct 15 2018 at 04:13):

isn't this a theorem?

Mario Carneiro (Oct 15 2018 at 04:14):

A subring of a comm_ring yields a comm_ring

Scott Morrison (Nov 08 2018 at 23:13):

Hi @Simon Hudon, did you write subtype_instance? I think I need some help with it.

Scott Morrison (Nov 08 2018 at 23:26):

Sorry, problem solved.

Simon Hudon (Nov 09 2018 at 14:20):

Oh! I just saw that! What was the issue?

Kenny Lau (May 29 2020 at 22:14):

RIP subtype_instance 2018-2020

Kenny Lau (May 29 2020 at 22:14):

where did it go?

Kenny Lau (May 29 2020 at 22:15):

(to be clear, the tactic by subtype_instance is still there, but it is never used)

Yury G. Kudryashov (May 29 2020 at 22:16):

AFAIR, we found out that the tactic creates bad definitions, and I rewrote all 2-3 instances by hand.

Yury G. Kudryashov (May 29 2020 at 22:17):

The instances provided by subtype_instance created diamonds that Lean failed to unify.

Kenny Lau (May 29 2020 at 22:17):

then is it time to kill the tactic itself?


Last updated: Dec 20 2023 at 11:08 UTC