Definition the_ge := Globalenvs.Genv.globalenv the_program.Instance X86Sem: Semantics:=
      { semG:= Asm.genv;
         semC:= Asm.state;
         semSem:= Asm_EvSem the_ge Hsafe;
         the_ge := the_ge
      }.Definition AsmHybridMachine    := @dryCoarseMach X86Sem.Definition AsmConcurSem    := HybridMachineSig.HybridMachineSig.ConcurMachineSemantics
                                  (HybridMachine:= AsmHybridMachine).Definition AsmFineHybridMachine    := @dryFineMach X86Sem.Definition AsmFineConcurSem    := HybridMachineSig.HybridMachineSig.ConcurMachineSemantics
                                  (HybridMachine:= AsmFineHybridMachine).(** The initial state 
      There are three, but all should be equivalent. *)
  Definition Asm_initial_state := tpc_init(asmSem:=X86Sem).Definition Asm_initial_state_fine := tpf_init(asmSem:=X86Sem).Definition Asm_initial_state_bare := bare_init(asmSem:=X86Sem).Notation the_ge := (@the_ge the_program).Instance X86Sem: Semantics := @X86Sem the_program Hsafe.

Lemma mem_step_obeys_cur_write: forall m b ofs m', Memory.Mem.valid_block m b -> ~ Memory.Mem.perm m b ofs Memtype.Cur Memtype.Writable -> mem_step m m' -> ZMap.get ofs (PMap.get b (Memory.Mem.mem_contents m)) = ZMap.get ofs (PMap.get b (Memory.Mem.mem_contents m')).