Goal:
  
  A : Type
  B : Type
  C : Type
  P : A → B → Prop
  f : C → B
  l : list A
  l' : list C
  ============================
   (Forall2 P l (map f l') ↔ Forall2 (λ (x : A) (y : C), P x (f y)) l l')


DEBUG:Going to execute:
fun => <coq-core.plugins.ltac::split@0>

Goals:
  
  A : Type
  B : Type
  C : Type
  P : A → B → Prop
  f : C → B
  l : list A
  l' : list C
  ============================
   (Forall2 P l (map f l') → Forall2 (λ (x : A) (y : C), P x (f y)) l l')

  
  A : Type
  B : Type
  C : Type
  P : A → B → Prop
  f : C → B
  l : list A
  l' : list C
  ============================
   (Forall2 (λ (x : A) (y : C), P x (f y)) l l' → Forall2 P l (map f l'))


DEBUG:Going to execute:
intros