 reserve CPN for with-nontrivial-ColoredSet Colored-PT-net;
 reserve m for colored-state of CPN;
 reserve t for Element of the carrier' of CPN;

theorem
:: :Th5B:
  for D0 being thin_cylinder of the ColoredSet of CPN, *'{t},
  D1 being thin_cylinder of the ColoredSet of CPN, {t}*',
  ColD0 be color-threshold of D0,
  ColD1 be color-threshold of D1,
  x be Element of the ColoredSet of CPN,
  p be Element of CPN st
  t is outbound holds
  (m.p).x - 1 <= (firing_result(ColD0, ColD1, m, p)).x &
  (firing_result(ColD0, ColD1, m, p)).x <= (m.p).x
proof
  let D0 be thin_cylinder of the ColoredSet of CPN, *'{t},
  D1 be thin_cylinder of the ColoredSet of CPN, {t}*',
  ColD0 be color-threshold of D0,
  ColD1 be color-threshold of D1,
  x be Element of the ColoredSet of CPN,
  p be Element of CPN;
  assume
a: t is outbound;
  per cases;
  suppose
A1:  (p in loc(D0) \ loc(D1) & t is_firable_on m, ColD0); then
A11: firing_result(ColD0, ColD1, m, p) = Ptr_Sub(ColD0, m, p) by Def16;
A12: p in loc(D0) by XBOOLE_0:def 5, A1;
    per cases;
    suppose
a:    x = ColD0.p;
      (m.p).x  - 1 + 0 <= ((m.p). x - 1) + 1 by XREAL_1:7;
      hence thesis by a,A1, A11, A12, Def16Sub;
    end;
    suppose
a:    x <> ColD0.p; then
A122: (firing_result(ColD0, ColD1, m, p)).x = (m.p).x by A1, A11, Def16Sub;
      (m.p).x - 1 <=
      (firing_result(ColD0, ColD1, m, p)).x - 0 by A122, XREAL_1:13;
      hence thesis by a,A1, A11, Def16Sub;
    end;
  end;
  suppose
     (p in loc(D1) \ loc(D0) & t is_firable_on m, ColD0);
     hence thesis by a;
  end;
  suppose
a:  not(p in loc(D0) \ loc(D1) & t is_firable_on m, ColD0) &
    not(p in loc(D1) \ loc(D0) & t is_firable_on m, ColD0); then
A122:  (firing_result(ColD0, ColD1, m, p)).x = (m.p).x by Def16;
    (m.p).x - 1 <=
    (firing_result(ColD0, ColD1, m, p)).x - 0 by A122, XREAL_1:13;
    hence thesis by a,Def16;
  end;
end;
