Goal:
  
  A : Type
  p : nat → A → bool
  q : nat → A → bool
  l : list A
  l' : list A
  B : Type
  f : B → A
  n : nat
  a : B
  bs : list B
  IHbs : ∀ n : nat,
           alli p n (map f bs) = alli (λ (i : nat) (x : B), p i (f x)) n bs
  ============================
   (p n (f a) && alli (λ (i : nat) (x : B), p i (f x)) (S n) bs =
    p n (f a) && alli (λ (i : nat) (x : B), p i (f x)) (S n) bs)


DEBUG:Going to execute:
solve
[ trivial
with eq_true
| reflexivity
| symmetry; trivial
| contradiction
| congruence ]