Over the last decade, artificial Neural Networks (NNs) have been widely used in many applications including safety-critical ones, such as autonomous systems. Hence, it is highly important to provide guarantees that such systems work correctly. In this work, we exploit methods from the field of formal verification, to produce a correct system from a given specification. Specifically, we introduce a framework for repairing an unsafe NN w.r.t. safety properties. Further, we perform extensive experiments to demonstrate the capabilities of our proposed framework for generating correct NNs. To prove our method’s effectiveness, we compare it to a naive baseline. Lastly, we provide an algorithm to automatically repair NNs given safety requirements.