Documentation

Lean.Level

def Nat.imax (n m : Nat) :
Instances For

    Cached hash code, cached results, and other data for Level. hash : 32-bits hasMVar : 1-bit hasParam : 1-bit depth : 24-bits

    Instances For
      Equations
      Equations
      Instances For
        Equations
        Instances For
          def Lean.Level.mkData (h : UInt64) (depth : Nat := 0) (hasMVar hasParam : Bool := false) :
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            Equations
            • One or more equations did not get rendered due to their size.

            Universe level metavariable Id

            Instances For
              @[reducible, inline]

              Short for LevelMVarId

              Equations
              Instances For
                Equations
                Instances For
                  Instances For
                    instance Lean.instForInLMVarIdMapProdLMVarId {m : Type u_1 → Type u_2} {α : Type} :
                    Equations
                    @[implemented_by Lean.Level.data._override]
                    Equations
                    Instances For
                      Instances For
                        Instances For
                          Instances For
                            Instances For
                              @[export lean_level_hash]
                              Instances For
                                @[export lean_level_has_mvar]
                                Equations
                                Instances For
                                  @[export lean_level_has_param]
                                  Equations
                                  Instances For
                                    @[export lean_level_depth]
                                    Instances For
                                      Instances For
                                        Instances For
                                          Equations
                                          Instances For
                                            Equations
                                            Instances For
                                              Instances For
                                                @[export lean_level_mk_zero]
                                                Instances For
                                                  @[export lean_level_mk_succ]
                                                  Instances For
                                                    @[export lean_level_mk_mvar]
                                                    Equations
                                                    Instances For
                                                      @[export lean_level_mk_param]
                                                      Equations
                                                      Instances For
                                                        @[export lean_level_mk_max]
                                                        Instances For
                                                          @[export lean_level_mk_imax]
                                                          Equations
                                                          Instances For
                                                            Equations
                                                            Instances For
                                                              Instances For
                                                                Equations
                                                                Instances For
                                                                  Equations
                                                                  Instances For
                                                                    Equations
                                                                    Instances For

                                                                      If result is true, then forall assignments A which assigns all parameters and metavariables occurring in l, l[A] != zero

                                                                      Instances For
                                                                        Instances For
                                                                          Equations
                                                                          Instances For
                                                                            Equations
                                                                            Instances For
                                                                              Equations
                                                                              • lvl.getOffset = lvl.getOffsetAux 0
                                                                              Instances For
                                                                                Equations
                                                                                • a.succ.getLevelOffset = a.getLevelOffset
                                                                                • x.getLevelOffset = x
                                                                                Instances For
                                                                                  Instances For
                                                                                    @[extern lean_level_eq]

                                                                                    occurs u l return true iff u occurs in l.

                                                                                    Instances For
                                                                                      @[irreducible]
                                                                                      Instances For
                                                                                        def Lean.Level.normLt (l₁ l₂ : Lean.Level) :

                                                                                        A total order on level expressions that has the following properties

                                                                                        • succ l is an immediate successor of l.
                                                                                        • zero is the minimal element. This total order is used in the normalization procedure.
                                                                                        Equations
                                                                                        • l₁.normLt l₂ = l₁.normLtAux 0 l₂ 0
                                                                                        Instances For

                                                                                          Return true if u and v denote the same level. Check is currently incomplete.

                                                                                          Instances For

                                                                                            Reduce (if possible) universe level by 1

                                                                                            Instances For
                                                                                              Equations
                                                                                              Instances For
                                                                                                Instances For
                                                                                                  Equations
                                                                                                  def Lean.Level.quote (u : Lean.Level) (prec : Nat := 0) (mvars : Bool := true) :
                                                                                                  Instances For
                                                                                                    Equations
                                                                                                    Instances For
                                                                                                      Instances For
                                                                                                        Equations
                                                                                                        Instances For

                                                                                                          The update functions try to avoid allocating new values using pointer equality. Note that if the update*! functions are used under a match-expression, the compiler will eliminate the double-match.

                                                                                                          @[implemented_by _private.Lean.Level.0.Lean.Level.updateSucc!Impl]
                                                                                                          Equations
                                                                                                          Instances For
                                                                                                            @[implemented_by _private.Lean.Level.0.Lean.Level.updateMax!Impl]
                                                                                                            def Lean.Level.updateMax! (lvl newLhs newRhs : Lean.Level) :
                                                                                                            Instances For
                                                                                                              @[implemented_by _private.Lean.Level.0.Lean.Level.updateIMax!Impl]
                                                                                                              def Lean.Level.updateIMax! (lvl newLhs newRhs : Lean.Level) :
                                                                                                              Equations
                                                                                                              Instances For
                                                                                                                @[specialize #[]]
                                                                                                                Instances For
                                                                                                                  Equations
                                                                                                                  Instances For
                                                                                                                    Equations
                                                                                                                    Instances For
                                                                                                                      @[irreducible]
                                                                                                                      Instances For
                                                                                                                        @[reducible, inline]
                                                                                                                        abbrev Lean.LevelMap (α : Type) :
                                                                                                                        Instances For
                                                                                                                          @[reducible, inline]
                                                                                                                          Equations
                                                                                                                          Instances For
                                                                                                                            @[reducible, inline]
                                                                                                                            Instances For
                                                                                                                              @[reducible, inline]
                                                                                                                              Equations
                                                                                                                              Instances For
                                                                                                                                @[reducible, inline]
                                                                                                                                Instances For
                                                                                                                                  Equations
                                                                                                                                  Instances For
                                                                                                                                    Instances For
                                                                                                                                      @[reducible, inline]
                                                                                                                                      abbrev Nat.toLevel (n : Nat) :
                                                                                                                                      Instances For