Documentation

Mathlib.Order.SuccPred.Limit

Successor and predecessor limits #

We define the predicate Order.IsSuccPrelimit for "successor pre-limits", values that don't cover any others. They are so named since they can't be the successors of anything smaller. We define Order.IsPredPrelimit analogously, and prove basic results.

TODO #

For some applications, it's desirable to exclude the case where an element is minimal. A future PR will introduce IsSuccLimit for this usage.

The plan is to eventually replace Ordinal.IsLimit and Cardinal.IsLimit with the common predicate Order.IsSuccLimit.

Successor limits #

def Order.IsSuccPrelimit {α : Type u_1} [LT α] (a : α) :

A successor pre-limit is a value that doesn't cover any other.

It's so named because in a successor order, a successor pre-limit can't be the successor of anything smaller.

For some applications, it's desirable to exclude the case where an element is minimal. A future PR will introduce IsSuccLimit for this usage.

Equations
Instances For
    @[deprecated Order.IsSuccPrelimit]
    def Order.IsSuccLimit {α : Type u_1} [LT α] (a : α) :

    Alias of Order.IsSuccPrelimit.


    A successor pre-limit is a value that doesn't cover any other.

    It's so named because in a successor order, a successor pre-limit can't be the successor of anything smaller.

    For some applications, it's desirable to exclude the case where an element is minimal. A future PR will introduce IsSuccLimit for this usage.

    Equations
    Instances For
      theorem Order.not_isSuccPrelimit_iff_exists_covBy {α : Type u_1} [LT α] (a : α) :
      ¬Order.IsSuccPrelimit a ∃ (b : α), b a
      @[deprecated Order.not_isSuccPrelimit_iff_exists_covBy]
      theorem Order.not_isSuccLimit_iff_exists_covBy {α : Type u_1} [LT α] (a : α) :
      ¬Order.IsSuccPrelimit a ∃ (b : α), b a

      Alias of Order.not_isSuccPrelimit_iff_exists_covBy.

      @[simp]
      @[deprecated Order.isSuccPrelimit_of_dense]
      theorem Order.isSuccLimit_of_dense {α : Type u_1} [LT α] [DenselyOrdered α] (a : α) :

      Alias of Order.isSuccPrelimit_of_dense.

      theorem IsMin.isSuccPrelimit {α : Type u_1} [Preorder α] {a : α} :
      @[deprecated IsMin.isSuccPrelimit]
      theorem IsMin.isSuccLimit {α : Type u_1} [Preorder α] {a : α} :

      Alias of IsMin.isSuccPrelimit.

      @[deprecated Order.isSuccPrelimit_bot]

      Alias of Order.isSuccPrelimit_bot.

      @[deprecated Order.IsSuccPrelimit.isMax]
      theorem Order.IsSuccLimit.isMax {α : Type u_1} [Preorder α] {a : α} [SuccOrder α] (h : Order.IsSuccPrelimit (Order.succ a)) :

      Alias of Order.IsSuccPrelimit.isMax.

      @[deprecated Order.not_isSuccPrelimit_succ_of_not_isMax]

      Alias of Order.not_isSuccPrelimit_succ_of_not_isMax.

      theorem Order.IsSuccPrelimit.succ_ne {α : Type u_1} [Preorder α] {a : α} [SuccOrder α] [NoMaxOrder α] (h : Order.IsSuccPrelimit a) (b : α) :
      @[deprecated Order.IsSuccPrelimit.succ_ne]
      theorem Order.IsSuccLimit.succ_ne {α : Type u_1} [Preorder α] {a : α} [SuccOrder α] [NoMaxOrder α] (h : Order.IsSuccPrelimit a) (b : α) :

      Alias of Order.IsSuccPrelimit.succ_ne.

      @[deprecated Order.not_isSuccPrelimit_succ]

      Alias of Order.not_isSuccPrelimit_succ.

      @[deprecated Order.IsSuccPrelimit.isMin_of_noMax]

      Alias of Order.IsSuccPrelimit.isMin_of_noMax.

      @[deprecated Order.isSuccPrelimit_iff_of_noMax]

      Alias of Order.isSuccPrelimit_iff_of_noMax.

      @[deprecated Order.not_isSuccPrelimit_of_noMax]

      Alias of Order.not_isSuccPrelimit_of_noMax.

      theorem Order.isSuccPrelimit_of_succ_ne {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} (h : ∀ (b : α), Order.succ b a) :
      @[deprecated Order.isSuccPrelimit_of_succ_ne]
      theorem Order.isSuccLimit_of_succ_ne {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} (h : ∀ (b : α), Order.succ b a) :

      Alias of Order.isSuccPrelimit_of_succ_ne.

      theorem Order.not_isSuccPrelimit_iff {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} :
      @[deprecated Order.not_isSuccPrelimit_iff]
      theorem Order.not_isSuccLimit_iff {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} :

      Alias of Order.not_isSuccPrelimit_iff.

      See not_isSuccPrelimit_iff for a version that states that a is a successor of a value other than itself.

      @[deprecated Order.mem_range_succ_of_not_isSuccPrelimit]
      theorem Order.mem_range_succ_of_not_isSuccLimit {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} (h : ¬Order.IsSuccPrelimit a) :
      a Set.range Order.succ

      Alias of Order.mem_range_succ_of_not_isSuccPrelimit.


      See not_isSuccPrelimit_iff for a version that states that a is a successor of a value other than itself.

      @[deprecated Order.mem_range_succ_or_isSuccPrelimit]

      Alias of Order.mem_range_succ_or_isSuccPrelimit.

      theorem Order.isSuccPrelimit_of_succ_lt {α : Type u_1} [PartialOrder α] [SuccOrder α] {b : α} (H : a < b, Order.succ a < b) :
      @[deprecated Order.isSuccPrelimit_of_succ_lt]
      theorem Order.isSuccLimit_of_succ_lt {α : Type u_1} [PartialOrder α] [SuccOrder α] {b : α} (H : a < b, Order.succ a < b) :

      Alias of Order.isSuccPrelimit_of_succ_lt.

      theorem Order.IsSuccPrelimit.succ_lt {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} {b : α} (hb : Order.IsSuccPrelimit b) (ha : a < b) :
      @[deprecated Order.IsSuccPrelimit.succ_lt]
      theorem Order.IsSuccLimit.succ_lt {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} {b : α} (hb : Order.IsSuccPrelimit b) (ha : a < b) :

      Alias of Order.IsSuccPrelimit.succ_lt.

      theorem Order.IsSuccPrelimit.succ_lt_iff {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} {b : α} (hb : Order.IsSuccPrelimit b) :
      Order.succ a < b a < b
      @[deprecated Order.IsSuccPrelimit.succ_lt_iff]
      theorem Order.IsSuccLimit.succ_lt_iff {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} {b : α} (hb : Order.IsSuccPrelimit b) :
      Order.succ a < b a < b

      Alias of Order.IsSuccPrelimit.succ_lt_iff.

      @[deprecated Order.isSuccPrelimit_iff_succ_lt]
      theorem Order.isSuccLimit_iff_succ_lt {α : Type u_1} [PartialOrder α] [SuccOrder α] {b : α} :

      Alias of Order.isSuccPrelimit_iff_succ_lt.

      @[deprecated Order.isSuccPrelimit_iff_succ_ne]
      theorem Order.isSuccLimit_iff_succ_ne {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} [NoMaxOrder α] :

      Alias of Order.isSuccPrelimit_iff_succ_ne.

      @[deprecated Order.not_isSuccPrelimit_iff']
      theorem Order.not_isSuccLimit_iff' {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} [NoMaxOrder α] :

      Alias of Order.not_isSuccPrelimit_iff'.

      @[deprecated Order.IsSuccPrelimit.isMin]
      theorem Order.IsSuccLimit.isMin {α : Type u_1} [PartialOrder α] [SuccOrder α] {a : α} [IsSuccArchimedean α] (h : Order.IsSuccPrelimit a) :

      Alias of Order.IsSuccPrelimit.isMin.

      @[deprecated Order.isSuccPrelimit_iff]

      Alias of Order.isSuccPrelimit_iff.

      @[deprecated Order.not_isSuccPrelimit]

      Alias of Order.not_isSuccPrelimit.

      Predecessor limits #

      def Order.IsPredPrelimit {α : Type u_1} [LT α] (a : α) :

      A successor pre-limit is a value that isn't covered by any other.

      It's so named because in a predecessor order, a predecessor limit can't be the predecessor of anything greater.

      For some applications, it's desirable to exclude the case where an element is maximal. A future PR will introduce IsPredLimit for this usage.

      Equations
      Instances For
        @[deprecated Order.IsPredPrelimit]
        def Order.IsPredLimit {α : Type u_1} [LT α] (a : α) :

        Alias of Order.IsPredPrelimit.


        A successor pre-limit is a value that isn't covered by any other.

        It's so named because in a predecessor order, a predecessor limit can't be the predecessor of anything greater.

        For some applications, it's desirable to exclude the case where an element is maximal. A future PR will introduce IsPredLimit for this usage.

        Equations
        Instances For
          theorem Order.not_isPredPrelimit_iff_exists_covBy {α : Type u_1} [LT α] (a : α) :
          ¬Order.IsPredPrelimit a ∃ (b : α), a b
          @[deprecated Order.not_isPredPrelimit_iff_exists_covBy]
          theorem Order.not_isPredLimit_iff_exists_covBy {α : Type u_1} [LT α] (a : α) :
          ¬Order.IsPredPrelimit a ∃ (b : α), a b

          Alias of Order.not_isPredPrelimit_iff_exists_covBy.

          @[deprecated Order.isPredPrelimit_of_dense]
          theorem Order.isPredLimit_of_dense {α : Type u_1} [LT α] [DenselyOrdered α] (a : α) :

          Alias of Order.isPredPrelimit_of_dense.

          @[simp]
          theorem Order.isSuccPrelimit_toDual_iff {α : Type u_1} [LT α] {a : α} :
          @[deprecated Order.isSuccPrelimit_toDual_iff]
          theorem Order.isSuccLimit_toDual_iff {α : Type u_1} [LT α] {a : α} :

          Alias of Order.isSuccPrelimit_toDual_iff.

          @[simp]
          theorem Order.isPredPrelimit_toDual_iff {α : Type u_1} [LT α] {a : α} :
          @[deprecated Order.isPredPrelimit_toDual_iff]
          theorem Order.isPredLimit_toDual_iff {α : Type u_1} [LT α] {a : α} :

          Alias of Order.isPredPrelimit_toDual_iff.

          theorem Order.IsPredPrelimit.dual {α : Type u_1} [LT α] {a : α} :
          Order.IsPredPrelimit aOrder.IsSuccPrelimit (OrderDual.toDual a)

          Alias of the reverse direction of Order.isSuccPrelimit_toDual_iff.

          theorem Order.IsSuccPrelimit.dual {α : Type u_1} [LT α] {a : α} :
          Order.IsSuccPrelimit aOrder.IsPredPrelimit (OrderDual.toDual a)

          Alias of the reverse direction of Order.isPredPrelimit_toDual_iff.

          @[deprecated Order.IsPredPrelimit.dual]
          theorem Order.isPredLimit.dual {α : Type u_1} [LT α] {a : α} :
          Order.IsPredPrelimit aOrder.IsSuccPrelimit (OrderDual.toDual a)

          Alias of the reverse direction of Order.isSuccPrelimit_toDual_iff.


          Alias of the reverse direction of Order.isSuccPrelimit_toDual_iff.

          @[deprecated Order.IsSuccPrelimit.dual]
          theorem Order.isSuccLimit.dual {α : Type u_1} [LT α] {a : α} :
          Order.IsSuccPrelimit aOrder.IsPredPrelimit (OrderDual.toDual a)

          Alias of the reverse direction of Order.isPredPrelimit_toDual_iff.


          Alias of the reverse direction of Order.isPredPrelimit_toDual_iff.

          theorem IsMax.isPredPrelimit {α : Type u_1} [Preorder α] {a : α} :
          @[deprecated IsMax.isPredPrelimit]
          theorem IsMax.isPredLimit {α : Type u_1} [Preorder α] {a : α} :

          Alias of IsMax.isPredPrelimit.

          @[deprecated Order.isPredPrelimit_top]

          Alias of Order.isPredPrelimit_top.

          @[deprecated Order.IsPredPrelimit.isMin]
          theorem Order.IsPredLimit.isMin {α : Type u_1} [Preorder α] {a : α} [PredOrder α] (h : Order.IsPredPrelimit (Order.pred a)) :

          Alias of Order.IsPredPrelimit.isMin.

          @[deprecated Order.not_isPredPrelimit_pred_of_not_isMin]

          Alias of Order.not_isPredPrelimit_pred_of_not_isMin.

          theorem Order.IsPredPrelimit.pred_ne {α : Type u_1} [Preorder α] {a : α} [PredOrder α] [NoMinOrder α] (h : Order.IsPredPrelimit a) (b : α) :
          @[deprecated Order.IsPredPrelimit.pred_ne]
          theorem Order.IsPredLimit.pred_ne {α : Type u_1} [Preorder α] {a : α} [PredOrder α] [NoMinOrder α] (h : Order.IsPredPrelimit a) (b : α) :

          Alias of Order.IsPredPrelimit.pred_ne.

          @[deprecated Order.not_isPredPrelimit_pred]

          Alias of Order.not_isPredPrelimit_pred.

          @[deprecated Order.IsPredPrelimit.isMax_of_noMin]

          Alias of Order.IsPredPrelimit.isMax_of_noMin.

          @[deprecated Order.isPredPrelimit_iff_of_noMin]

          Alias of Order.isPredPrelimit_iff_of_noMin.

          @[deprecated Order.not_isPredPrelimit_of_noMin]

          Alias of Order.not_isPredPrelimit_of_noMin.

          theorem Order.isPredPrelimit_of_pred_ne {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} (h : ∀ (b : α), Order.pred b a) :
          @[deprecated Order.isPredPrelimit_of_pred_ne]
          theorem Order.isPredLimit_of_pred_ne {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} (h : ∀ (b : α), Order.pred b a) :

          Alias of Order.isPredPrelimit_of_pred_ne.

          theorem Order.not_isPredPrelimit_iff {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} :
          @[deprecated Order.not_isPredPrelimit_iff]
          theorem Order.not_isPredLimit_iff {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} :

          Alias of Order.not_isPredPrelimit_iff.

          See not_isPredPrelimit_iff for a version that states that a is a successor of a value other than itself.

          @[deprecated Order.mem_range_pred_of_not_isPredPrelimit]
          theorem Order.mem_range_pred_of_not_isPredLimit {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} (h : ¬Order.IsPredPrelimit a) :
          a Set.range Order.pred

          Alias of Order.mem_range_pred_of_not_isPredPrelimit.


          See not_isPredPrelimit_iff for a version that states that a is a successor of a value other than itself.

          @[deprecated Order.mem_range_pred_or_isPredPrelimit]

          Alias of Order.mem_range_pred_or_isPredPrelimit.

          theorem Order.isPredPrelimit_of_pred_lt {α : Type u_1} [PartialOrder α] [PredOrder α] {b : α} (H : a > b, Order.pred a < b) :
          @[deprecated Order.isPredPrelimit_of_pred_lt]
          theorem Order.isPredLimit_of_pred_lt {α : Type u_1} [PartialOrder α] [PredOrder α] {b : α} (H : a > b, Order.pred a < b) :

          Alias of Order.isPredPrelimit_of_pred_lt.

          theorem Order.IsPredPrelimit.lt_pred {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} {b : α} (h : Order.IsPredPrelimit a) :
          a < ba < Order.pred b
          @[deprecated Order.IsPredPrelimit.lt_pred]
          theorem Order.IsPredLimit.lt_pred {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} {b : α} (h : Order.IsPredPrelimit a) :
          a < ba < Order.pred b

          Alias of Order.IsPredPrelimit.lt_pred.

          theorem Order.IsPredPrelimit.lt_pred_iff {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} {b : α} (h : Order.IsPredPrelimit a) :
          a < Order.pred b a < b
          @[deprecated Order.IsPredPrelimit.lt_pred_iff]
          theorem Order.IsPredLimit.lt_pred_iff {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} {b : α} (h : Order.IsPredPrelimit a) :
          a < Order.pred b a < b

          Alias of Order.IsPredPrelimit.lt_pred_iff.

          theorem Order.isPredPrelimit_iff_lt_pred {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} :
          Order.IsPredPrelimit a ∀ ⦃b : α⦄, a < ba < Order.pred b
          @[deprecated Order.isPredPrelimit_iff_lt_pred]
          theorem Order.isPredLimit_iff_lt_pred {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} :
          Order.IsPredPrelimit a ∀ ⦃b : α⦄, a < ba < Order.pred b

          Alias of Order.isPredPrelimit_iff_lt_pred.

          @[deprecated Order.IsPredPrelimit.isMax]
          theorem Order.IsPredLimit.isMax {α : Type u_1} [PartialOrder α] [PredOrder α] {a : α} [IsPredArchimedean α] (h : Order.IsPredPrelimit a) :

          Alias of Order.IsPredPrelimit.isMax.

          @[deprecated Order.isPredPrelimit_iff]

          Alias of Order.isPredPrelimit_iff.

          @[deprecated Order.not_isPredPrelimit]

          Alias of Order.not_isPredPrelimit.

          Induction principles #

          noncomputable def Order.isSuccPrelimitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [SuccOrder α] (b : α) (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) :
          C b

          A value can be built by building it on successors and successor limits.

          Equations
          Instances For
            @[deprecated Order.isSuccPrelimitRecOn]
            def Order.isSuccLimitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [SuccOrder α] (b : α) (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) :
            C b

            Alias of Order.isSuccPrelimitRecOn.


            A value can be built by building it on successors and successor limits.

            Equations
            Instances For
              theorem Order.isSuccPrelimitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [SuccOrder α] (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) (hb : Order.IsSuccPrelimit b) :
              @[deprecated Order.isSuccPrelimitRecOn_limit]
              theorem Order.isSuccLimitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [SuccOrder α] (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) (hb : Order.IsSuccPrelimit b) :

              Alias of Order.isSuccPrelimitRecOn_limit.

              theorem Order.isSuccPrelimitRecOn_succ' {α : Type u_1} {C : αSort u_2} {b : α} [LinearOrder α] [SuccOrder α] (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) (hb : ¬IsMax b) :
              @[deprecated Order.isSuccPrelimitRecOn_succ']
              theorem Order.isSuccLimitRecOn_succ' {α : Type u_1} {C : αSort u_2} {b : α} [LinearOrder α] [SuccOrder α] (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) (hb : ¬IsMax b) :

              Alias of Order.isSuccPrelimitRecOn_succ'.

              @[simp]
              theorem Order.isSuccPrelimitRecOn_succ {α : Type u_1} {C : αSort u_2} [LinearOrder α] [SuccOrder α] [NoMaxOrder α] (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) (b : α) :
              @[deprecated Order.isSuccPrelimitRecOn_succ]
              theorem Order.isSuccLimitRecOn_succ {α : Type u_1} {C : αSort u_2} [LinearOrder α] [SuccOrder α] [NoMaxOrder α] (hs : (a : α) → ¬IsMax aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit aC a) (b : α) :

              Alias of Order.isSuccPrelimitRecOn_succ.

              noncomputable def Order.isPredPrelimitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [PredOrder α] (b : α) (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) :
              C b

              A value can be built by building it on predecessors and predecessor limits.

              Equations
              Instances For
                @[deprecated Order.isPredPrelimitRecOn]
                def Order.isPredLimitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [PredOrder α] (b : α) (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) :
                C b

                Alias of Order.isPredPrelimitRecOn.


                A value can be built by building it on predecessors and predecessor limits.

                Equations
                Instances For
                  theorem Order.isPredPrelimitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [PredOrder α] (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) (hb : Order.IsPredPrelimit b) :
                  @[deprecated Order.isPredPrelimitRecOn_limit]
                  theorem Order.isPredLimitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [PredOrder α] (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) (hb : Order.IsPredPrelimit b) :

                  Alias of Order.isPredPrelimitRecOn_limit.

                  theorem Order.isPredPrelimitRecOn_pred' {α : Type u_1} {C : αSort u_2} [LinearOrder α] [PredOrder α] (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) {b : α} (hb : ¬IsMin b) :
                  @[deprecated Order.isPredPrelimitRecOn_pred']
                  theorem Order.isPredLimitRecOn_pred' {α : Type u_1} {C : αSort u_2} [LinearOrder α] [PredOrder α] (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) {b : α} (hb : ¬IsMin b) :

                  Alias of Order.isPredPrelimitRecOn_pred'.

                  @[simp]
                  theorem Order.isPredPrelimitRecOn_pred {α : Type u_1} {C : αSort u_2} [LinearOrder α] [PredOrder α] (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) [NoMinOrder α] (b : α) :
                  @[deprecated Order.isPredPrelimitRecOn_pred]
                  theorem Order.isPredLimitRecOn_pred {α : Type u_1} {C : αSort u_2} [LinearOrder α] [PredOrder α] (hs : (a : α) → ¬IsMin aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit aC a) [NoMinOrder α] (b : α) :

                  Alias of Order.isPredPrelimitRecOn_pred.

                  noncomputable def SuccOrder.prelimitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [SuccOrder α] [WellFoundedLT α] (b : α) (hs : (a : α) → ¬IsMax aC aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit a((b : α) → b < aC b)C a) :
                  C b

                  Recursion principle on a well-founded partial SuccOrder.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[deprecated SuccOrder.prelimitRecOn]
                    def SuccOrder.limitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [SuccOrder α] [WellFoundedLT α] (b : α) (hs : (a : α) → ¬IsMax aC aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit a((b : α) → b < aC b)C a) :
                    C b

                    Alias of SuccOrder.prelimitRecOn.


                    Recursion principle on a well-founded partial SuccOrder.

                    Equations
                    Instances For
                      @[simp]
                      theorem SuccOrder.prelimitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [SuccOrder α] [WellFoundedLT α] (hs : (a : α) → ¬IsMax aC aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit a((b : α) → b < aC b)C a) (hb : Order.IsSuccPrelimit b) :
                      SuccOrder.prelimitRecOn b hs hl = hl b hb fun (x : α) (x_1 : x < b) => SuccOrder.prelimitRecOn x hs hl
                      @[deprecated SuccOrder.prelimitRecOn_limit]
                      theorem SuccOrder.limitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [SuccOrder α] [WellFoundedLT α] (hs : (a : α) → ¬IsMax aC aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit a((b : α) → b < aC b)C a) (hb : Order.IsSuccPrelimit b) :
                      SuccOrder.prelimitRecOn b hs hl = hl b hb fun (x : α) (x_1 : x < b) => SuccOrder.prelimitRecOn x hs hl

                      Alias of SuccOrder.prelimitRecOn_limit.

                      @[simp]
                      theorem SuccOrder.prelimitRecOn_succ {α : Type u_1} {C : αSort u_2} {b : α} [LinearOrder α] [SuccOrder α] [WellFoundedLT α] (hs : (a : α) → ¬IsMax aC aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit a((b : α) → b < aC b)C a) (hb : ¬IsMax b) :
                      @[deprecated SuccOrder.prelimitRecOn_succ]
                      theorem SuccOrder.limitRecOn_succ {α : Type u_1} {C : αSort u_2} {b : α} [LinearOrder α] [SuccOrder α] [WellFoundedLT α] (hs : (a : α) → ¬IsMax aC aC (Order.succ a)) (hl : (a : α) → Order.IsSuccPrelimit a((b : α) → b < aC b)C a) (hb : ¬IsMax b) :

                      Alias of SuccOrder.prelimitRecOn_succ.

                      noncomputable def PredOrder.prelimitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [PredOrder α] [WellFoundedGT α] (b : α) (hp : (a : α) → ¬IsMin aC aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit a((b : α) → b > aC b)C a) :
                      C b

                      Recursion principle on a well-founded partial PredOrder.

                      Equations
                      Instances For
                        @[deprecated PredOrder.prelimitRecOn]
                        def PredOrder.limitRecOn {α : Type u_1} {C : αSort u_2} [PartialOrder α] [PredOrder α] [WellFoundedGT α] (b : α) (hp : (a : α) → ¬IsMin aC aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit a((b : α) → b > aC b)C a) :
                        C b

                        Alias of PredOrder.prelimitRecOn.


                        Recursion principle on a well-founded partial PredOrder.

                        Equations
                        Instances For
                          @[simp]
                          theorem PredOrder.prelimitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [PredOrder α] [WellFoundedGT α] (hp : (a : α) → ¬IsMin aC aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit a((b : α) → b > aC b)C a) (hb : Order.IsPredPrelimit b) :
                          PredOrder.prelimitRecOn b hp hl = hl b hb fun (x : α) (x_1 : x > b) => PredOrder.prelimitRecOn x hp hl
                          @[deprecated PredOrder.prelimitRecOn_limit]
                          theorem PredOrder.limitRecOn_limit {α : Type u_1} {C : αSort u_2} {b : α} [PartialOrder α] [PredOrder α] [WellFoundedGT α] (hp : (a : α) → ¬IsMin aC aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit a((b : α) → b > aC b)C a) (hb : Order.IsPredPrelimit b) :
                          PredOrder.prelimitRecOn b hp hl = hl b hb fun (x : α) (x_1 : x > b) => PredOrder.prelimitRecOn x hp hl

                          Alias of PredOrder.prelimitRecOn_limit.

                          @[simp]
                          theorem PredOrder.prelimitRecOn_pred {α : Type u_1} {C : αSort u_2} {b : α} [LinearOrder α] [PredOrder α] [WellFoundedGT α] (hp : (a : α) → ¬IsMin aC aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit a((b : α) → b > aC b)C a) (hb : ¬IsMin b) :
                          @[deprecated PredOrder.prelimitRecOn_pred]
                          theorem PredOrder.limitRecOn_pred {α : Type u_1} {C : αSort u_2} {b : α} [LinearOrder α] [PredOrder α] [WellFoundedGT α] (hp : (a : α) → ¬IsMin aC aC (Order.pred a)) (hl : (a : α) → Order.IsPredPrelimit a((b : α) → b > aC b)C a) (hb : ¬IsMin b) :

                          Alias of PredOrder.prelimitRecOn_pred.