rw [Nat.add_mul_mod_self_left]
case refl.a
n m : Nat
ih : ∀ (k : Fin (n ^ m)) (x : Fin m → Fin n), k.decodeFun = x ↔ encodeFun x = k
k✝ : Fin (n ^ (m + 1))
x : Fin (m + 1) → Fin n
ih1 : (encodeFun fun k => x k.succ).decodeFun = fun k => x k.succ
k : Nat
hk : k < n ^ (m + 1)
hnpos : n > 0
h : n * ↑(encodeFun fun k => x k.succ) + ↑(x 0) = k
x✝ : Fin (m + 1)
isLt✝ hi : 0 < m + 1
⊢ (↑(x 0) + n * ↑(encodeFun fun k => x k.succ)) % n = ↑(x ⟨0, hi⟩)
case refl.a
n m : Nat
ih : ∀ (k : Fin (n ^ m)) (x : Fin m → Fin n), k.decodeFun = x ↔ encodeFun x = k
k✝ : Fin (n ^ (m + 1))
x : Fin (m + 1) → Fin n
ih1 : (encodeFun fun k => x k.succ).decodeFun = fun k => x k.succ
k : Nat
hk : k < n ^ (m + 1)
hnpos : n > 0
h : n * ↑(encodeFun fun k => x k.succ) + ↑(x 0) = k
x✝ : Fin (m + 1)
isLt✝ hi : 0 < m + 1
⊢ ↑(x 0) % n = ↑(x ⟨0, hi⟩)