Zulip Chat Archive

Stream: mathlib4

Topic: tactics in construction of `unitLatticeEquiv`


Kim Morrison (May 10 2024 at 06:07):

In Mathlib/NumberTheory/NumberField/Units/DirichletTheorem.lean, unitLatticeEquiv is data constructed using tactics.

(I'm currently running into problems in this definition when testing fixes to typeclass caching bugs, from lean#4119. I don't think that the "data constructed from tactics" is the real problem, but it is certainly making it scarier to identify the real problem.)

Could I ask someone, perhaps @Xavier Roblot (or perhaps @Riccardo Brasca or @Johan Commelin who reviewed could suggest someone), to try to reconstruct this data "properly"?

Xavier Roblot (May 10 2024 at 06:34):

Sure. I’ll take a look later today.

Xavier Roblot (May 10 2024 at 07:22):

I made #12795 but I am not sure how I can check if that helps fixing the problem.

Kim Morrison (May 10 2024 at 08:18):

Can we avoid the rewrite entirely? Presumably there is a definition that turns an equality into a linear equiv, that we can compose with instead?

(I think this change is going to prove orthogonal to my difficulties anyway, as I've extracted a failing typeclass search that explains the problem --- so don't take my complaining too seriously! :-)

Riccardo Brasca (May 10 2024 at 08:32):

I am available to help if there is something else to do

Xavier Roblot (May 10 2024 at 08:34):

I got rid of the rewrite thanks to your suggestion but I have to leave now. So Riccardo, you can take over if you want if more changes are needed. Thanks

Riccardo Brasca (May 10 2024 at 08:36):

The definition is now in term mode. @Kim Morrison is this good enough for you?

Kim Morrison (May 10 2024 at 08:47):

Beautiful, thanks!


Last updated: May 02 2025 at 03:31 UTC