File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -442,6 +442,31 @@ theorem AntisymmRel.symmGen_congr_right (h : AntisymmRel (· ≤ ·) b c) :
442442
443443end SymmGen
444444
445+ -- TODO: `to_dual` doesn't work with `AntisymmRel` or `SymmGen`.
446+ theorem Minimal.antisymmRel_of_ge [Preorder α] {P : α → Prop } (ha : Minimal P a) (hb : P b)
447+ (hge : b ≤ a) : AntisymmRel (· ≤ ·) a b :=
448+ ⟨ha.le_of_le hb hge, hge⟩
449+
450+ theorem Maximal.antisymmRel_of_le [Preorder α] {P : α → Prop } (ha : Maximal P a) (hb : P b)
451+ (hle : a ≤ b) : AntisymmRel (· ≤ ·) a b :=
452+ ⟨hle, ha.le_of_ge hb hle⟩
453+
454+ theorem Minimal.antisymmRel_of_symmGen [Preorder α] {P : α → Prop } (ha : Minimal P a)
455+ (hb : Minimal P b) (hab : Relation.SymmGen (· ≤ ·) a b) : AntisymmRel (· ≤ ·) a b :=
456+ hab.elim (fun h ↦ (hb.antisymmRel_of_ge ha.prop h).symm) (ha.antisymmRel_of_ge hb.prop)
457+
458+ theorem Maximal.antisymmRel_of_symmGen [Preorder α] {P : α → Prop } (ha : Maximal P a)
459+ (hb : Maximal P b) (hab : Relation.SymmGen (· ≤ ·) a b) : AntisymmRel (· ≤ ·) a b :=
460+ hab.elim (ha.antisymmRel_of_le hb.prop) (fun h ↦ (hb.antisymmRel_of_le ha.prop h).symm)
461+
462+ theorem Minimal.eq_of_symmGen [PartialOrder α] {P : α → Prop } (ha : Minimal P a)
463+ (hb : Minimal P b) (hab : Relation.SymmGen (· ≤ ·) a b) : a = b :=
464+ (ha.antisymmRel_of_symmGen hb hab).eq
465+
466+ theorem Maximal.eq_of_symmGen [PartialOrder α] {P : α → Prop } (ha : Maximal P a)
467+ (hb : Maximal P b) (hab : Relation.SymmGen (· ≤ ·) a b) : a = b :=
468+ (ha.antisymmRel_of_symmGen hb hab).eq
469+
445470section Prod
446471
447472variable (α β) [Preorder α] [Preorder β]
You can’t perform that action at this time.
0 commit comments