lean4-htt/tests/lean/run/def17.lean
2020-10-25 09:16:38 -07:00

27 lines
519 B
Text

def mk (a : Nat) : Nat → List Nat
| 0 => []
| n+1 => a :: mk a n
def sum : List Nat → Nat → Nat
| [], r => r
| n::ns, r => sum ns (r + n)
def loop1 : Nat → Nat → Nat
| s, 0 => s
| s, n+1 => loop1 (s + (sum (mk 1 1000000) 0)) n
def loop2 : Nat → Nat → Nat
| 0, s => s
| n+1, s => loop2 n (s + (sum (mk 1 1000000) 0))
def expensive (n : Nat) : Nat :=
100000000000000 - 100000000000000
def foo : Nat → Nat
| n => expensive n
def bla : Nat → Nat
| 100 => expensive 0
| _ => expensive 1