Documentation

BourbakiLean2.Order.Basic

def LE.le_rel {α : Type u_1} [LE α] :
Relation α α
Equations
Instances For
    def LT.lt_rel {α : Type u_1} [LT α] :
    Relation α α
    Equations
    Instances For
      @[simp]
      theorem LE.mem_le_rel_iff {α : Type u_1} [LE α] {a b : α} :
      (a, b) LE.le_rel a b
      @[simp]
      theorem LT.mem_lt_rel_iff {α : Type u_1} [LT α] {a b : α} :
      (a, b) LT.lt_rel a < b
      def WithEq (α : Type u_2) :
      Type u_2

      type synonym to use the equality relation as a partial order

      Equations
      Instances For
        class IsPreorder {α : Type u_1} (r : Relation α α) :
        • le_refl : ∀ (a : α), (a, a) r
        • le_trans : ∀ (a b c : α), (a, b) r(b, c) r(a, c) r
        Instances
          class IsPartialOrder {α : Type u_1} (r : Relation α α) extends IsPreorder r :
          • le_refl : ∀ (a : α), (a, a) r
          • le_trans : ∀ (a b c : α), (a, b) r(b, c) r(a, c) r
          • le_antisymm : ∀ (a b : α), (a, b) r(b, a) ra = b
          Instances
            class Preorder (α : Type u_2) extends LE α, LT α :
            Type u_2
            • le : ααProp
            • lt : ααProp
            • le_refl : ∀ (a : α), a a
            • le_trans : ∀ (a b c : α), a bb ca c
            • lt_iff_le_not_le : ∀ (a b : α), a < b a b ¬b a
            Instances
              theorem Preorder.isPreorder {α : Type u_1} [Preorder α] :
              IsPreorder {p : α × α | p.fst p.snd}
              class PartialOrder (α : Type u_2) extends Preorder α :
              Type u_2
              Instances
                theorem PartialOrder.isPartialOrder {α : Type u_1} [PartialOrder α] :
                IsPartialOrder {p : α × α | p.fst p.snd}
                instance instPreorderRelAsLEOfIsPreorder {α : Type u_1} {r : Relation α α} [inst : IsPreorder r] :
                Equations
                Equations
                instance instIsPreorderOfIsEquivalence {α : Type u_1} {r : Relation α α} [inst : r.IsEquivalence] :
                Equations
                • =
                instance instLESubtype_bourbakiLean2 {α : Type u_1} [LE α] {p : αProp} :
                LE { x : α // p x }
                Equations
                • instLESubtype_bourbakiLean2 = { le := fun (x y : { x : α // p x }) => x.val y.val }
                @[simp]
                theorem Subtype.le_iff_val {α : Type u_1} [LE α] {p : αProp} {x y : { x : α // p x }} :
                x y x.val y.val
                instance instLTSubtype_bourbakiLean2 {α : Type u_1} [LT α] {p : αProp} :
                LT { x : α // p x }
                Equations
                • instLTSubtype_bourbakiLean2 = { lt := fun (x y : { x : α // p x }) => x.val < y.val }
                @[simp]
                theorem Subtype.lt_iff_val {α : Type u_1} [LT α] {p : αProp} {x y : { x : α // p x }} :
                x < y x.val < y.val
                instance instPreorderSubtype {α : Type u_1} [Preorder α] {p : αProp} :
                Preorder { x : α // p x }
                Equations
                instance instPartialOrderSubtype {α : Type u_1} [PartialOrder α] {p : αProp} :
                PartialOrder { x : α // p x }
                Equations
                theorem le_refl {α : Type u_1} [Preorder α] (a : α) :
                a a

                The relation on a preorder is reflexive.

                @[simp]
                theorem le_rfl {α : Type u_1} [Preorder α] {a : α} :
                a a

                A version of le_refl where the argument is implicit

                theorem le_of_eq {α : Type u_1} [Preorder α] {a b : α} (h : a = b) :
                a b
                theorem le_trans {α : Type u_1} [Preorder α] {a b c : α} :
                a bb ca c

                The relation on a preorder is transitive.

                theorem lt_iff_le_not_le {α : Type u_1} [Preorder α] {a b : α} :
                a < b a b ¬b a
                theorem lt_of_le_not_le {α : Type u_1} [Preorder α] {a b : α} (hab : a b) (hba : ¬b a) :
                a < b
                theorem le_of_lt {α : Type u_1} [Preorder α] {a b : α} (h : a < b) :
                a b
                theorem ne_of_lt {α : Type u_1} [Preorder α] {a b : α} (h : a < b) :
                a b
                theorem not_lt_self {α : Type u_1} [Preorder α] {a : α} :
                ¬a < a
                instance opPreorder {α : Type u_1} [Preorder α] :
                Equations
                def Preorder.equivalent_rel {α : Type u_1} [Preorder α] :
                Relation α α
                Equations
                Instances For
                  @[simp]
                  theorem Preorder.mem_equivalent_rel_iff {α : Type u_1} [Preorder α] {a b : α} :
                  (a, b) Preorder.equivalent_rel a b b a
                  instance equivalent_rel {α : Type u_1} [Preorder α] :
                  Preorder.equivalent_rel.IsEquivalence
                  Equations
                  • =
                  @[simp]
                  theorem Preorder.diag_subset_graph {α : Type u_1} [Preorder α] :
                  Relation.diag LE.le_rel
                  @[simp]
                  theorem Preorder.graph_comp_self {α : Type u_1} [Preorder α] :
                  LE.le_rel.comp LE.le_rel = LE.le_rel
                  def Preorder.QuotEquiv (α : Type u) [inst : Preorder α] :
                  Equations
                  Instances For
                    def Preorder.QuotEquiv.from {α : Type u} [Preorder α] (h : Preorder.QuotEquiv α) :
                    Quot (Function.curry Preorder.equivalent_rel)
                    Equations
                    • h.from = h
                    Instances For
                      def Preorder.QuotEquiv.to {α : Type u} [Preorder α] (h : Quot (Function.curry Preorder.equivalent_rel)) :
                      Equations
                      Instances For
                        def Preorder.QuotEquiv.mk {α : Type u} [Preorder α] (h : α) :
                        Equations
                        Instances For
                          def Preorder.carry_bij {α : Type u_1} [Preorder α] {β : Type u_2} (f : Function.Bijection α β) :
                          Equations
                          Instances For
                            theorem isPreorder_of_graph_prop {α : Type u_1} {r : Relation α α} (h : r.comp r = r) (h' : Relation.diag r) :
                            theorem le_antisymm_iff {α : Type u_1} [inst : PartialOrder α] {a b : α} :
                            a b b a a = b
                            theorem le_antisymm {α : Type u_1} [inst : PartialOrder α] {a b : α} :
                            a bb aa = b
                            theorem le_iff_lt_or_eq {α : Type u_1} [inst : PartialOrder α] {a b : α} :
                            a b a < b a = b
                            theorem lt_iff_le_not_eq {α : Type u_1} [inst : PartialOrder α] {a b : α} :
                            a < b a b a b
                            theorem lt_of_lt_lt {α : Type u_1} [inst : PartialOrder α] {a b c : α} (h : a < b) (h' : b < c) :
                            a < c
                            theorem lt_of_le_lt {α : Type u_1} [inst : PartialOrder α] {a b c : α} (h : a b) (h' : b < c) :
                            a < c
                            theorem lt_of_lt_le {α : Type u_1} [inst : PartialOrder α] {a b c : α} (h : a < b) (h' : b c) :
                            a < c
                            def PartialOrder.carry_bij {α : Type u_1} [inst : PartialOrder α] {β : Type u_2} (f : Function.Bijection α β) :
                            Equations
                            Instances For
                              @[simp]
                              theorem PartialOrder.equivalent_rel_diag {α : Type u_1} [inst : PartialOrder α] :
                              Preorder.equivalent_rel = Relation.diag
                              @[simp]
                              theorem PartialOrder.graph_inter_inv {α : Type u_1} [inst : PartialOrder α] :
                              LE.le_rel LE.le_rel.inv = Relation.diag
                              theorem isPartialOrder_of_graph_prop {α : Type u_1} {r : Relation α α} (h : r.comp r = r) (h' : r r.inv = Relation.diag) :
                              instance opPartialOrder {α : Type u_1} [PartialOrder α] :
                              Equations
                              Equations
                              instance instPartialOrderSet {α : Type u_1} :
                              Equations
                              @[simp]
                              theorem le_set_iff_subset {α : Type u_1} {a b : Set α} :
                              a b a b
                              instance instPartialOrderPartialMap {α : Type u_1} {β : αType u_2} :
                              Equations
                              Equations
                              Equations
                              Equations
                              instance instPreorderPointwise {α : Type u_1} {β : αType u_2} [(x : α) → Preorder (β x)] :
                              Equations
                              instance instPartialOrderPointwise {α : Type u_1} {β : αType u_2} [(x : α) → PartialOrder (β x)] :
                              Equations
                              theorem pointwise_graph_product {α : Type u_1} {β : αType u_2} [(x : α) → LE (β x)] :
                              LE.le_rel = (fun (x : (i : α) → β i × β i) => (fun (a : α) => (x a).fst, fun (a : α) => (x a).snd)) '' Πˢ _i : α, LE.le_rel
                              instance instPreorderProd {α : Type u_1} {β : Type u_2} [Preorder α] [Preorder β] :
                              Preorder (α × β)
                              Equations
                              instance instPartialOrderProd {α : Type u_1} {β : Type u_2} [PartialOrder α] [PartialOrder β] :
                              Equations
                              def Comparable {α : Type u_1} [Preorder α] (x y : α) :
                              Equations
                              Instances For
                                def Incomparable {α : Type u_1} [Preorder α] (x y : α) :
                                Equations
                                Instances For