Definition InvTick (s : StGlobal) :=
match s with
| ((st, x), ((sc, y), (sg, z))) =>
(fun s : StGlobal =>
match s with
| (st_x, (sc_y, sg_z)) => InvT st_x /\ InvC sc_y /\ InvG sg_z
end) (st, Inc x, (sc, Inc y, (sg, Inc z)))
end.
Definition noInvTick (s : StGlobal) :=
match s with
| ((st, x), ((sc, y), (sg, z))) =>
~ InvTick (st, x, (sc, y, (sg, z))) ->
RState TrGlobal SiniTCG (st, x, (sc, y, (sg, z))) ->
(st = Near /\ gt_Ck x kt1 \/ st = Inside) \/
InvT (st, Inc x) /\ (sc = Sc2 /\ eq_Ck y kc1 \/ sc = Sc4) \/
InvT (st, Inc x) /\
InvC (sc, Inc y) /\ (sg = Lowering \/ sg = Raising /\ ge_Ck z kg2)
end.

Lemma NoInvTick : forall s : StGlobal, noInvTick s.
Notation rsNext_In :=
(fun (x : Clock) (gt_x_kt1 : gt_Ck x kt1) (lt_x_kt2 : lt_Ck x kt2)
(sc_y : S_Ck SC) (sg_z : S_Ck SG) =>
rsNext (rsIni TrGlobal (Near, x, (sc_y, sg_z)))
(tGl_In (ttIn (x:=x) gt_x_kt1 lt_x_kt2) sc_y sg_z))
(only parsing).