arXiv · 2601.15230
How to Verify a Turing Machine with Dafny
Abstract
This paper describes the formal verification of two Turing machines using the program verifier Dafny. Both machines are deciders, so we prove total correctness. They are typical first examples of Turing machines used in any course of Theoretical Computer Science; in fact, the second machine is literally taken from a relevant textbook. Usually, the correctness of such machines is made plausible by some informal explanations of their basic ideas, augmented with a few sample executions, but neither by rigorous mathematical nor mechanized formal proof. No wonder: The invariants (and variants) required for such proofs are big artifacts, peppered with overpowering technical details. Finding and checking these artifacts without mechanical support is practically impossible, and such support is only available since recent times. But nowadays, just because of these technicalities, with such subjects under proof a program verifier can really show off and demonstrate its capabilities.
Explore related subjects
Keep this discovery
Edgar F. A. Lederer. 2026-01-21. How to Verify a Turing Machine with Dafny. https://arxiv.org/abs/2601.15230
Cite the original work for its findings. Save a collection to share your selection of sources.