lean4-htt/tests/lean/run/def_ite_value.lean
2016-09-20 08:32:37 -07:00

20 lines
549 B
Text

inductive bv : nat → Type
| nil : bv 0
| cons : Π n, bool → bv n → bv (n+1)
open bv
definition f : ∀ n : nat, bv n → nat → nat
| (n+1) (cons .n b v) 1000000 := f n v 0
| (n+1) (cons .n b v) x := f n v (x + 1)
| _ _ _ := 1
set_option pp.binder_types true
check @f._main.equations.eqn_1
check @f._main.equations.eqn_2
check @f._main.equations.eqn_3
example (n : nat) (b : bool) (v : bv n) (x : nat) : x ≠ 1000000 → f (n+1) (cons n b v) x = f n v (x + 1) :=
assume H, f._main.equations.eqn_3 n b v x H