Goal:
    A : Type  P : A → Prop  Q : A → Prop  l : list A
  ============================
   (Forall P l → Forall (λ x : A, P x → Q x) l → Forall Q l)


DEBUG:Going to execute:
induction 1; inversion 1; constructor