Goal:
    A : Type  B : Type  R : nat → A → B → Type  n : nat  H : True
  ============================
   (let H := CoreTactics.block in
    let H0 := CoreTactics.block in All2i_nil = All2i_nil)


DEBUG:Going to execute:
fun tac p =>
             let ty := type of p in
             let eliminator := eval simpl in DepElim.elim in
             tac p eliminator