ToLevel
class #
This module defines Lean.ToLevel
, which is the Lean.Level
analogue to Lean.ToExpr
.
Warning: Import Mathlib.Tactic.ToExpr
instead of this one if you are writing ToExpr
instances. This ensures that you are using the universe polymorphic ToExpr
instances that
override the ones from Lean 4 core.
A class to create Level
expressions that denote particular universe levels in Lean.
Lean.ToLevel.toLevel.{u}
evaluates to a Lean.Level
term representing u
- toLevel : Lean.Level
A
Level
that represents the universe levelu
. - univ : Type u
The universe itself. This is only here to avoid the "unused universe parameter" error.
Instances
Equations
- Auto.instToLevel_1 = { toLevel := Auto.toLevel.succ }
ToLevel
for max u v
. This is not an instance since it causes divergence.
Equations
- Auto.ToLevel.max = { toLevel := Auto.toLevel.max Auto.toLevel }
Instances For
ToLevel
for imax u v
. This is not an instance since it causes divergence.
Equations
- Auto.ToLevel.imax = { toLevel := Auto.toLevel.imax Auto.toLevel }