Goal:
  
  A : Type
  P : list A → Type
  h1 : P []
  h2 : ∀ (a : A) (l : list A), P l → P (l ++ [a])
  a : A
  l : list A
  IHl : P (rev l)
  ============================
   (P (rev (a :: l)))


DEBUG:Going to execute:
<coq-core.plugins.ssreflect::ssrrewrite@0> $1 $2