Ltac shatterer := simpl; intuition;
  match goal with
    | [ w : _ |- _ ] => rewrite (shatter_word w); simpl
  end; f_equal; auto.

Theorem combine_eq_rect2 : forall sz n n' (H: n = n') H' (a: word sz) (b: word n), combine a b = eq_rect _ word (combine a (eq_rect _ word b _ H)) _ H'.