induction k
α : Type
inst✝¹ : (n : Nat) → OfNat α n
inst✝ : UInt α
n : α
i : Nat
hn : toNat n < length α
k : Nat
hk : k ≤ length α
⊢ UInt.getBit (bitmask.aux n k) i = (decide (i < k) && Nat.getBit i (toNat n))
case zero
α : Type
inst✝¹ : (n : Nat) → OfNat α n
inst✝ : UInt α
n : α
i : Nat
hn : toNat n < length α
hk : Nat.zero ≤ length α
⊢ UInt.getBit (bitmask.aux n Nat.zero) i = (decide (i < Nat.zero) && Nat.getBit i (toNat n))

case succ
α : Type
inst✝¹ : (n : Nat) → OfNat α n
inst✝ : UInt α
n : α
i : Nat
hn : toNat n < length α
n✝ : Nat
n_ih✝ : n✝ ≤ length α → UInt.getBit (bitmask.aux n n✝) i = (decide (i < n✝) && Nat.getBit i (toNat n))
hk : Nat.succ n✝ ≤ length α
⊢ UInt.getBit (bitmask.aux n (Nat.succ n✝)) i = (decide (i < Nat.succ n✝) && Nat.getBit i (toNat n))