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

Lemma whd_eq_rect_mul : forall n w Heq, whd (eq_rect (S n) word w (S (n * 1)) Heq) = whd w.