Section Machine.
Context {ge : Clight.genv}.
Definition getLocksR (tp : jstate ge) := listoption_inv (map snd (AMap.elements (lset tp))).
Definition maps tp := (getThreadsR tp ++ getLocksR tp)%list.
(** * Results about handling threads' rmaps *)
Instance JSem : Semantics := ClightSemanticsForMachines.Clight_newSem ge.
(** * Results about handling locks *)
(** * All of those results in terms of [maps] *)

Lemma maps_addthread tp v1 v2 phi :
Permutation (maps (addThread tp v1 v2 phi))
(phi :: maps tp).