Ltac wlt_ind :=
  match goal with
  | [ |- forall (n: word ?len), ?P ] =>
    refine (well_founded_ind (@wlt_wf len) (fun n => P) _)
  end.

Lemma existT_wlshift: forall sz1 (w1: word sz1) sz2 (w2: word sz2) n, existT word _ w1 = existT word _ w2 -> existT word _ (wlshift w1 n) = existT word _ (wlshift w2 n).