Goal:
  
  A : Type
  a : A
  l : list A
  l' : list A
  IHl : chop #|l| (l ++ l') = (l, l')
  ============================
   ((let '(l, r) := chop #|l| (l ++ l') in (a :: l, r)) = (a :: l, l'))


DEBUG:Going to execute:
rewrite IHl
Level 0: Backtrace:

Tactic failure: congruence failed.
Level 0: Backtrace:

Tactic failure: congruence failed.