Teaching Formal Methods and Discrete Mathematics
  Despite significant advancements in the conception of (formal) integrated development environments, applying formal methods in software industry is still perceived as a difficult task. To make the task easier, providing tools that help during the development cycle is essential but we think that education of computer scientists and software engineers is also an important challenge to take up. Indeed, we believe that formal methods courses do not appear sufficiently early in compter science curricula and thus are not widely used and perceived as a valid professional skill. In this paper, we claim that teaching formal methods could be done at the undergraduate level by mixing formal methods and discrete mathematics courses and we illustrate such an approach with a small develop- ment within FoCaLiZe. We also believe that this could considerably benefit the learning of discrete mathematics. 
Mathieu Jaume (LIP6-UPMC), Th\'eo Laurent (UPMC)
cs.CY cs.LO cs.SE