Goal:
  
  A : Type
  B : Type
  R : nat → A → B → Type
  l : list A
  l' : list B
  a : All2i
        (λ (i : nat) (x : A) (y : B), nth_error l (i - 0) = Some x × R i x y)
        0 l l'
  i : nat
  x : A
  y : B
  X : nth_error l (i - 0) = Some x × R i x y
  ============================
   (nth_error l i = Some x × R i x y)


DEBUG:Going to execute:
rewrite Nat.sub_0_r in   X
DEBUG LTAC Evaluated term: All2i_nth_impl_gen
DEBUG LTAC Evaluated term: (All2i_impl a)