Skip to content

Commit c7e5960

Browse files
committed
style(RingTheory/Bialgebra/Primitive): open IsPrimitiveElem namespace, golf proofs
1 parent 9947f24 commit c7e5960

1 file changed

Lines changed: 25 additions & 23 deletions

File tree

Mathlib/RingTheory/Bialgebra/Primitive.lean

Lines changed: 25 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -45,27 +45,25 @@ structure IsPrimitiveElem (a : A) : Prop where
4545

4646
attribute [simp] IsPrimitiveElem.counit_eq_zero IsPrimitiveElem.comul_eq_tmul_add_tmul
4747

48+
namespace IsPrimitiveElem
49+
4850
/-- In a bialgebra, `0` is a primitive element. -/
49-
lemma IsPrimitiveElem.zero : IsPrimitiveElem R (0 : A) where
50-
counit_eq_zero := map_zero _
51-
comul_eq_tmul_add_tmul := by simp
51+
lemma zero : IsPrimitiveElem R (0 : A) := by simp [isPrimitiveElem_iff]
5252

5353
/-- Primitive elements in a bialgebra are stable under addition. -/
54-
lemma IsPrimitiveElem.add (ha : IsPrimitiveElem R a) (hb : IsPrimitiveElem R b) :
55-
IsPrimitiveElem R (a + b) where
56-
counit_eq_zero := by simp [ha, hb]
57-
comul_eq_tmul_add_tmul := by simp [ha, hb, add_tmul, tmul_add]; abel
54+
lemma add (ha : IsPrimitiveElem R a) (hb : IsPrimitiveElem R b) : IsPrimitiveElem R (a + b) :=
55+
by simp [ha, hb], by simp [ha, hb, add_tmul, tmul_add]; abel⟩
5856

5957
/-- Primitive elements in a bialgebra are stable under scalar multiplication. -/
60-
lemma IsPrimitiveElem.smul (ha : IsPrimitiveElem R a) (r : R) : IsPrimitiveElem R (r • a) where
61-
counit_eq_zero := by simp [ha]
62-
comul_eq_tmul_add_tmul := by simp [ha, smul_add, smul_tmul']
58+
lemma smul (ha : IsPrimitiveElem R a) (r : R) : IsPrimitiveElem R (r • a) :=
59+
by simp [ha], by simp [ha, smul_add, smul_tmul']⟩
6360

6461
/-- A bialgebra homomorphism sends primitive elements to primitive elements. -/
65-
lemma IsPrimitiveElem.map [FunLike F A B] [BialgHomClass F R A B] (f : F)
66-
(ha : IsPrimitiveElem R a) : IsPrimitiveElem R (f a) where
67-
counit_eq_zero := by simp [ha]
68-
comul_eq_tmul_add_tmul := by rw [← CoalgHomClass.map_comp_comul_apply]; simp [ha]
62+
lemma map [FunLike F A B] [BialgHomClass F R A B] (f : F) (ha : IsPrimitiveElem R a) :
63+
IsPrimitiveElem R (f a) :=
64+
by simp [ha], by rw [← CoalgHomClass.map_comp_comul_apply]; simp [ha]⟩
65+
66+
end IsPrimitiveElem
6967

7068
variable (R A) in
7169
/-- The primitive elements form a submodule. -/
@@ -82,19 +80,23 @@ end Semiring
8280
section Ring
8381
variable [CommSemiring R] [Ring A] [Bialgebra R A] {a b : A}
8482

83+
namespace IsPrimitiveElem
84+
8585
/-- Primitive elements in a bialgebra are stable under negation. -/
86-
lemma IsPrimitiveElem.neg (ha : IsPrimitiveElem R a) : IsPrimitiveElem R (-a) where
87-
counit_eq_zero := by simpa [ha] using (map_add (counit (R := R)) (-a) a).symm
88-
comul_eq_tmul_add_tmul := by rw [map_neg, ha.comul_eq_tmul_add_tmul, neg_add, neg_tmul, tmul_neg]
86+
lemma neg (ha : IsPrimitiveElem R a) : IsPrimitiveElem R (-a) :=
87+
by simpa [ha] using (map_add (counit (R := R)) (-a) a).symm,
88+
by rw [map_neg, ha.comul_eq_tmul_add_tmul, neg_add, neg_tmul, tmul_neg]
8989

9090
/-- Primitive elements in a bialgebra are stable under subtraction. -/
91-
lemma IsPrimitiveElem.sub (ha : IsPrimitiveElem R a) (hb : IsPrimitiveElem R b) :
92-
IsPrimitiveElem R (a - b) := sub_eq_add_neg a b ▸ ha.add hb.neg
91+
lemma sub (ha : IsPrimitiveElem R a) (hb : IsPrimitiveElem R b) : IsPrimitiveElem R (a - b) :=
92+
sub_eq_add_neg a b ▸ ha.add hb.neg
9393

9494
/-- The commutator `[a, b] = a * b - b * a` of two primitive elements is primitive. -/
95-
lemma IsPrimitiveElem.commutator (ha : IsPrimitiveElem R a) (hb : IsPrimitiveElem R b) :
96-
IsPrimitiveElem R (a * b - b * a) where
97-
counit_eq_zero := by simpa [ha] using (map_add (counit (R := R)) (a * b - b * a) (b * a)).symm
98-
comul_eq_tmul_add_tmul := by simp [ha, hb, add_mul, mul_add, sub_tmul, tmul_sub]; abel
95+
lemma commutator (ha : IsPrimitiveElem R a) (hb : IsPrimitiveElem R b) :
96+
IsPrimitiveElem R (a * b - b * a) :=
97+
by simpa [ha] using (map_add (counit (R := R)) (a * b - b * a) (b * a)).symm,
98+
by simp [ha, hb, add_mul, mul_add, sub_tmul, tmul_sub]; abel⟩
99+
100+
end IsPrimitiveElem
99101

100102
end Ring

0 commit comments

Comments
 (0)