Skip to content

Commit 5a2fd49

Browse files
feat(Algebra/Module/Submodule): Add pointwise negation lemma (#36634)
- Add `Submodule.neg_eq_iff_neg_le` proving `-S = S ↔ -S ≤ S` - Make arguments of `Submodule.neg_le_neg` and `Submodule.neg_le` implicit For completeness I added the set version: - Add `Set.inv_eq_iff_inv_subset` proving `s⁻¹ = s ↔ s⁻¹ ⊆ s` and its additive version I did not manage to give a short proof of the submodule version from the set version like it is the case for `neg_le` and `neg_le_neg`. Co-authored-by: Martin Winter <martin.winter.math@gmail.com>
1 parent be0a10d commit 5a2fd49

File tree

2 files changed

+9
-2
lines changed

2 files changed

+9
-2
lines changed

Mathlib/Algebra/Group/Pointwise/Set/Basic.lean

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -229,6 +229,10 @@ theorem inv_subset_inv : s⁻¹ ⊆ t⁻¹ ↔ s ⊆ t :=
229229
@[to_additive]
230230
theorem inv_subset : s⁻¹ ⊆ t ↔ s ⊆ t⁻¹ := by rw [← inv_subset_inv, inv_inv]
231231

232+
@[to_additive]
233+
theorem inv_eq_self_iff_inv_subset : s⁻¹ = s ↔ s⁻¹ ⊆ s :=
234+
⟨le_of_eq, fun h => antisymm h <| inv_subset.mp h⟩
235+
232236
@[to_additive (attr := simp)]
233237
theorem inv_singleton (a : α) : ({a} : Set α)⁻¹ = {a⁻¹} := by
234238
rw [← image_inv_eq_inv, image_singleton]

Mathlib/Algebra/Module/Submodule/Pointwise.lean

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,12 +96,15 @@ protected def involutivePointwiseNeg : InvolutiveNeg (Submodule R M) where
9696
scoped[Pointwise] attribute [instance] Submodule.involutivePointwiseNeg
9797

9898
@[simp]
99-
theorem neg_le_neg (S T : Submodule R M) : -S ≤ -T ↔ S ≤ T :=
99+
theorem neg_le_neg {S T : Submodule R M} : -S ≤ -T ↔ S ≤ T :=
100100
SetLike.coe_subset_coe.symm.trans Set.neg_subset_neg
101101

102-
theorem neg_le (S T : Submodule R M) : -S ≤ T ↔ S ≤ -T :=
102+
theorem neg_le {S T : Submodule R M} : -S ≤ T ↔ S ≤ -T :=
103103
SetLike.coe_subset_coe.symm.trans Set.neg_subset
104104

105+
theorem neg_eq_self_iff_neg_le {S : Submodule R M} : -S = S ↔ -S ≤ S :=
106+
⟨le_of_eq, fun h => antisymm h <| neg_le.mp h⟩
107+
105108
/-- `Submodule.pointwiseNeg` as an order isomorphism. -/
106109
def negOrderIso : Submodule R M ≃o Submodule R M where
107110
toEquiv := Equiv.neg _

0 commit comments

Comments
 (0)