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

Lemma split1_combine_existT: (* Note: not axiom free *) forall sz n (w: word (n + sz)) sl (wl: word (n + sl)) su (wu: word su), existT word _ w = existT word _ (combine wl wu) -> split1 n _ w = split1 n _ wl.