Goal:
  
  G : t
  A : Type
  B : Type
  f : A -> B -> A
  g : B -> bool
  l : list B
  acc : A
  ============================
   (fold_left f (filter g l) acc =
    fold_left (fun (acc : A) (x : B) => if g x then f acc x else acc) l acc)


DEBUG:Going to execute:
induction l in acc |- *; cbn