Formal Methods

By a method I shall understand a set of principles , techniques and tools .
The principles structure the deployment of techniques and tools .

By a formal method I shall understand a method whose techniques and tools are mathematically based.

By a formal software development method I shall understand a formal method
where domain descriptions, requirements prescriptions and software designs
are expressed in mathematically founded specification languages
with the possibility of proving properties of steps and stages of development
(refinements within domain descriptions, requirements prescriptions, software designs and between these)
- properties such as correctness of software designs with respect to requirements
and satisfaction of user expectations (from software) with respect to domains.

Dines Bjorner 2017-01-12