Zulip Chat Archive
Stream: mathlib4
Topic: data.real.basic
Heather Macbeth (Nov 29 2022 at 22:32):
I started a project of removing module
and finset
from the imports of data.real.basic
. #17758, #17760, #17761 are the first steps.
Ruben Van de Velde (Nov 29 2022 at 22:57):
Heh, I had #17761 just about ready as well. Pushed my final fixes to your branch
Ruben Van de Velde (Nov 29 2022 at 23:17):
I also pushed #17764, but now I'm off :)
Heather Macbeth (Nov 30 2022 at 00:06):
Can anyone suggest how to fix the broken test in #17760? The task is
filter.map g (map f A) ≤ filter.map g B,
the timing-out proof is by library_search!
, and I can't see how this would be affected by splitting char_zero
into two files.
(I tried adding back in both post-split files, in case it was a missing import, but the timeout remains.)
Junyan Xu (Nov 30 2022 at 04:31):
Maybe use docs#tactic.interactive.try_for
Heather Macbeth (Nov 30 2022 at 16:14):
Heather Macbeth said:
I started a project of removing
module
andfinset
from the imports ofdata.real.basic
. #17758, #17760, #17761 are the first steps.
#17768 and #17772 are also in pursuit of this goal.
Heather Macbeth (Dec 03 2022 at 19:14):
The number of lines to reach data.real.basic
dropped from 120,374 yesterday to 92,135
today! This is thanks to the elimination of finset
from its imports with #17791, #17768 and #17792 landing (as well as a series of previous PRs by myself and @Ruben Van de Velde, which reduced the finset
imports to those three paths).
The submonoid
object disappeared the day before that, thanks to @Eric Wieser in #17786. The module
import will be gone after #17804. There's more that could be done, but I'm going to stop here.
Eric Wieser (Dec 04 2022 at 13:56):
What's the motivation for pulling algebra.module.basic
out of the import path? Are there heavy imports there that perhaps suggest algebra.module.basic should be split instead?
Eric Wieser (Dec 04 2022 at 13:57):
module
doesn't strike me as a particularly complex thing to depend on, especially from the perspective that many mul
lemmas can be stated as special cases of a smul
lemma.
Yaël Dillies (Dec 04 2022 at 16:40):
In general, I'm afraid that the file atomisation taking place currently will work towards rebuilding more things from scratch rather than using general theory (because the general theory requires more imports).
Heather Macbeth (Dec 04 2022 at 17:45):
@Eric Wieser @Yaël Dillies Perhaps you don't realise that removing module
from the import path of data/real/basic
did not actually require changing any proofs. The chain of declarations leading to this file was already independent of module
, it just happened that some of these declarations lived in the same files as declarations depending on module
.
Heather Macbeth (Dec 04 2022 at 17:51):
Personally, I would also be happy to change a few proofs in order to eliminate an import (for example, one or two proofs of the kind conjectured by Eric:
Eric Wieser said:
many
mul
lemmas can be stated as special cases of asmul
lemma.
) if the duplication is not too egregious. We already are effectively doing that by constructing real
using the special-purpose docs#cau_seq rather than by using docs#uniform_space.completion. But I agree that such changes are more controversial.
Last updated: Dec 20 2023 at 11:08 UTC