今回のマルレクでは、"Deep Specification" というソフトウェア・エンジニアリングの新しい潮流を紹介します。この流れは、ハードとソフトの開発に、コンピュータの数学的証明能力を利用して、プログラムの正しさをチェックしようというものです。 ほとんどの開発者にとっては、「機械がチェックする数学的証明」なぞは、アカデミーの世界の好奇心の対象ぐらいにしか思っていないかもしれません。プログラムの開発に「形式的手法」を導入しようという動きは、新しいものではありません。HoareのHoare Logicをはじめとして、1960年代末にはすでに生まれていました。その当時のシステムと比較して、現在のシステムは、はるかに大規模で複雑なものです。現在の大規模で複雑なシステムについても、「形式的手法」は有効なのでしょうか? MITのアダム・チッパラ(Adam Chlpala)は、むしろ逆だといいます