Section StepLemmas.
Context {asmSem : Semantics}
{Sch: Scheduler}
{DilMem: DiluteMem}.
Existing Instance OrdinalPool.OrdinalThreadPool.
Existing Instance DryHybridMachine.dryResources.
Existing Instance DryHybridMachine.DryHybridMachineSig.
(** ***Lemmas about suspend steps*)

Lemma permission_at_step:
forall tp tp' m m' i j U tr tr'
(Hneq: i <> j)
(pfj: containsThread tp j)
(pfj': containsThread tp' j)
(Hcomp: mem_compatible tp m)
(Hcomp': mem_compatible tp' m')
(Hstep: MachStep (i :: U, tr, tp) m (U,tr',tp') m') b ofs,
permission_at (restrPermMap ((compat_th _ _ Hcomp) pfj).1) b ofs Cur =
permission_at (restrPermMap ((compat_th _ _ Hcomp') pfj').1) b ofs Cur.