Commit 2023-01-24 03:14 468b141b
View on Github →refactor(analysis/complex/basic, data/complex/is_R_or_C): downgrade imports (#18217)
The files data/complex/is_R_or_C
and analysis/complex/basic
are imported widely across the analysis library: for example
data/complex/is_R_or_C
into inner product spacesanalysis/complex/basic
into the construction ofrpow
and thence into Lp spaces and the Bochner integral So it is useful (for the port and for compilation time) to make them as elementary as possible. Currently they both importanalysis/normed_space/operator_norm
andanalysis/normed_space/finite_dimension
, rather heavy imports, but use quite little from these files: they provide lemmas about the operator norms ofre
/im
/conj
/of_real
, and get cheaply some facts about the topology ofℂ
/is_R_or_C
via real-finite-dimensionality. This PR splits both files.analysis/complex/basic
is split in place, with substantially downgraded imports, and with a few heavier lemmas moved toanalysis/complex/operator_norm
. (And a few lemmas moved earlier todata/complex/module
.). I wrote direct proofs for the completeness and properness ofℂ
so that these facts can remain available by importing this file, even though with heavier imports these facts can be deduced from the real-finite-dimensionality ofℂ
.data/complex/is_R_or_C
is split intodata/is_R_or_C/basic
(lightweight file containing most of the former file) anddata/is_R_or_C/lemmas
(a few heavier lemmas). Also renameequiv_real_prod_add_hom_lm
toequiv_real_prod_lm
(an apparent typo), andequiv_real_prodₗ
toequiv_real_prod_clm
(also an apparent error since in our naming conventionₗ
usually refers to linearity, not continuous-linearity).