  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.
