The economists John von Neumann and Oskar Morgenstern wrote: “There is no point in using exact methods where there is no clarity in the concepts and issues to which they are to be applied." The lack of clarity should be repaired by "further careful descriptive work.” The careful description would not be formal.
That’s true also of software engineering for cyber-physical systems. Use of formal models is aptly characterised as exact methods. The knowledge to be first clarified is knowledge of the behaviours that can satisfy the stakeholders’ requirements; the further careful descriptive work is exploring and understanding the requirements and the physical world, and describing the system behaviour in preparation for formal modelling and reasoning.
If the subject matter in hand is already familiar—as it may be when developing a normal design to satisfy standard requirements in a well-known governed world—there is less need for further description and formal modelling may proceed sooner. But if the task is radical design to satisfy novel requirements, much exploratory and investigative work is needed, and explicitly recorded results. Choosing a formalsm before this descriptive work is a bad mistake: no formalism can be properly chosen while the subject to be formalized is not yet thoroughly understood. The essence of formalism is abstraction: irrelevant details and aspects of the subject matter are ignored. A formalism may ignore causality or conation; it may exclude continuous phenomena; it may support events but not entities; it may allow individual event instances but not sequencing of related events; it may ignore time altogether. The exploratory investigation must be free to reveal, as clearly as possible, what is important and what is not. Only then can informed judgment make the choice of formalisms to be used.
Natural language, supplemented by informal diagrammatic and other—including some formal—notations, meets the needs of free exploration and description. Unlike a formal language, natural language does not by its very use constrain what can be said. It easily accommodates the use and comparison of diverse perspectives. It tolerates useful contradiction: “The London Underground lines are all bidirectional, with few exceptions” we may say, without being obliged to describe—or even identify—every exception. It welcomes new vocabulary and reuse of old concepts, expressions and structures to capture new aspects and concerns. Well used, it can be immediately comprehensible. Describing a subject in natural language is a stimulus to further investigation; as the philosopher Wittgenstein said: “to utter a word is to strike a note on the keyboard of the imagination.”
In contrast, the logician David Hilbert said : “It must be possible to replace in all geometric statements the words point, line, plane, by table, chair, mug.” The terms used in a formula have no connotation: they play only their defined roles in the axioms and calculus of the formal system. In effect, a fully formal representation of a system is an abstract universe, conceptually disjoint from the physical system itself. If work in this abstract universe is to serve the purposes of development well, the formalisation must rest on a deep, detailed, and informal understanding of the physical reality.
Natural language is not a weaker alternative to formalism. It is formalism’s stronger precursor for exploring and analysing the intricate properties of the physical world, and identifying specific needs for formal modelling, calculation and proof.
 John von Neumann and Oskar Morgenstern; Theory of Games and Economic Behaviour; Princeton University Press, 1944.
 David Hilbert, quoted by Hermann Weyl; David Hilbert and His Mathematical Work; Bulletin of the AMS Volume 50, 1944, page 612-654.
Post a Comment