Goal:
    A : Type  H : ReflectEq A  l1 : list A  l2 : list A
  ============================
   (let
    '(prefix, l1', l2') := split_prefix l1 l2 in
     l1 = prefix ++ l1' ∧ l2 = prefix ++ l2')


DEBUG:Going to execute:
set (call := p);
            lazymatch goal with
            | call:=?fp:_ |- _ => subst call; Init.funelim_constr fp
            end