Results 11  20
of
169
Why use evolving algebras for hardware and software engineering?
, 1995
"... In this paper I answer the question how evolving algebras can be used for the design and analysis of complex hardware and software systems. I present the salient features of this new method and illustrate them through several examples from my work on specification and verification of programming lan ..."
Abstract

Cited by 39 (4 self)
 Add to MetaCart
(Show Context)
In this paper I answer the question how evolving algebras can be used for the design and analysis of complex hardware and software systems. I present the salient features of this new method and illustrate them through several examples from my work on specification and verification of programming languages, compilers, protocols and architectures. The definition of a mathematical model for Hennessy and Patterson's RISC architecture DLX serves as a running example; this model is used in [24] to prove the correctness of instruction pipelining. I will point out the yet unexplored potential of the evolving algebra method for largescale industrial applications.
Extensible Denotational Language Specifications
 SYMPOSIUM ON THEORETICAL ASPECTS OF COMPUTER SOFTWARE, NUMBER 789 IN LNCS
, 1994
"... Traditional denotational semantics assigns radically different meanings to one and the same phrase depending on the rest of the programming language. If the language is purely functional, the denotation of a numeral is a function from environments to integers. But, in a functional language with impe ..."
Abstract

Cited by 38 (6 self)
 Add to MetaCart
Traditional denotational semantics assigns radically different meanings to one and the same phrase depending on the rest of the programming language. If the language is purely functional, the denotation of a numeral is a function from environments to integers. But, in a functional language with imperative control operators, a numeral denotes a function from environments and continuations to integers. This paper introduces a new format for denotational language specifications, extended direct semantics, that accommodates orthogonal extensions of a language without changing the denotations of existing phrases. An extended direct semantics always maps a numeral to the same denotation: the injection of the corresponding number into the domain of values. In general, the denotation of a phrase in a functional language is always a projection of the denotation of the same phrase in the semantics of an extended languageno matter what the extension is. Based on extended direct semantics, i...
A Syntactic Approach to Modularity in Denotational Semantics
 IN PROCEEDINGS OF THE CONFERENCE ON CATEGORY THEORY AND COMPUTER SCIENCE
, 1993
"... This paper proposes a syntactic reformulation of the modular approach to Denotational Semantics in [Mog89a, Mog91a]. This reformulation is based on a duality between model constructions and translations of theories (often called relative interpretations), analogous to GabrielUlmer duality. To de ..."
Abstract

Cited by 33 (5 self)
 Add to MetaCart
This paper proposes a syntactic reformulation of the modular approach to Denotational Semantics in [Mog89a, Mog91a]. This reformulation is based on a duality between model constructions and translations of theories (often called relative interpretations), analogous to GabrielUlmer duality. To demonstrate the simplicity and usability of the syntactic reformulation, we give a sample of theories and translations, which can be used to give semantics to concurrent languages (via translation into suitable metalanguages).
Abstract syntax and semantics of visual languages
 JOURNAL OF VISUAL LANGUAGES AND COMPUTING
, 1998
"... The effective use of visual languages requires a precise understanding of their meaning. Moreover, it is impossible to prove properties of visual languages like soundness of transformation rules or correctness results without having a formal language definition. Although this sounds obvious, it is s ..."
Abstract

Cited by 32 (11 self)
 Add to MetaCart
The effective use of visual languages requires a precise understanding of their meaning. Moreover, it is impossible to prove properties of visual languages like soundness of transformation rules or correctness results without having a formal language definition. Although this sounds obvious, it is surprising that only little work has been done about the semantics of visual languages, and even worse, there is no general framework available for the semantics specification of different visual languages. We present such a framework that is based on a rather general notion of abstract visual syntax. This framework allows a logical as well as a denotational approach to visual semantics, and it facilitates the formal reasoning about visual languages syntax and semantics for the visual languages VEX, Show and Tell, and Euler Circles. We demonstrate the semantics in action by proving a rule for visual reasoning with Euler Circles and by showing the correctness of a Show and Tell program.
Verification of Compilers
 In Correct System Design
, 1999
"... We report about a joint project of the universities at Karlsruhe, Kiel and Ulm on how to get correct compilers for realistic programming languages. Arguing about compiler correctness must start from a compiling specification describing the correspondence of source and target language in formal t ..."
Abstract

Cited by 31 (1 self)
 Add to MetaCart
(Show Context)
We report about a joint project of the universities at Karlsruhe, Kiel and Ulm on how to get correct compilers for realistic programming languages. Arguing about compiler correctness must start from a compiling specification describing the correspondence of source and target language in formal terms. We have chosen to use abstract state machines to formalize this correspondence. This allows us to stay with traditional compiler architectures for subdividing the compiler task. A main achievement is the use of program checking for replacing large parts of compiler verification by the much simpler task of verifying program checkers.
Generating Data Flow Analysis Algorithms from Modal Specifications
 SCIENCE OF COMPUTER PROGRAMMING
, 1993
"... The paper develops a framework that is based on the idea that modal logic provides an appropriate framework for the specification of data flow analysis (DFA) algorithms as soon as programs are represented as models of the logic. This can be exploited to construct a DFAgenerator that generates effic ..."
Abstract

Cited by 31 (8 self)
 Add to MetaCart
The paper develops a framework that is based on the idea that modal logic provides an appropriate framework for the specification of data flow analysis (DFA) algorithms as soon as programs are represented as models of the logic. This can be exploited to construct a DFAgenerator that generates efficient implementations of DFAalgorithms from modal specifications by partially evaluating a specific model checker with respect to the specifying modal formula. Moreover, the use of a modal logic as specification language for DFAalgorithms supports the compositional development of specifications and structured proofs of properties of DFAalgorithms.  The framework is illustrated by means of a real life example: the problem of determining optimal computation points within flow graphs.
A Provably Correct Compiler Generator
 IN PROC. ESOP’92, SPRINGERVERLAG (LNCS 582), PAGES 418–434
, 1992
"... We have designed, implemented, and proved the correctness of a compiler generator that accepts action semantic descriptions of imperative programming languages. The generated compilers emit absolute code for an abstract RISC machine language that currently is assembled into code for the SPARC and th ..."
Abstract

Cited by 29 (3 self)
 Add to MetaCart
We have designed, implemented, and proved the correctness of a compiler generator that accepts action semantic descriptions of imperative programming languages. The generated compilers emit absolute code for an abstract RISC machine language that currently is assembled into code for the SPARC and the HP Precision Architecture. Our machine language needs no runtime typechecking and is thus more realistic than those considered in previous compiler proofs. We use solely algebraic specifications; proofs are given in the initial model.
Compositional and Inductive Semantic Definitions in Fixpoint, Equational, Constraint, Closurecondition, Rulebased and GameTheoretic Form
, 1995
"... We present a language and semanticsindependent, compositional and inductive method for specifying formal semantics or semantic properties of programs in equivalent fixpoint, equational, constraint, closurecondition, rulebased and gametheoretc form. The definitional method is obtained by extendin ..."
Abstract

Cited by 26 (10 self)
 Add to MetaCart
(Show Context)
We present a language and semanticsindependent, compositional and inductive method for specifying formal semantics or semantic properties of programs in equivalent fixpoint, equational, constraint, closurecondition, rulebased and gametheoretc form. The definitional method is obtained by extending settheoretic definitions in the context of partial orders. It is parameterized by the language syntax, by the semantic domains and by the semantic transformers corresponding to atomic and compound program components. The definitional method is shown to be preserved by abstract interpretation in either fixpoint, equational, constraint, closurecondition, rulebased or gametheoretic form. The features common to all possible instantiations are factored out thus allowing for results of general scope such as welldefinedness, semantic equivalence, soundness and relative completeness of abstract interpretations, etc. to be proved compositionally in a general language and semanticsindependent framework.
Polymorphic embedding of DSLs
 In GPCE’08. ACM
, 2008
"... The influential pure embedding methodology of embedding domainspecific languages (DSLs) as libraries into a generalpurpose host language forces the DSL designer to commit to a single semantics. This precludes the subsequent addition of compilation, optimization or domainspecific analyses. We propo ..."
Abstract

Cited by 26 (6 self)
 Add to MetaCart
(Show Context)
The influential pure embedding methodology of embedding domainspecific languages (DSLs) as libraries into a generalpurpose host language forces the DSL designer to commit to a single semantics. This precludes the subsequent addition of compilation, optimization or domainspecific analyses. We propose polymorphic embedding of DSLs, where many different interpretations of a DSL can be provided as reusable components, and show how polymorphic embedding can be realized in the programming language Scala. With polymorphic embedding, the static typesafety, modularity, composability and rapid prototyping of pure embedding are reconciled with the flexibility attainable by external toolchains. Categories and Subject Descriptors D.3.2 [Programming Languages]: Language Classifications—Extensible languages, Specialized
Correspondence between Operational and Denotational Semantics
 Handbook of Logic in Computer Science
, 1995
"... This course introduces the operational and denotational semantics of PCF and examines the relationship between the two. Topics: Syntax and operational semantics of PCF, Activity Lemma, undefinability of parallel or; Context Lemma (first principles proof) and proof by logical relations Denotational ..."
Abstract

Cited by 25 (0 self)
 Add to MetaCart
This course introduces the operational and denotational semantics of PCF and examines the relationship between the two. Topics: Syntax and operational semantics of PCF, Activity Lemma, undefinability of parallel or; Context Lemma (first principles proof) and proof by logical relations Denotational semantics of PCF induced by an interpretation; (standard) Scott model, adequacy, weak adequacy and its proof (by a computability predicate) Domain Theory up to SFP and Scott domains; non full abstraction of the standard model, definability of compact elements and full abstraction for PCFP (PCF + parallel or), properties of orderextensional (continuous) models of PCF, Milner's model and Mulmuley's construction (excluding proofs) Additional topics (time permitting): results on pure simplytyped lambda calculus, Friedman 's Completeness Theorem, minimal model, logical relations and definability, undecidability of lambda definability (excluding proof), dIdomains and stable functions Homepa...