Remark in_remove:
  forall (A: Type) (eq: forall (x y: A), {x=y}+{x<>y}) x y l,
  In y (List.remove eq x l) <-> x <> y /\ In y l.

Lemma kill_equations_hold: forall valu ge sp rs m n pred m', numbering_holds valu ge sp rs m n -> (forall r v, pred r = false -> rhs_eval_to valu ge sp m r v -> rhs_eval_to valu ge sp m' r v) -> numbering_holds valu ge sp rs m' (kill_equations pred n).