Goal:
    x : t  y : t
  ============================
   (compare x y = Lt -> lt x y)


DEBUG:Going to execute:
destruct (compare_spec x y)

Goals:
    x : t  y : t  H : x = y
  ============================
   (Eq = Lt -> lt x y)

    x : t  y : t  H : lt x y
  ============================
   (Lt = Lt -> lt x y)

    x : t  y : t  H : lt y x
  ============================
   (Gt = Lt -> lt x y)


DEBUG:Going to execute:
subst
DEBUG LTAC Evaluated term: (compare_spec x y)

Goals:
    x : t  y : t  H : x = y
  ============================
   (Eq = Lt -> lt x y)

    x : t  y : t  H : lt x y
  ============================
   (Lt = Lt -> lt x y)

    x : t  y : t  H : lt y x
  ============================
   (Gt = Lt -> lt x y)


DEBUG:Going to execute:
<coq-core.plugins.ltac::subst@1>

Goals:
    y : t
  ============================
   (Eq = Lt -> lt y y)

    x : t  y : t  H : lt x y
  ============================
   (Lt = Lt -> lt x y)

    x : t  y : t  H : lt y x
  ============================
   (Gt = Lt -> lt x y)


DEBUG:Going to execute:
try congruence