Goal:
    A : Type  x : A  y : A  l2 : list A  H : [x] = l2 ++ [y]
  ============================
   ([] = l2 ∧ x = y)


DEBUG:Going to execute:
destruct l2

Goals:
    A : Type  x : A  y : A  H : [x] = [] ++ [y]
  ============================
   ([] = [] ∧ x = y)

    A : Type  x : A  y : A  a : A  l2 : list A  H : [x] = (a :: l2) ++ [y]
  ============================
   ([] = a :: l2 ∧ x = y)


DEBUG:Going to execute:
cbn in H
DEBUG LTAC Evaluated term: l2

Goals:
    A : Type  x : A  y : A  H : [x] = [y]
  ============================
   ([] = [] ∧ x = y)

    A : Type  x : A  y : A  a : A  l2 : list A  H : [x] = a :: l2 ++ [y]
  ============================
   ([] = a :: l2 ∧ x = y)


DEBUG:Going to execute:
invs H

Goals:
    A : Type  x : A  y : A  H : [x] = [y]
  ============================
   ([] = [] ∧ x = y)

    A : Type  x : A  y : A  a : A  l2 : list A  H : [x] = a :: l2 ++ [y]
  ============================
   ([] = a :: l2 ∧ x = y)


DEBUG:Going to execute:
fun H => inversion H; subst; clear H