-- Mathlib/Analysis/Analytic/Basic.lean
lemma radius_le_of_le {𝕜' E' F' : Type*}
    [NontriviallyNormedField 𝕜'] [NormedAddCommGroup E'] [NormedSpace 𝕜' E']
    [NormedAddCommGroup F'] [NormedSpace 𝕜' F']
    {p : FormalMultilinearSeries 𝕜 E F} {q : FormalMultilinearSeries 𝕜' E' F'}
    (h : ∀ n, ‖p n‖ ≤ ‖q n‖) : q.radius ≤ p.radius

Proof state:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
n : ℕ
⊢ ‖p n‖ * ↑r ^ n ≤ ‖q n‖ * ↑r ^ n

Tactic:
gcongr

Result:
case h
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
n : ℕ
⊢ ‖p n‖ ≤ ‖q n‖

Proof state:
case h
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
n : ℕ
⊢ ‖p n‖ ≤ ‖q n‖

Tactic:
exact h n

Result:
no goals

Proof state:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
⊢ ↑r ≤ p.radius

Tactic:
rcases norm_mul_pow_le_of_lt_radius _ hr with ⟨C, -, hC⟩

Result:
case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
⊢ ↑r ≤ p.radius

Proof state:
case intro.intro
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
⊢ ↑r ≤ p.radius

Tactic:
apply le_radius_of_bound _ C (fun n ↦ ?_)

Result:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
n : ℕ
⊢ ‖p n‖ * ↑r ^ n ≤ C

Proof state:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
n : ℕ
⊢ ‖p n‖ * ↑r ^ n ≤ C

Tactic:
apply le_trans _ (hC n)

Result:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
C : ℝ
hC : ∀ (n : ℕ), ‖q n‖ * ↑r ^ n ≤ C
n : ℕ
⊢ ‖p n‖ * ↑r ^ n ≤ ‖q n‖ * ↑r ^ n

Proof state:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
⊢ q.radius ≤ p.radius

Tactic:
apply le_of_forall_nnreal_lt (fun r hr ↦ ?_)

Result:
𝕜 : Type u_1
E : Type u_2
F : Type u_3
inst✝⁹ : NontriviallyNormedField 𝕜
inst✝⁸ : NormedAddCommGroup E
inst✝⁷ : NormedSpace 𝕜 E
inst✝⁶ : NormedAddCommGroup F
inst✝⁵ : NormedSpace 𝕜 F
𝕜' : Type u_5
E' : Type u_6
F' : Type u_7
inst✝⁴ : NontriviallyNormedField 𝕜'
inst✝³ : NormedAddCommGroup E'
inst✝² : NormedSpace 𝕜' E'
inst✝¹ : NormedAddCommGroup F'
inst✝ : NormedSpace 𝕜' F'
p : FormalMultilinearSeries 𝕜 E F
q : FormalMultilinearSeries 𝕜' E' F'
h : ∀ (n : ℕ), ‖p n‖ ≤ ‖q n‖
r : ℝ≥0
hr : ↑r < q.radius
⊢ ↑r ≤ p.radius