#[global]
Instance shiftl_wd : Proper (eq==>eq==>eq) shiftl.

(* Specifications: *)
Lemma shiftl_shiftl : forall a n m,
(a << n) << m == a << (n+m).
Lemma shiftr_shiftr : forall a n m,
(a >> n) >> m == a >> (n+m).
Lemma shiftr_shiftl_l : forall a n m, m<=n ->
(a << n) >> m == a << (n-m).
Lemma shiftr_shiftl_r : forall a n m, n<=m ->
(a << n) >> m == a >> (m-n).