Zulip Chat Archive

Stream: mathlib4

Topic: Universe polymorphic local instance


Anatole Dedecker (Aug 19 2023 at 11:02):

Do we have any ways to avoid this? For context this is PR #5771

Eric Wieser (Aug 19 2023 at 12:56):

I'm not sure this is worth worrying about

Chris Hughes (Aug 19 2023 at 15:34):

I thought Type* was supposed to avoid it by forcing all types to be in different universes whatever happens.

Eric Wieser (Aug 19 2023 at 16:10):

I don't think that's the question here; the problem is that when you write have := FiniteDimensional.complete 𝕜 it creates a single local bound by a single universe metavariable, which can be only unified once; wherease when you write lemma foo := FiniteDimensional.complete 𝕜 then Lean generates a family of declarations indexed by the universe variable

Chris Hughes (Aug 19 2023 at 16:12):

I see, so Type* is having the desired effect by not using the instance for both E and F. I agree that's it's not a huge problem probably. It's never come up for me.

Eric Wieser (Aug 19 2023 at 16:14):

I don't think Type* is relevant here


Last updated: Dec 20 2023 at 11:08 UTC