MiniAgda by Andreas Abel and Karl Mehltretter --- opening "Nested.ma" --- --- scope checking --- --- type checking --- type Nat : + Size -> Set term Nat.zero : .[s!ze : Size] -> .[i < s!ze] -> Nat s!ze term Nat.zero : .[i : Size] -> < Nat.zero i : Nat $i > term Nat.succ : .[s!ze : Size] -> .[i < s!ze] -> ^ Nat i -> Nat s!ze term Nat.succ : .[i : Size] -> ^(y1 : Nat i) -> < Nat.succ i y1 : Nat $i > term nested : .[i : Size] -> Nat i -> Nat i { nested [i] (Nat.zero [j < i]) = Nat.zero [j] ; nested [i] (Nat.succ [j < i] n) = nested [j] (nested [j] n) } --- evaluating --- --- closing "Nested.ma" ---