Theorem: Algebra.norm_algebraMap
File: Mathlib/RingTheory/Norm.lean

tactic: by_cases H : ∃ s : Finset L, Nonempty (Basis s K L)
state_before: R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
⊢ (norm K) ((algebraMap K L) x) = x ^ finrank K L
state_after: case pos
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ∃ s, Nonempty (Basis { x // x ∈ s } K L)
⊢ (norm K) ((algebraMap K L) x) = x ^ finrank K L

case neg
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ¬∃ s, Nonempty (Basis { x // x ∈ s } K L)
⊢ (norm K) ((algebraMap K L) x) = x ^ finrank K L

tactic: rw [norm_algebraMap_of_basis H.choose_spec.some, finrank_eq_card_basis H.choose_spec.some]
state_before: case pos
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ∃ s, Nonempty (Basis { x // x ∈ s } K L)
⊢ (norm K) ((algebraMap K L) x) = x ^ finrank K L
state_after: no goals

tactic: rw [norm_eq_one_of_not_exists_basis K H, finrank_eq_zero_of_not_exists_basis, pow_zero]
state_before: case neg
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ¬∃ s, Nonempty (Basis { x // x ∈ s } K L)
⊢ (norm K) ((algebraMap K L) x) = x ^ finrank K L
state_after: case neg
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ¬∃ s, Nonempty (Basis { x // x ∈ s } K L)
⊢ ¬∃ s, Nonempty (Basis (↑↑s) K L)

tactic: rintro ⟨s, ⟨b⟩⟩
state_before: case neg
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ¬∃ s, Nonempty (Basis { x // x ∈ s } K L)
⊢ ¬∃ s, Nonempty (Basis (↑↑s) K L)
state_after: case neg.intro.intro
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ¬∃ s, Nonempty (Basis { x // x ∈ s } K L)
s : Finset L
b : Basis (↑↑s) K L
⊢ False

tactic: exact H ⟨s, ⟨b⟩⟩
state_before: case neg.intro.intro
R : Type u_1
S : Type u_2
T : Type u_3
inst✝⁹ : CommRing R
inst✝⁸ : Ring S
inst✝⁷ : Algebra R S
K : Type u_4
L✝ : Type u_5
F : Type u_6
inst✝⁶ : Field K
inst✝⁵ : Field L✝
inst✝⁴ : Field F
inst✝³ : Algebra K L✝
inst✝² : Algebra K F
ι : Type w
L : Type u_7
inst✝¹ : Ring L
inst✝ : Algebra K L
x : K
H : ¬∃ s, Nonempty (Basis { x // x ∈ s } K L)
s : Finset L
b : Basis (↑↑s) K L
⊢ False
state_after: no goals