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_Cinto inner product spacesanalysis/complex/basicinto the construction ofrpowand 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_normandanalysis/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_Cvia real-finite-dimensionality. This PR splits both files.analysis/complex/basicis 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_Cis 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_lmtoequiv_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).