Instance JSem : Semantics := ClightSemanticsForMachines.Clight_newSem ge.

(* Specifications: *)
Lemma getThreadR_nth i tp cnti :
nth_error (getThreadsR tp) i = Some (@getThreadR _ _ _ i tp cnti).
Lemma getThreadsR_but i tp cnti :
Permutation
(getThreadsR tp)
(@getThreadR _ _ _ i tp cnti :: all_but i (getThreadsR tp)).
Lemma eqtype_refl n i cnti cntj :
@eqtype.eq_op
(fintype.ordinal_eqType n)
(@fintype.Ordinal n i cnti)
(@fintype.Ordinal n i cntj)
= true.
Lemma eqtype_refl' n i j cnti cntj :
i = j ->
@eqtype.eq_op
(fintype.ordinal_eqType n)
(@fintype.Ordinal n i cnti)
(@fintype.Ordinal n j cntj)
= true.
Lemma eqtype_neq n i j cnti cntj :
i <> j ->
@eqtype.eq_op
(fintype.ordinal_eqType n)
(@fintype.Ordinal n i cnti)
(@fintype.Ordinal n j cntj)
= false.
Lemma updThreadR_but i tp cnti phi :
Permutation
(getThreadsR (@updThreadR _ _ _ i tp cnti phi))
(phi :: all_but i (getThreadsR tp)).
Lemma updThread_but i tp cnti c phi :
Permutation
(getThreadsR (@updThread _ _ _ i tp cnti c phi))
(phi :: all_but i (getThreadsR tp)).