Documentation

Mathlib.Order.Notation

Notation classes for lattice operations #

In this file we introduce typeclasses and definitions for lattice operations.

Main definitions #

Notations #

class HasCompl (α : Type u_1) :
Type u_1

Set / lattice complement

  • compl : αα

    Set / lattice complement

Instances

    Set / lattice complement

    Equations

    Sup and Inf #

    @[deprecated Max (since := "2024-11-06")]
    class Sup (α : Type u_1) :
    Type u_1

    Typeclass for the (\lub) notation

    • sup : ααα

      Least upper bound (\lub notation)

    Instances
      theorem Sup.ext {α : Type u_1} {x y : Sup α} (sup : sup = sup) :
      x = y
      @[deprecated Min (since := "2024-11-06")]
      class Inf (α : Type u_1) :
      Type u_1

      Typeclass for the (\glb) notation

      • inf : ααα

        Greatest lower bound (\glb notation)

      Instances
        theorem Inf.ext {α : Type u_1} {x y : Inf α} (inf : inf = inf) :
        x = y
        theorem Min.ext {α : Type u} {x y : Min α} (min : min = min) :
        x = y
        theorem Max.ext {α : Type u} {x y : Max α} (max : max = max) :
        x = y

        The maximum operation: max x y.

        Equations

        The minimum operation: min x y.

        Equations
        class HImp (α : Type u_1) :
        Type u_1

        Syntax typeclass for Heyting implication .

        • himp : ααα

          Heyting implication

        Instances
          class HNot (α : Type u_1) :
          Type u_1

          Syntax typeclass for Heyting negation .

          The difference between HasCompl and HNot is that the former belongs to Heyting algebras, while the latter belongs to co-Heyting algebras. They are both pseudo-complements, but compl underestimates while HNot overestimates. In boolean algebras, they are equal. See hnot_eq_compl.

          • hnot : αα

            Heyting negation

          Instances
            class Top (α : Type u_1) :
            Type u_1

            Typeclass for the (\top) notation

            • top : α

              The top (, \top) element

            Instances
              theorem Top.ext {α : Type u_1} {x y : Top α} (top : = ) :
              x = y
              class Bot (α : Type u_1) :
              Type u_1

              Typeclass for the (\bot) notation

              • bot : α

                The bot (, \bot) element

              Instances
                theorem Bot.ext {α : Type u_1} {x y : Bot α} (bot : = ) :
                x = y

                The top (, \top) element

                Equations

                The bot (, \bot) element

                Equations
                @[instance 100]
                instance top_nonempty (α : Type u_1) [Top α] :
                @[instance 100]
                instance bot_nonempty (α : Type u_1) [Bot α] :