Notation pow2 := (Nat.pow 2).Fixpoint Npow2 (n : nat) : N :=
  match n with
    | O => 1
    | S n' => 2 * Npow2 n'
  end%N.

Lemma mult_pow2_bound: forall a b x y, x < pow2 a -> y < pow2 b -> x * y < pow2 (a + b).