Eu realmente acho que métodos "formais" não são uma boa idéia para fins educacionais. Nesse caso, programar um computador é um método "formal". Será que tem sucesso como uma ferramenta educacional?
O que é necessário é compreensão, intuição e capacidade de lidar com a abstração. Métodos formais impedem tudo isso. Em vez disso, eles promovem tentativa e erro, hackers, correspondência de padrões, imitação, com foco na sintaxe. A lista continua e continua.
Qualquer peça de matemática rigorosa ensinará às pessoas como raciocinar corretamente. Quanto mais simples o domínio, melhor. Tudo o que aprendi sobre raciocínio aprendi no ensino médio quando fiz a geometria euclidiana a sério. Cálculo e álgebra linear na Universidade fizeram o resto.
Outra alternativa atraente é a lógica filosófica, na qual ensinam as pessoas a pensar em declarações e a entender qual é o conteúdo da informação e qual é a consequência disso. Eles fazem isso sem afogar os estudantes em símbolos.
Se você fizer um balanço de todos os principais cientistas da computação, ficará surpreso com quantos deles têm treinamento formal em filosofia. Estamos perdendo tudo isso agora, porque os estudantes de filosofia agora pensam em Ciência da Computação como um assunto mundano. Fazer com que nossos alunos aprendam alguma filosofia pode contrariar isso até certo ponto. Faça com que eles trabalhem na History of Western Philosophy de Bertrand Russell . Isso fará maravilhas.
Se eles trabalham na teoria da linguagem de programação, você também pode ler Quine, a quem considero o "deus pai" da semântica denotacional. (Quine estava essencialmente fazendo semântica denotacional da linguagem natural no Word e Object , que foi uma fonte enorme de inspiração para Christopher Strachey. Mas este livro é bastante difícil.) A coleção editada Quintessence é uma boa fonte das idéias de Quine para iniciantes.
[Nota adicionada: uma vantagem da filosofia sobre a matemática é que os estudantes conseguem ver o debate , ou seja, conseguem ver o argumento "certo" e o argumento "errado" e vêem os especialistas demolindo os errados. Em matemática, nunca se vê um argumento errado, o que limita seu valor educacional.]