Module VSD := VSD.

Lemma subst_pures_denote_sound_union : forall (l : list pure_atom) i e B, list_denote pure_atom_denote (@orp state) B (subst_pures i e l) = match map (subst_pure i e) l with | nil => B | _ :: _ => list_denote pure_atom_denote (@orp state) B (subst_pures i e l) end.