Zulip Chat Archive

Stream: mathlib4

Topic: refactor `ContinuousLinearMap.isOpenMap`


Yi.Yuan (Sep 18 2025 at 11:08):

I encountered difficulties in proving [Rudin, Functional Analysis (Theorem 4.3 (b) ⇒ (c))][rudin1991].
I need the following version of the Open Mapping Theorem

protected theorem isOpenMap' (h :  (n : ) (x : _), x  interior (closure (f '' ball 0 n))) :
    IsOpenMap f := by

However, the Open Mapping Theorem in mathlib is stated as:

protected theorem isOpenMap (surj : Surjective f) : IsOpenMap f := by

My version can be easily proved by replacing

theorem exists_approx_preimage_norm_le (surj : Surjective f) :
     C  0,  y,  x, dist (f x) y  1 / 2 * y  x  C * y := by
  have A :  n : , closure (f '' ball 0 n) = Set.univ := by
    refine Subset.antisymm (subset_univ _) fun y _ => ?_
    rcases surj y with x, hx
    rcases exists_nat_gt x with n, hn
    refine mem_iUnion.2 n, subset_closure ?_⟩
    refine (mem_image _ _ _).2 x, ⟨?_, hx⟩⟩
    rwa [mem_ball, dist_eq_norm, sub_zero]
  have :  (n : ) (x : _), x  interior (closure (f '' ball 0 n)) :=
    nonempty_interior_of_iUnion_of_closed (fun n => isClosed_closure) A

with

theorem exists_approx_preimage_norm_le'
    (h :  (n : ) (x : _), x  interior (closure (f '' ball 0 n))) :
     C  0,  y,  x, dist (f x) y  1 / 2 * y  x  C * y := by

and keeping everything else unchanged.

Yi.Yuan (Sep 18 2025 at 11:16):

4.13 Theorem Let $U$ and $V$ be the open unit balls in the Banach spaces $X$ and $Y$, respectively. If $T \in \mathscr{B}(X, Y)$ and $\delta>0$, then the implications

$$
(a) \rightarrow(b) \rightarrow(c) \rightarrow(d)
$$

hold among the following statements:
(a) $\left\|T^* y^*\right\| \geq \delta\left\|y^*\right\|$ for every $y^* \in Y^*$.
(b) $\overline{T(U)} \supset \delta V$.
(c) $T(U) \supset \delta V$.
(d) $T(X)=Y$.

Moreover, if (d) holds, then (a) holds for some $\delta>0$.
proof. Assume (a), and pick $y_0 \notin \overline{T(U)}$. Since $\overline{T(U)}$ is convex, closed, and balanced, Theorem 3.7 shows that there is a $y^*$ such that $\left|\left\langle y, y^*\right\rangle\right| \leq 1$ for every $y \in \overline{T(U)}$, but $\left|\left\langle y_0, y^*\right\rangle\right|>1$. If $x \in U$, it follows that

$$
\left|\left\langle x, T^* y^*\right\rangle\right|=\left|\left\langle T x, y^*\right\rangle\right| \leq 1
$$


Thus $\left\|T^* y^*\right\| \leq 1$, and now (a) gives

$$
\delta<\delta\left|\left\langle y_0, y^*\right\rangle\right| \leq \delta\left\|y_0\right\|\left\|y^*\right\| \leq\left\|y_0\right\|\left\|T^* y^*\right\| \leq\left\|y_0\right\| .
$$


It follows that $y \in \overline{T(U)}$ if $\|y\| \leq \delta$. Thus $(a) \rightarrow(b)$.
Next, assume (b). Take $\delta=1$, without loss of generality. Then $\overline{T(U)} \supset \bar{V}$. To every $y \in Y$ and every $\varepsilon>0$ corresponds therefore an $x \in X$ with $\|x\| \leq\|y\|$ and $\|y-T x\|<\varepsilon$.

Pick $y_1 \in V$. Pick $\varepsilon_n>0$ so that

$$
\sum_{n=1}^{\infty} \varepsilon_n<1-\left\|y_1\right\| .
$$


Assume $n \geq 1$ and $y_n$ is picked. There exists $x_n$ such that $\left\|x_n\right\| \leq\left\|y_n\right\|$ and $\left\|y_n-T x_n\right\|<\varepsilon_n$. Put

$$
y_{n+1}=y_n-T x_n .
$$


By induction, this process defines two sequences $\left\{x_n\right\}$ and $\left\{y_n\right\}$. Note that

$$
\left\|x_{n+1}\right\| \leq\left\|y_{n+1}\right\|=\left\|y_n-T x_n\right\|<\varepsilon_n .
$$

Hence

$$
\sum_{n=1}^{\infty}\left\|x_n\right\| \leq\left\|x_1\right\|+\sum_{n=1}^{\infty} \varepsilon_n \leq\left\|y_1\right\|+\sum_{n=1}^{\infty} \varepsilon_n<1 .
$$


It follows that $x=\sum x_n$ is in $U$ (see Exercise 23) and that

$$
T x=\lim _{N \rightarrow \infty} \sum_{n=1}^N T x_n=\lim _{N \rightarrow \infty} \sum_{n=1}^N\left(y_n-y_{n+1}\right)=y_1
$$

since $y_{N+1} \rightarrow 0$ as $N \rightarrow \infty$. Thus $y_1=T x \in T(U)$, which proves (c).
Note that the preceding argument is just a specialized version of part of the proof of the open mapping theorem 2.11.

That (c) implies (d) is obvious.
Assume (d). By the open mapping theorem, there is a $\delta>0$ such that $T(U) \supset \delta V$. Hence

$$
\begin{aligned}
\left\|T^* y^*\right\| & =\sup \left\{\left|\left\langle x, T^* y^*\right\rangle\right|: x \in U\right\} \\
& =\sup \left\{\left|\left\langle T x, y^*\right\rangle\right|: x \in U\right\} \\
& \geq \sup \left\{\left|\left\langle y, y^*\right\rangle\right|: y \in \delta V\right\}=\delta\left\|y^*\right\|
\end{aligned}
$$

for every $y^* \in Y^*$. This is (a).

David Loeffler (Sep 18 2025 at 11:39):

Please don't cut-and-paste big chunks of LaTeX source formatted as code, it's not very readable. I am no expert here, but the existing version of isOpenMap seems like the "standard" one and we definitely shouldn't remove it; but it certainly does no harm to add additional related statements alongside it.

Is it easy to deduce the existing statement isOpenMap from your isOpenMap'?

Yi.Yuan (Sep 18 2025 at 12:38):

David Loeffler said:

Please don't cut-and-paste big chunks of LaTeX source formatted as code, it's not very readable. I am no expert here, but the existing version of isOpenMap seems like the "standard" one and we definitely shouldn't remove it; but it certainly does no harm to add additional related statements alongside it.

Is it easy to deduce the existing statement isOpenMap from your isOpenMap'?

Thanks for the reminder. It seems like there is no LaTeX editor on Zulip.

Yi.Yuan (Sep 18 2025 at 12:39):

This issue is addressed in PR #29776. Could anyone please review it?

Kenny Lau (Sep 18 2025 at 12:44):

that looks good, but i haven't really interacted with analysis

Violeta Hernández (Sep 19 2025 at 02:05):

There is LaTeX support in Zulip: LaTeX\LaTeX

Violeta Hernández (Sep 19 2025 at 02:05):

you have to use double $$ signs though


Last updated: Dec 20 2025 at 21:32 UTC