Instance X86Sem : Semantics := @X86Context.X86Sem the_program Hsafe.Definition reg_erasure (r:PregEq.t) (rs rs' : regset) : Prop :=
      val_erasure (Pregmap.get r rs) (Pregmap.get r rs').Definition regs_erasure rs rs' : Prop :=
      forall r, reg_erasure r rs rs'.Definition core_erasure c c' :=
      match c, c' with
      | State rs  _, State rs' _ =>
        regs_erasure rs rs'
      end.

(* Specifications: *)
Lemma regs_erasure_refl: forall rs, regs_erasure rs rs.
Lemma core_erasure_refl: forall c, core_erasure c c.
Lemma regs_erasure_get: forall rs rs' r, regs_erasure rs rs' -> val_erasure (rs r) (rs' r).