Egon Börger

dblp:b/EgonBorger · DBLP profile ↗
← Back
37ranked-venue papers
29as first author
1since 2021 · last 2024
0000-0002-6062-9455ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 23 · 19 first-author · 1 since 2021Software engineering, systems software and programming languages · 13 · 10 first-author · 1 since 2021Applied, interdisciplinary, general and emerging computing · 3 · 2 first-authorDatabases, data management, data science and information retrieval · 2 · 1 first-author
YearPublicationVenuePosition
2024 A Lean Reflective Abstract State Machine Definition
Egon Börger, Vincenzo Gervasi
ABZ1
2020 A Behavioural Theory of Recursive Algorithms
abstract
“What is an algorithm?” is a fundamental question of computer science. Gurevich’s behavioural theory of sequential algorithms (aka the sequential ASM thesis) gives a partial answer by defining (non-deterministic) sequential algorithms axiomatically, without referring to a particular machine model or programming language, and showing that they are captured by (nondeterministic) sequential Abstract State Machines (nd-seq ASMs). However, recursive algorithms such as mergesort are not covered by this theory, as has been pointed out by Moschovakis, who had independently developed a different framework to mathematically characterize the concept of (in particular recursive) algorithm. In this article we propose an axiomatic definition of the notion of sequential recursive algorithm which extends Gurevich’s axioms for sequential algorithms by a Recursion Postulate and allows us to prove that sequential recursive algorithms are captured by recursive Abstract State Machines, an extension of nd-seq ASMs by a CALL rule. Applying this recursive ASM thesis yields a characterization of sequential recursive algorithms as finitely composed concurrent algorithms all of whose concurrent runs are partial-order runs.
Egon Börger, Klaus-Dieter Schewe
Fundam. Informaticae1
2019 Concurrent Computing with Shared Replicated Memory
Klaus-Dieter Schewe, Andreas Prinz 0001, Egon Börger
MEDI3
2018 Why Programming Must Be Supported by Modeling and How
Egon Börger
ISoLA (1)1
2017 The abstract state machines method for modular design and analysis of programming languages
abstract
Journal Article The abstract state machines method for modular design and analysis of programming languages Get access Egon Börger Egon Börger Search for other works by this author on: Oxford Academic Google Scholar Journal of Logic and Computation, Volume 27, Issue 2, March 2017, Pages 417–439, https://doi.org/10.1093/logcom/exu077 Published: 18 December 2014 Article history Received: 26 May 2013 Published: 18 December 2014
Egon Börger
J. Log. Comput.1
2016 Concurrent abstract state machines
abstract
A concurrent Abstract State Machine (ASM) is a family of agents each equipped with a sequential ASM to execute. We define the semantics of concurrent ASMs by concurrent ASM runs which overcome the problems of Gurevich’s distributed ASM runs and generalize Lamport’s sequentially consistent runs. A postulate characterizing an intuitive understanding of concurrency is formulated. It allows us to state and prove an extension of the sequential ASM thesis to a concurrent ASM thesis.
Egon Börger, Klaus-Dieter Schewe
Acta Informatica1
2016 Serialisable multi-level transaction control: A specification and verification
abstract
We define a programming language independent controller TaCtl for multi-level transactions and an operator TA, which when applied to concurrent programs with multi-level shared locations containing hierarchically structured complex values, turns their behavior with respect to some abstract termination criterion into a transactional behaviour. We prove the correctness property that concurrent runs under the transaction controller are serialisable, assuming an Inverse Operation Postulate to guarantee recoverability. For its applicability to a wide range of programs we specify the transaction controller TaCtl and the operator TA in terms of Abstract State Machines (ASMs). This allows us to model concurrent updates at different levels of nested locations in a precise yet simple manner, namely in terms of partial ASM updates. It also provides the possibility to use the controller TaCtl and the operator TA as a plug-in when specifying concurrent system components in terms of sequential ASMs.
Egon Börger, Klaus-Dieter Schewe, Qing Wang 0002
Sci. Comput. Program.1
2014 Modeling web applications infrastructure with ASMs
Vincenzo Gervasi, Egon Börger, Antonio Cisternino
Sci. Comput. Program.2
2012 Contribution to a Rigorous Analysis of Web Application Frameworks
Egon Börger, Antonio Cisternino, Vincenzo Gervasi
IFM1
2012 Ambient Abstract State Machines with applications
Egon Börger, Antonio Cisternino, Vincenzo Gervasi
J. Comput. Syst. Sci.1
2012 Approaches to modeling business processes: a critical analysis of BPMN, workflow patterns and YAWL
Egon Börger
Softw. Syst. Model.1
2011 Editorial
abstract
No abstract available.
Egon Börger
Formal Aspects Comput.1
2007 Modeling Workflow Patterns from First Principles
Egon Börger
ER1
2007 Construction and analysis of ground models and their refinements as a foundation for validating computer-based systems
abstract
Abstract We explain why for the verified software challenge proposed in Hoare (J ACM 50(1): 63–69, 2003), Hoare and Misra (Verified software: theories, tools, experiments. Vision of a Grand Challenge project. In: [Meyer05]) to gain practical impact, one needs to include rigorous definitions and analysis, prior to code development and comprising both experimental validation and mathematical verification, of ground models , i.e., blueprints that describe the required application-content of programs. This implies the need to link via successive refinements the relevant properties of such high-level models in a traceable and checkable way to code a compiler can verify. We outline the Abstract State Machines (ASM) method, a discipline for reliable system development which allows one to bridge the gap between informal requirements and executable code by combining application-centric experimentally validatable system modelling with mathematically verifiable stepwise detailing of abstract models to compile-time-verifiable code.
Egon Börger
Formal Aspects Comput.1
2005 An Abstract Model for Process Mediation
Michael Altenhofen, Egon Börger, Jens Lemcke
ICFEM2
2005 A Compositional Framework for Service Interaction Patterns and Interaction Flows
Alistair Barros, Egon Börger
ICFEM2
2005 Abstract State Machines: a unifying view of models of computation and of system design frameworks
Egon Börger
Ann. Pure Appl. Log.1
2005 Abstract state machines and high-level system design and analysis
Egon Börger
Theor. Comput. Sci.1
2005 A high-level modular definition of the semantics of C#
abstract
We propose a structured mathematical definition of the semantics of C♯ programs to provide a platform-independent interpreter view of the language for the C♯ programmer, which can also be used for a precise analysis of the ECMA standard of the language and as a reference model for teaching. The definition takes care to reflect directly and faithfully—as much as possible without becoming inconsistent or incomplete—the descriptions in the C♯ standard to become comparable with the corresponding models for Java in Stärk et al. (Java and Java Virtual Machine—Definition, Verification, Validation, Springer, Berlin, 2001) and to provide for implementors the possibility to check their basic design decisions against an accurate high-level model. The model sheds light on some of the dark corners of C♯ and on some critical differences between the ECMA standard and the implementations of the language.
Egon Börger, Nicu G. Fruja, Vincenzo Gervasi, Robert F. Stärk
Theor. Comput. Sci.1
2004 On formalizing UML state machines using ASM
Egon Börger, Alessandra Cavarra, Elvinia Riccobene
Inf. Softw. Technol.1
2003 The ASM Refinement Method
abstract
Abstract In this paper the abstract state machine (ASM) refinement method is presented. Its characteristics compared to other refinement approaches in the literature are explained. Some frequently occurring forms of ASM refinements are identified and illustrated by examples from the design and verification of architectures and protocols, from the semantics and the implementation of programming languages and from requirements engineering.
Egon Börger
Formal Aspects Comput.1
2000 Composition and Submachine Concepts for Sequential ASMs
Egon Börger, Joachim Schmid 0001
CSL1
2000 A Practical Method for Specification and Analysis of Exception Handling - A Java/JVM Case Study
abstract
We provide a rigorous framework for language and platform independent design and analysis of exception handling mechanisms in modern programming languages and their implementations. To illustrate the practicality of the method we develop it for the exception handling mechanism of Java and show that its implementation on the Java Virtual Machine (JVM) Is correct. For this purpose we define precise abstract models for exception handling in Java and in the JVM and define a compilation scheme of Java to JVM code which allows us to prove that, in corresponding runs, Java and the JVM throw the same exceptions and with equivalent effect. Thus, the compilation scheme can, with reasonable confidence, be used as a standard reference for Java exception handling compilation.
Egon Börger, Wolfram Schulte
IEEE Trans. Software Eng.1
1998 Defining the Java Virtual Machine as Platform for Provably Correct Java Compilation
Egon Börger, Wolfram Schulte
MFCS1
1997 A Description of the Tableau Method Using Abstract State Machines
abstract
Starting from the textbook formulation of the tableau calculus we give an operational description of the tableau method in terms of abstract state machines at various levels of refinement ending after four stages at a specification that is very close to the lean TAP implementation of the tableau calculus in PROLOG. Proofs of correctness and completeness of the refinement steps are given.
Egon Börger, Peter H. Schmitt
J. Log. Comput.1
1996 Correctness of Compiling Occam to Transputer Code
abstract
This paper contributes to the development of a rigorous mathematical framework for the study of provably correct compilation techniques. The proposed method is developed through an implementation of a real-life non-toy imperative programming language with non-determinism and parallelism, i.e. Occam, to a commercial machine, namely the Transputer. We provide a mathematical definition of the Transputer Instruction Set architecture for executing Occam together with a correctness proof for a general compilation schema of Occam programs into Transputer code. We start from the ground model, an abstract processor, running a high and a low priority queue of Occam processes, which formalizes the semantics of Occam at the abstraction level of atomic Occam instructions. We develop here increasingly more refined levels of Transputer semantics, proving correctness (and when possible also completeness) for each refinement step. Along the way we collect our proof assumptions, a set of natural conditions for a compiler to be correct, thus making our proof applicable to a large class of compilers. As a by-product our construction provides a challenging realistic case study for proof verification by theorem provers.
Egon Börger, Igor Durdanovic
Comput. J.1
1996 Specification and Correctness Proof of a WAM Extension with Abstract Type Constraints
abstract
Abstract We provide a mathematical specification of an extension of Warren's Abstract Machine (WAM) for executing Prolog to type-constraint logic programming and prove its correctness. Our aim is to provide a full specification and correctness proof of a concrete system, the PROTOS Abstract Machine (PAM), an extension of the WAM by polymorphic order-sorted unification as required by the logic programming language PROTOS-L. In this paper, while leaving the details of the PAM's type constraint representation and solving facilities to a sequel to this work, we keep the notion of types and dynamic type constraints abstract to allow applications to different constraint formalisms like Prolog III or CLP(R). This generality permits us to introduce modular extensions of Börger's and Rosenzweig's formal derivation of the WAM. Since the type constraint handling is orthogonal to the compilation of predicates and clauses, we start from type-constraint Prolog algebras with compiled AND/OR structure that are derived from Börger's and Rosenzweig's corresponding compiled standard Prolog algebras. The specification of the type-constraint WAM extension is then given by a sequence of evolving algebras, each representing a refinement level, and for each refinement step a correctness proof is given. Thus, we obtain the theorem that for every such abstract type-constraint logic programming system L, every compiler to the WAM extension with an abstract notion of types which satisfies the specified conditions, is correct.
Christoph Beierle, Egon Börger
Formal Aspects Comput.2
1996 Refinement of a Typed WAM Extension by Polymorphic Order-Sorted Types
abstract
Abstract We refine the mathematical specification of a WAM extension to typeconstraint logic programming given in [BeB96]. We provide a full specification and correctness proof of the PROTOS Abstract Machine (PAM), an extension of the WAM by polymorphic order-sorted unification as required by the logic programming language PROTOS-L, by refining the abstract type constraints used in [BeB96] to the polymorphic order-sorted types of PROTOS-L. This allows us to develop a detailed and mathematically precise account of the PAM's compiled type constraint representation and solving facilities, and to extend the correctness theorem to compilation on the fully specified PAM.
Christoph Beierle, Egon Börger
Formal Aspects Comput.2
1995 A formal method for provably correct composition of a real-life processor out of basic components. (The APE100 Reverse Engineering Study
abstract
We present a design approach which allows us to formally specify a real-life processor as composed out of its basic architectural (formally specified) components. The methodology provides means to rely upon hierarchical refinements and modular structuring of the specifications as a discipline to control the behaviour of complex units in terms of the behaviour of their components. In particular this enables us to prove interesting dynamic properties about the processor in terms of properties of its basic architectural components. We have developed the method to accomplish a reverse engineering project for the VLSI implemented microprocessor zCPU, the controller of the successful APE100 massively parallel machine.
Egon Börger, Giuseppe Del Castillo
ICECCS1
1995 Why Use Evolving Algebras for Hardware and Software Engineering?
Egon Börger
SOFSEM1
1995 A Mathematical Definition of Full Prolog
Egon Börger, Dean Rosenzweig
Sci. Comput. Program.1
1993 Full Prolog in a Nutshell
Egon Börger, Dean Rosenzweig
ICLP1
1990 A Logical Operational Semantics of Full Prolog, Part II: Built-in Predicates for Database Manipulation
Egon Börger
MFCS1
1982 Conservative Reduction Classes of Krom Formulas
abstract
Abstract A Krom formula of pure quantification theory is a formula in conjunctive normal form such that each conjunct is a disjunction of at most two atomic formulas or negations of atomic formulas. Every class of Krom formulas that is determined by the form of their quantifier prefixes and which is known to have an unsolvable decision problem for satisfiability is here shown to be a conservative reduction class. Therefore both the general satisfiability problem, and the problem of satisfiability in finite models, can be effectively reduced from arbitrary formulas to Krom formulas of these several prefix types.
Stål Aanderaa, Egon Börger, Harry R. Lewis
J. Symb. Log.2
1981 Logical Description of Computation Processes
Egon Börger
FCT1
1981 The Equivalence of Horn and Network Complexity for Boolean Functions
Stål Aanderaa, Egon Börger
Acta Informatica2
1980 The Reachability Problem for Petri Nets and Decision Problems for Skolem Arithmetic
Egon Börger, Hans Kleine Büning
Theor. Comput. Sci.1