Education in the practical applications of logic and proving such as the
formal specification and verification of computer programs is substantially
hampered by the fact that most time and effort that is invested in proving is
actually wasted in vain: because of errors in the specifications respectively
algorithms that students have developed, their proof attempts are often
pointless (because the proposition proved is actually not of interest) or a
priori doomed to fail (because the proposition to be proved does actually not
hold), this is a frequent source of frustration and gives formal methods a bad
reputation. RISCAL (RISC Algorithm Language) is a formal specification language
and associated software system that attempts to overcome this problem by making
logic formalization fun rather than a burden. To this end, RISCAL allows
students to easily validate the correctness of instances of propositions
respectively algorithms by automatically evaluating/executing and checking them
on (small) finite models. Thus many/most errors can be quickly detected and
subsequent proof attempts can be focused on propositions that are more/most
likely to be both meaningful and true.Comment: In Proceedings ThEdu'17, arXiv:1803.0072