## Computation and specification models. A comparative study (2002)

Venue: | Department of Computer Science at University of Aarhus |

Citations: | 4 - 2 self |

### BibTeX

@INPROCEEDINGS{Börger02computationand,

author = {Egon Börger},

title = {Computation and specification models. A comparative study},

booktitle = {Department of Computer Science at University of Aarhus},

year = {2002},

pages = {107--130}

}

### OpenURL

### Abstract

For each of the principal current models of computation and of highlevel system design, we present a uniform set of transparent easily understandable descriptions, which are faithful to the basic intuitions and concepts of the investigated systems. Our main goal is to provide a mathematical basis for the technical comparison of established models of computation which can contribute to rationalize the scientific evaluation of different system specification approaches in the literature, clarifying in detail their advantages and disadvantages. As a side effect we obtain a powerful yet simple new conceptual framework for teaching the fundamentals of computation theory. 1

### Citations

2143 | A theory of timed automata
- Alur, Dill
- 1994
(Show Context)
Citation Context ...ream processing FSMs (stream processing components communicating among each other via input/output ports) by ASM state transformations of individual components. 4.1.3 Timed Automata In timed automata =-=[5]-=- letter input comes at a real-valued occurrence time which is used in the transitions where clocks record the time difference of the current input with respect to the previous input: time∆ = occurrenc... |

1360 | A Structural Approach to Operational Semantics
- Plotkin
- 1981
(Show Context)
Citation Context ... of inference rule applications. Most of these systems are not conceived to serve general-purpose specifications but are tailored to specific goals, the way Plotkin’s Structural Operational Semantics =-=[35]-=- or Kahn’s Natural Semantics or Mosses’ Action Semantics [45] are tailored for dealing with the semantics of programming languages. Numerous of these approaches are driven by structural patterns where... |

771 |
Parallel Program Design: A Foundation
- Chandy, Misra
- 1988
(Show Context)
Citation Context ...their characteristic semantical features to ASMs, without mentioning further the important executability aspect which clearly influenced the choice of the language constructs. The languages are UNITY =-=[28]-=- and COLD [32]. 5.1.1 UNITY Unity computations are sequences of state transitions where each step comprises the simultaneous execution of multiple conditional variable assignments, including quantifie... |

416 | Evolving algebra 1993: Lipari guide
- Gurevich
- 1995
(Show Context)
Citation Context ...peaking sets of ASMs whose runs are defined by appropriately constrained partial orders to reflect the intended causal dependencies between steps of different machines. The definition can be found in =-=[39]-=- and in [26, Ch.6]. 5.1 Executable High-Level Design Languages We discuss here two major executable high-level design languages of the 90’ies. We relate their characteristic semantical features to ASM... |

245 | Why interaction is more powerful than algorithms
- Wegner
- 1997
(Show Context)
Citation Context ...ing form: ScottMachine(Action, T est) = ctl state := IfT henElse(ctl state, T est(ctl state)(mem)) mem := Action(ctl state)(mem) 4.1.6 Interacting Turing Machines Wegner’s interactive Turing machines =-=[53]-=- in each step can receive some input from the environment and yield output to the environment. Thus they simply extend the TuringMachine by an additional input parameter and an output action TuringInt... |

235 | Abstract State Machines. A Method for High-Level System Design and Analysis
- Börger, Stärk
- 2003
(Show Context)
Citation Context ...ation theory. 1 Introduction The presentation of this work in the Action Semantics workshop started from Peter Mosses’ question to compare Action Notation (AN) [45] and Abstract State Machines (ASMs) =-=[26]-=-. Answering that question naturally led to a broader investigation, namely a comparative analysis of current specification and computation systems in terms of ASMs. In this paper we assume the reader ... |

171 |
The B-Book
- Abrial
- 1996
(Show Context)
Citation Context ... . . . seq pn 19s5.2 State-based Specification Languages For sequential state-based specification languages we discuss three representative systems: VDM [33] (denotational), Z [57] (axiomatic), and B =-=[1]-=- (pseudocode). As representative distributed state-based modeling systems we relate Petri nets [47] to asynchronous ASMs. 5.2.1 VDM, Z, B These three high-level design languages share the notion of co... |

160 |
Denotational semantics
- Mosses
- 1990
(Show Context)
Citation Context ... for teaching the fundamentals of computation theory. 1 Introduction The presentation of this work in the Action Semantics workshop started from Peter Mosses’ question to compare Action Notation (AN) =-=[45]-=- and Abstract State Machines (ASMs) [26]. Answering that question naturally led to a broader investigation, namely a comparative analysis of current specification and computation systems in terms of A... |

136 | Flow Diagrams, Turing Machines, and Languages with Only Two Formation Rules
- Jacopini, B¬ohm
- 1966
(Show Context)
Citation Context ...ASMs). This allows one to provide succinct ASMs for standard programming constructs, as we are going to illustrate by turbo ASMs for the celebrated Structured Programming Theorem of Böhm and Jacopini =-=[12]-=-, thus showing how to combine the advantages of Gödel-Herbrand style functional and of Turing style imperative programming. Call Böhm-Jacopini-ASM any ASM M which can be defined, using only seq, while... |

103 | Java and the Java Virtual Machine: Definition, Verification, Validation
- Stärk, Schmid, et al.
- 2001
(Show Context)
Citation Context ... machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine [22] and 21sits extensions [8, 23, 10, 9, 7], the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine =-=[52]-=-, the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems There is a myriad of logic-based and algebraic specification and ‘declarative pro... |

81 |
Introducing Dynamic Constraints in B
- Abrial, Mussat
- 1998
(Show Context)
Citation Context ...of Z specifications, their before-after expressions define the entire system dynamics. In B as in the ASM method, the formulation of the system dynamics—in B by operations (in event-based B by events =-=[2, 3, 4]-=-), in ASMs by rules—is separated from the formulation of the static state invariants 20sand of the dynamic run constraints, which express desired system properties one has to prove to hold through eve... |

75 | The WAM—definition and compiler correctness
- Börger, Rosenzweig
- 1995
(Show Context)
Citation Context ...iate to the specific purpose. Thus they ‘are’ particular ASMs. In fact for design or analysis purposes numerous virtual machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine =-=[22]-=- and 21sits extensions [8, 23, 10, 9, 7], the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), ... |

61 | Abstract state machines capture parallel algorithms
- Blass, Gurevich
(Show Context)
Citation Context ... ASMs): Every computational device can be simulated by an appropriate dynamic structure—of appropriately the same size—in real time For the synchronous parallel case of this thesis Blass and Gurevich =-=[11]-=- discovered postulates from which every synchronous parallel computational device could be proved to be simulatable in lock-step by an appropriate ASM. Why are we not satisfied with the ASMs construct... |

56 | High-level system design and analysis using Abstract State Machines
- Börger
- 1999
(Show Context)
Citation Context ...theory. 3 UML Diagrams for System Dynamics For the modeling purpose, we use a generalization of Finite State Machines (FSMs) to a class of Abstract State Machines (ASMs) which have been introduced in =-=[15]-=- under the name of control state ASMs and are tailored to UML diagram visualizable machines. A control state ASM is an ASM whose rules are all of the following form: if ctl state = i then if cond1 the... |

56 | A mathematical definition of full Prolog
- Börger, Rosenzweig
- 1995
(Show Context)
Citation Context ...de := next(candidates(currnode)) Delete(next(candidates(currnode)), currnode) We show now that by pure data refinements Backtrack can be turned into the backtracking engine for the core of ISO Prolog =-=[21]-=-, of IBM’s constraint logic programming language CLP(R) [23], of the functional programming language Babel [19], and also for context free and for attribute grammars [42]. 4.2.2 Logic Programming Engi... |

49 | Correctness of compiling occam to transputer code
- Börger, Durdanović
- 1996
(Show Context)
Citation Context .... In fact for design or analysis purposes numerous virtual machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine [22] and 21sits extensions [8, 23, 10, 9, 7], the Transputer =-=[18]-=-, the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems There is a myriad of lo... |

47 |
Modelling Systems
- Fitzgerald, Larsen
- 1998
(Show Context)
Citation Context ...ose n ∈ N, choose p1, . . . , pn ∈ P roc p1 seq . . . seq pn 19s5.2 State-based Specification Languages For sequential state-based specification languages we discuss three representative systems: VDM =-=[33]-=- (denotational), Z [57] (axiomatic), and B [1] (pseudocode). As representative distributed state-based modeling systems we relate Petri nets [47] to asynchronous ASMs. 5.2.1 VDM, Z, B These three high... |

41 | An ASM Semantics for UML Activity Diagrams
- Börger, Cavarra, et al.
- 2000
(Show Context)
Citation Context ...ly the conditions are supposed or guaranteed to be disjoint to avoid conflicting updates which would stop the ASM computation. Control state ASMs represent a normal form for UML activity diagrams (see=-=[17]-=-) from where they inherit the graphical representation of control states by circles or by (possibly named) directed arcs, to visually distinguish the control-passing role of control states from that o... |

35 | The Origins and the Development of the ASM Method for High Level System Design and Analysis". 2002
- Börger
(Show Context)
Citation Context ...ch-Turing thesis [38] led to an arguably most general notion of virtual machine which became the mathematical basis of the broadspectrum high-level ASM method for practical system design and analysis =-=[16]-=-. The differences in origin and goal explain also the major technical differences in the realization of AN and ASMs. Actions in AN categorize what in ASMs comes as abstract, a priori unclassified func... |

33 | Model Checking Abstract State Machines - Winter - 2001 |

32 | On the construction of correct compiler back-ends: An ASM-approach - Zimmermann, Gaul - 1997 |

31 | Reasoning about Abstract State Machines: The WAM Case Study - Schellhorn, Ahrendt - 1997 |

27 | Composition and Submachine Concepts for Sequential ASMs
- Börger, Schmid
- 2000
(Show Context)
Citation Context ...rsion trees (with terminal yield except for the root variable), see [42]. 4.3 Structured Programming In this section we model standard structured programming constructs by natural classes of ASMs. In =-=[24]-=- two operators seq and iterate have been defined to compose ASMs sequentially and iteratively, capturing these two notions in a black-box view which fits the synchronous parallelism of ASMs, hiding in... |

25 | What is an algorithm
- Moschovakis
- 2001
(Show Context)
Citation Context ...rbo ASMs. A black-box submachine concept for value returning turbo ASMs has been defined in [24] which abstractly models the standard imperative calling mechanism. Triggered by the question raised in =-=[44]-=-: ‘If algorithms are machines, then which machine is the mergesort?’, the definition has been applied in [13] for simultaneous calls of multiple submachines, to seamlessly integrate functional descrip... |

21 | A Practical Method for Rigorously Controllable Hardware Design, in: ZUM’97: The Z Formal Specification Notation
- Börger, Mazzanti
- 1997
(Show Context)
Citation Context ...lysis purposes numerous virtual machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine [22] and 21sits extensions [8, 23, 10, 9, 7], the Transputer [18], the RISC machine DLX =-=[20]-=-, the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems There is a myriad of logic-based and algebraic spe... |

19 |
A new thesis
- Gurevich
- 1985
(Show Context)
Citation Context ...se between competing language development requirements, corresponding to views of the designer, the implementer and the programmer. Gurevich’s foundational concern to sharpen the Church-Turing thesis =-=[38]-=- led to an arguably most general notion of virtual machine which became the mathematical basis of the broadspectrum high-level ASM method for practical system design and analysis [16]. The differences... |

18 | Encoding Abstract State Machines in PVS - Gargantini, Riccobene - 2000 |

18 | Compiler correctness and implementation verification: The verifix approach - Goerik, Dold, et al. - 1996 |

16 |
Formal Specification and Design
- Feijs, Jonkers
- 1992
(Show Context)
Citation Context ...ristic semantical features to ASMs, without mentioning further the important executability aspect which clearly influenced the choice of the language constructs. The languages are UNITY [28] and COLD =-=[32]-=-. 5.1.1 UNITY Unity computations are sequences of state transitions where each step comprises the simultaneous execution of multiple conditional variable assignments, including quantified array variab... |

15 | R.: CLAM Specification for Provably Correct Compilation of CLP(R
- Börger, Salamone
- 1995
(Show Context)
Citation Context ...node)), currnode) We show now that by pure data refinements Backtrack can be turned into the backtracking engine for the core of ISO Prolog [21], of IBM’s constraint logic programming language CLP(R) =-=[23]-=-, of the functional programming language Babel [19], and also for context free and for attribute grammars [42]. 4.2.2 Logic Programming Engine We data refine here Backtrack to the backtracking engine ... |

15 | Verification of compiler correctness for the WAM - Pusch - 1996 |

14 | W.: The WAM case study: Verifying compiler correctness for Prolog with KIV - Schellhorn, Ahrendt - 1998 |

14 |
Some definitional suggestions for automata theory
- Scott
- 1967
(Show Context)
Citation Context ...f such systems again and again for each variation of the underlying concept of algorithm. This generalizes the uniform semantical frame underlying Scott’s definitional suggestions for automata theory =-=[51]-=-. In this section we suppose the reader to know the basic concepts of computation theory (see any textbook on the subject, e.g. [14]). 4.1 Automata We model here classical automata concepts, computati... |

13 |
Elements of Distributed Algorithms
- Reisig
- 1998
(Show Context)
Citation Context ...languages we discuss three representative systems: VDM [33] (denotational), Z [57] (axiomatic), and B [1] (pseudocode). As representative distributed state-based modeling systems we relate Petri nets =-=[47]-=- to asynchronous ASMs. 5.2.1 VDM, Z, B These three high-level design languages share the notion of computation as sequence of state transitions given by a before-after relation, where states are forme... |

12 | Correctness proof for the WAM with types
- Beierle, Borger
- 1992
(Show Context)
Citation Context ...e. Thus they ‘are’ particular ASMs. In fact for design or analysis purposes numerous virtual machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine [22] and 21sits extensions =-=[8, 23, 10, 9, 7]-=-, the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems Th... |

12 | M.: A Model for Mathematical Analysis of Functional Logic Programs and their Implementations. In
- Borger, Lopez-Fraguas, et al.
- 1994
(Show Context)
Citation Context ...inements Backtrack can be turned into the backtracking engine for the core of ISO Prolog [21], of IBM’s constraint logic programming language CLP(R) [23], of the functional programming language Babel =-=[19]-=-, and also for context free and for attribute grammars [42]. 4.2.2 Logic Programming Engine We data refine here Backtrack to the backtracking engine for Prolog by instantiating the function alternativ... |

12 | High-level executable specification of the universal plug and play architecture
- Glässer, Gurevich, et al.
- 2002
(Show Context)
Citation Context ...ne [22] and 21sits extensions [8, 23, 10, 9, 7], the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture =-=[36]-=-), etc. 5.3 Logic Based Modeling Systems There is a myriad of logic-based and algebraic specification and ‘declarative programming’ languages and calculi, like Prolog and its numerous variants, VDM, Z... |

11 | Zimmerman,w.: ASM-based mechanized verification of compiler back-ends - Dol, Gaul, et al. - 1998 |

11 | Towards a methodology for model checking ASM: Lessons learned from the FLASH case study - Winter |

10 |
Specification and Design of a Transmission Protocol by Successive Refinements Using B
- Abrial, Mussat
- 1997
(Show Context)
Citation Context ...of Z specifications, their before-after expressions define the entire system dynamics. In B as in the ASM method, the formulation of the system dynamics—in B by operations (in event-based B by events =-=[2, 3, 4]-=-), in ASMs by rules—is separated from the formulation of the static state invariants 20sand of the dynamic run constraints, which express desired system properties one has to prove to hold through eve... |

10 | E.: Specification and correctness proof of a WAM extension with abstract type constraints
- Beierle, Börger
- 1996
(Show Context)
Citation Context ...e. Thus they ‘are’ particular ASMs. In fact for design or analysis purposes numerous virtual machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine [22] and 21sits extensions =-=[8, 23, 10, 9, 7]-=-, the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems Th... |

9 | E.: Refinement of a typed WAM extension by polymorphic order-sorted types
- Beierle, Börger
- 1996
(Show Context)
Citation Context ...e. Thus they ‘are’ particular ASMs. In fact for design or analysis purposes numerous virtual machines have been explicitly modeled as ASMs, e.g. the Warren Abstract Machine [22] and 21sits extensions =-=[8, 23, 10, 9, 7]-=-, the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine [25], the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems Th... |

9 |
Remarks on turbo asms for computing functional equations and recursion schemes
- Börger, Bolognesi
- 2003
(Show Context)
Citation Context ...ctly models the standard imperative calling mechanism. Triggered by the question raised in [44]: ‘If algorithms are machines, then which machine is the mergesort?’, the definition has been applied in =-=[13]-=- for simultaneous calls of multiple submachines, to seamlessly integrate functional description and programming techniques into ASMs. We illustrate this by a natural model for widely used forms of rec... |

9 | Verifikation abstrakter Zustandsmaschinen - Schellhorn - 1999 |

8 | Grammar formalisms viewed as evolving algebras
- Johnson, Moss
- 1994
(Show Context)
Citation Context ...ne for the core of ISO Prolog [21], of IBM’s constraint logic programming language CLP(R) [23], of the functional programming language Babel [19], and also for context free and for attribute grammars =-=[42]-=-. 4.2.2 Logic Programming Engine We data refine here Backtrack to the backtracking engine for Prolog by instantiating the function alternatives to the function procdef(stm, pgm). This is a Prolog spec... |

7 | Generating an action notation environment from Montages descriptions
- Anlauff, Chakraborty, et al.
(Show Context)
Citation Context ..., compilers, etc., whereas ASMs support a general-purpose method which covers all system design and analysis aspects. In fact ASMs have been specialized to provide an executable semantics for AN, see =-=[6]-=- which contains also further details on tailoring ASMs to fit the AN framework. In the rest of this paper we use ASMs as a framework for a comparative analysis of other specification and computation s... |

7 |
Taking Z seriously
- Hall
- 1997
(Show Context)
Citation Context ...x := t and parallel composition are derived). Differently from Z, which due to the purely axiomatic character of Z descriptions has intrinsic problems to turn specifications into executable code (see =-=[40]-=-), VDM and B are geared to obtain software modules from abstract specifications via refinements which are tailored to the proof rules used for proving that the refined operations satisfy ‘unchanged’ p... |

7 |
Models of computation for system design
- Lavagno, Sangiovanni-Vincentelli, et al.
- 2000
(Show Context)
Citation Context ...n rule, j). 6sMealyAsms appear for example as components of co-design FSMs where rules are needed to compute arbitrary combinational (external and instantaneous) functions. Co-design FSMs are used in =-=[43]-=- for high-level architecture design and specification and for a precise comparison of current models of computation. Other examples of MealyAsms will be shown below. If one prefers to write FSM progra... |

6 | A Formal Representation of Abstract State Machines Using PVS. Veri x - Dold - 1998 |

5 | A neural abstract machine
- Börger, Sona
- 2001
(Show Context)
Citation Context ...g. the Warren Abstract Machine [22] and 21sits extensions [8, 23, 10, 9, 7], the Transputer [18], the RISC machine DLX [20], the Java Virtual Machine [52], the Neural Net (abstract data flow) Machine =-=[25]-=-, the UPnP architecture [36]), etc. 5.3 Logic Based Modeling Systems There is a myriad of logic-based and algebraic specification and ‘declarative programming’ languages and calculi, like Prolog and i... |