intro h j hj
case mp
n : Nat
h_ind :
  ∀ {i : Nat},
    getBit (Nat.lsb (n / 2 + 1)) i = true ↔
      getBit (n / 2 + 1) i = true ∧ ∀ (j : Nat), j < i → getBit (n / 2 + 1) j = false
i : Nat
heven : n % 2 = 0
this : n + 2 = (n / 2 + 1) <<< 1
m : Nat
⊢ (∀ (j : Nat), j < i → getBit m j = false) → ∀ (j : Nat), j < succ i → (decide (j ≥ 1) && getBit m (j - 1)) = false
case mp
n : Nat
h_ind :
  ∀ {i : Nat},
    getBit (Nat.lsb (n / 2 + 1)) i = true ↔
      getBit (n / 2 + 1) i = true ∧ ∀ (j : Nat), j < i → getBit (n / 2 + 1) j = false
i : Nat
heven : n % 2 = 0
this : n + 2 = (n / 2 + 1) <<< 1
m : Nat
h : ∀ (j : Nat), j < i → getBit m j = false
j : Nat
hj : j < succ i
⊢ (decide (j ≥ 1) && getBit m (j - 1)) = false