lean4-htt/tests/lean/lvl1.lean
2019-10-30 13:19:58 -07:00

19 lines
895 B
Text

import Init.Lean.Level
namespace Lean
namespace Level
def mkMax (xs : Array Level) : Level :=
xs.foldlFrom max (xs.get! 0) 1
#eval toString $ normalize $ succ $ succ $ mkMax #[zero, param `w, succ (succ (succ (param `z))), one, succ (succ (param `x)), zero, param `x, param `y, param `x, param `z, succ one, param `w, succ (param `x)]
#eval toString $ normalize $ max zero (param `x)
#eval toString $ normalize $ max (param `x) zero
#eval toString $ normalize $ max zero one
#eval toString $ normalize $ succ (max (param `x) (param `x))
#eval toString $ normalize $ max (imax (param `x) one) (max (succ (param `x)) (param `x))
#eval toString $ normalize $ imax (imax (param `x) one) (max (succ (param `x)) (param `x))
#eval toString $ #[zero, succ (succ (param `z)), one, succ (succ (param `x)), zero, param `x, param `y, param `x, param `z, succ (param `x)].qsort normLt
end Level
end Lean