Fixpoint iterShr8 u n :=
  match n with O => u
   | S n' => Int.shru (iterShr8 u n') (Int.repr 8)
  end.

Lemma list_eq_dec_app {A} (eq_dec: forall x y : A, {x = y} + {x <> y}): forall l m l' m' (L:Zlength l = Zlength l') (M: Zlength m = Zlength m'), ((if list_eq_dec eq_dec (l++m) (l'++m') then true else false) = ((if list_eq_dec eq_dec l l' then true else false) && (if list_eq_dec eq_dec m m' then true else false)))%bool.