conv => lhs; simp [add_div_two, this]; change (m >>> 1) + (n >>> 1)
case right.hdiv
m n : Nat
disjoint : m &&& n = 0
hm : m > 0
this : getBit (m &&& n) 0 = false
⊢ (m + n) / 2 = (m ^^^ n) / 2
case right.hdiv
m n : Nat
disjoint : m &&& n = 0
hm : m > 0
this : getBit (m &&& n) 0 = false
⊢ m >>> 1 + n >>> 1 = (m ^^^ n) / 2