Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit d5d94ec

Browse files
committed
feat(logic/equiv/basic): coe_prod_comm (#17510)
As a result of this new lemma, `prod_comm_image` and `prod_comm_preimage` are now redundant.
1 parent 53b216b commit d5d94ec

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

src/logic/embedding/basic.lean

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,10 @@ example (s : finset (fin 3)) (f : equiv.perm (fin 3)) : s.map f.to_embedding = s
5757
example (s : finset (fin 3)) (f : equiv.perm (fin 3)) : s.map f = s.map f.to_embedding := by simp
5858
```
5959
-/
60-
@[simps] protected def equiv.to_embedding : α ↪ β := ⟨f, f.injective⟩
60+
protected def equiv.to_embedding : α ↪ β := ⟨f, f.injective⟩
61+
62+
@[simp] lemma equiv.coe_to_embedding : ⇑f.to_embedding = f := rfl
63+
lemma equiv.to_embedding_apply (a : α) : f.to_embedding a = f a := rfl
6164

6265
instance equiv.coe_embedding : has_coe (α ≃ β) (α ↪ β) := ⟨equiv.to_embedding⟩
6366

src/logic/equiv/basic.lean

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,8 +89,11 @@ rfl
8989

9090
/-- Type product is commutative up to an equivalence: `α × β ≃ β × α`. This is `prod.swap` as an
9191
equivalence.-/
92-
@[simps apply] def prod_comm (α β : Type*) : α × β ≃ β × α :=
93-
⟨prod.swap, prod.swap, λ ⟨a, b⟩, rfl, λ ⟨a, b⟩, rfl⟩
92+
def prod_comm (α β : Type*) : α × β ≃ β × α :=
93+
⟨prod.swap, prod.swap, prod.swap_swap, prod.swap_swap⟩
94+
95+
@[simp] lemma coe_prod_comm (α β : Type*) : ⇑(prod_comm α β) = prod.swap := rfl
96+
@[simp] lemma prod_comm_apply {α β : Type*} (x : α × β) : prod_comm α β x = x.swap := rfl
9497

9598
@[simp] lemma prod_comm_symm (α β) : (prod_comm α β).symm = prod_comm β α := rfl
9699

src/logic/equiv/set.lean

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -100,13 +100,6 @@ preimage_eq_iff_eq_image e.bijective
100100
lemma eq_preimage_iff_image_eq {α β} (e : α ≃ β) (s t) : s = e ⁻¹' t ↔ e '' s = t :=
101101
eq_preimage_iff_image_eq e.bijective
102102

103-
@[simp] lemma prod_comm_preimage {α β} {s : set α} {t : set β} :
104-
equiv.prod_comm α β ⁻¹' t ×ˢ s = s ×ˢ t :=
105-
preimage_swap_prod _ _
106-
107-
lemma prod_comm_image {α β} {s : set α} {t : set β} : equiv.prod_comm α β '' s ×ˢ t = t ×ˢ s :=
108-
image_swap_prod _ _
109-
110103
@[simp]
111104
lemma prod_assoc_preimage {α β γ} {s : set α} {t : set β} {u : set γ} :
112105
equiv.prod_assoc α β γ ⁻¹' s ×ˢ (t ×ˢ u) = (s ×ˢ t) ×ˢ u :=

0 commit comments

Comments
 (0)