Goal:
  
  A : Type
  B : Type
  p : A → B → bool
  a : A
  l : list A
  q : list A
  q' : list B
  IHl : ∀ l' : list B,
          forallb2 p l l' && forallb2 p q q' → forallb2 p (l ++ q) (l' ++ q')
  ============================
   (false
    → match q' with
      | [] => false
      | hd' :: tl' => p a hd' && forallb2 p (l ++ q) tl'
      end)


DEBUG:Going to execute:
congruence