current implementation assumes that one assignment problem may be use in more than assignment so if it is (dependent destroy) removed from one assignment it will be removed from the other.