Zulip Chat Archive

Stream: new members

Topic: How to handle name clashes


Gabin Kolly (Jan 23 2024 at 15:04):

I was trying to add new lemmas about equivalences between model structures ModelTheory/Basic.lean, but I realized (because some proofs in other files broke down) that a lot of these lemmas were very similar to results about equivalences between types, and had the same name. For example, I want to prove FirstOrder.Language.Equiv.symm_symm, but then Equiv.symm_symm (the one about equivalences between types) is hidden if you open FirstOrder.Language. What would be the correct way of handling this situation?
I have the impression that the problem here is that the path for Equiv.symm_symm is really just that, and so I cannot give more information to Lean so that it understands that this is really the one I want.

Gabin Kolly (Jan 23 2024 at 15:48):

Okay, I think that the solution is simply writing _root_.Equiv.nice_lemma when I need to use the lemma about equivalences between types :sweat_smile:


Last updated: May 02 2025 at 03:31 UTC