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

Commit 9b60e0f

Browse files
committed
feat(data/set/basic): add pairwise_on_pair (#8789)
Add `set.pairwise_on_insert`, `set.pairwise_on_pair`, and `set.pairwise_on_pair_of_symmetric`.
1 parent 44b8138 commit 9b60e0f

File tree

1 file changed

+17
-5
lines changed

1 file changed

+17
-5
lines changed

src/data/set/basic.lean

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1960,14 +1960,26 @@ lemma pairwise_on_eq_iff_exists_eq [nonempty β] (s : set α) (f : α → β) :
19601960
(pairwise_on s (λ x y, f x = f y)) ↔ ∃ z, ∀ x ∈ s, f x = z :=
19611961
pairwise_on_iff_exists_forall s f
19621962

1963+
lemma pairwise_on_insert {α} {s : set α} {a : α} {r : α → α → Prop} :
1964+
(insert a s).pairwise_on r ↔ s.pairwise_on r ∧ ∀ b ∈ s, a ≠ b → r a b ∧ r b a :=
1965+
begin
1966+
simp only [pairwise_on, ball_insert_iff, forall_and_distrib, true_and, forall_false_left,
1967+
eq_self_iff_true, not_true, ne.def, @eq_comm _ a],
1968+
exact ⟨λ H, ⟨H.2.2, H.2.1, H.1⟩, λ H, ⟨H.2.2, H.2.1, H.1⟩⟩
1969+
end
1970+
19631971
lemma pairwise_on_insert_of_symmetric {α} {s : set α} {a : α} {r : α → α → Prop}
19641972
(hr : symmetric r) :
19651973
(insert a s).pairwise_on r ↔ s.pairwise_on r ∧ ∀ b ∈ s, a ≠ b → r a b :=
1966-
begin
1967-
simp only [pairwise_on, ball_insert_iff, true_and, forall_false_left, eq_self_iff_true, not_true,
1968-
ne.def, forall_and_distrib, hr.iff a, @eq_comm _ a],
1969-
exact ⟨λ h, ⟨h.2.2, h.2.1⟩, λ h, ⟨h.2, h.2, h.1⟩⟩
1970-
end
1974+
by simp only [pairwise_on_insert, hr.iff a, and_self]
1975+
1976+
lemma pairwise_on_pair {r : α → α → Prop} {x y : α} :
1977+
pairwise_on {x, y} r ↔ (x ≠ y → r x y ∧ r y x) :=
1978+
by simp [pairwise_on_insert]
1979+
1980+
lemma pairwise_on_pair_of_symmetric {r : α → α → Prop} {x y : α} (hr : symmetric r) :
1981+
pairwise_on {x, y} r ↔ (x ≠ y → r x y) :=
1982+
by simp [pairwise_on_insert_of_symmetric hr]
19711983

19721984
end set
19731985

0 commit comments

Comments
 (0)