let subst_havoc m a =
let addr = zone_of_assignable (assignable m a) in
let v = L.fresh "v" (Formula.Model(ADT("data",[]))) in
let km sigma =
let m0 = L.apply sigma m.store in
F.wrap(model_update_havoc m0 addr (F.var v))
in
[F.Fresh v;F.Update(m.x_store,km)]