Goal:
  
  A : Type
  B : Type
  P : B → B → Prop
  f : A → B
  hd : A
  hd' : A
  tl : list A
  p : on_rel P f hd hd'
  ============================
   (P (f hd) (f hd'))


DEBUG:Going to execute:
try assumption