Goal:
    n : t  m : t  p : t
  ============================
   (n + (m + p) = n + m + p)


DEBUG:Going to execute:
destruct n, m, p

Goals:
    z : Z  z0 : Z  z1 : Z
  ============================
   (Some z + (Some z0 + Some z1) = Some z + Some z0 + Some z1)

    z : Z  z0 : Z
  ============================
   (Some z + (Some z0 + None) = Some z + Some z0 + None)

    z : Z  z0 : Z
  ============================
   (Some z + (None + Some z0) = Some z + None + Some z0)

    z : Z
  ============================
   (Some z + (None + None) = Some z + None + None)

    z : Z  z0 : Z
  ============================
   (None + (Some z + Some z0) = None + Some z + Some z0)

    z : Z
  ============================
   (None + (Some z + None) = None + Some z + None)

    z : Z
  ============================
   (None + (None + Some z) = None + None + Some z)

  
  ============================
   (None + (None + None) = None + None + None)


DEBUG:Going to execute:
try reflexivity
DEBUG LTAC Evaluated term: n
DEBUG LTAC Evaluated term: m
DEBUG LTAC Evaluated term: m
DEBUG LTAC Evaluated term: p
DEBUG LTAC Evaluated term: p
DEBUG LTAC Evaluated term: p
DEBUG LTAC Evaluated term: p