Goal:
  
  G : t
  HI : invariants
  HG : acyclic_no_loop
  x : VSet.elt
  inx : VSet.In x (V G)
  m : Z
  Hm : lsp (s G) x = Some m
  Hpos : 0 <= m
  ============================
   (0 <= m /\ Z.of_nat (to_label (Some m)) = m)


DEBUG:Going to execute:
fun => <coq-core.plugins.ltac::split@0>

Goals:
  
  G : t
  HI : invariants
  HG : acyclic_no_loop
  x : VSet.elt
  inx : VSet.In x (V G)
  m : Z
  Hm : lsp (s G) x = Some m
  Hpos : 0 <= m
  ============================
   (0 <= m)

  
  G : t
  HI : invariants
  HG : acyclic_no_loop
  x : VSet.elt
  inx : VSet.In x (V G)
  m : Z
  Hm : lsp (s G) x = Some m
  Hpos : 0 <= m
  ============================
   (Z.of_nat (to_label (Some m)) = m)


DEBUG:Going to execute:
auto

Goals:
  
  G : t
  HI : invariants
  HG : acyclic_no_loop
  x : VSet.elt
  inx : VSet.In x (V G)
  m : Z
  Hm : lsp (s G) x = Some m
  Hpos : 0 <= m
  ============================
   (0 <= m)

  
  G : t
  HI : invariants
  HG : acyclic_no_loop
  x : VSet.elt
  inx : VSet.In x (V G)
  m : Z
  Hm : lsp (s G) x = Some m
  Hpos : 0 <= m
  ============================
   (Z.of_nat (to_label (Some m)) = m)


DEBUG:Going to execute:
<coq-core.plugins.ltac::auto@0> $1 $2 $3