Results 11  20
of
81
On Behavioural Abstraction and Behavioural Satisfaction in HigherOrder Logic
, 1996
"... The behavioural semantics of specifications with higherorder logical formulae as axioms is analyzed. A characterization of behavioural abstraction via behavioural satisfaction of formulae in which the equality symbol is interpreted as indistinguishability, which is due to Reichel and was recently g ..."
Abstract

Cited by 25 (4 self)
 Add to MetaCart
(Show Context)
The behavioural semantics of specifications with higherorder logical formulae as axioms is analyzed. A characterization of behavioural abstraction via behavioural satisfaction of formulae in which the equality symbol is interpreted as indistinguishability, which is due to Reichel and was recently generalized to the case of firstorder logic by Bidoit et al, is further generalized to this case. The fact that higherorder logic is powerful enough to express the indistinguishability relation is used to characterize behavioural satisfaction in terms of ordinary satisfaction, and to develop new methods for reasoning about specifications under behavioural semantics. 1 Introduction An important ingredient in the use of algebraic specifications to describe data abstractions is the concept of behavioural equivalence between algebras, which seems to appropriately capture the "black box" character of data abstractions, see e.g. [GGM76], [GM82], [ST87] and [ST95]. Roughly speaking (since there ...
Proving the correctness of algebraically specified software modularity and observability issues
 In Proc. of AMAST2, Second Conference of Algebraic Methodology and Software Technology
, 1991
"... We investigate how far modularity and observability issues can contribute to a better understanding of software correctness. We detail the impact of modularity on the semantics of algebraic specifications and we show that, with the stratified loose semantics, software correctness can be established ..."
Abstract

Cited by 24 (7 self)
 Add to MetaCart
(Show Context)
We investigate how far modularity and observability issues can contribute to a better understanding of software correctness. We detail the impact of modularity on the semantics of algebraic specifications and we show that, with the stratified loose semantics, software correctness can be established on a module per module basis. We discuss observability issues and we introduce an observational semantics where sort observation is refined by specifying that some operations do not allow observations. Then the stratified loose approach and our observational semantics are integrated together. As a result, we obtain a framework (modular observational specifications) where the definition of software correctness is adequate, i.e. fits with actual software correctness. 1
A Complete Transformational Toolkit for Compilers
 ACM Transactions on Programming Languages and Systems
, 1996
"... . In an earlier paper, one of the present authors presented a preliminary account of an equational logic called PIM. PIM is intended to function as a "transformational toolkit" to be used by compilers and analysis tools for imperative languages, and has been applied to such problems as ..."
Abstract

Cited by 23 (9 self)
 Add to MetaCart
. In an earlier paper, one of the present authors presented a preliminary account of an equational logic called PIM. PIM is intended to function as a "transformational toolkit" to be used by compilers and analysis tools for imperative languages, and has been applied to such problems as program slicing, symbolic evaluation, conditional constant propagation, and dependence analysis. PIM consists of the untyped lambda calculus extended with an algebraic rewriting system that characterizes the behavior of lazy stores and generalized conditionals. A major question left open in the earlier paper was whether there existed a complete equational axiomatization of PIM's semantics. In this paper, we answer this question in the affirmative for PIM's core algebraic component, PIM t , under the assumption of certain reasonable restrictions on term formation. We systematically derive the complete PIM logic as the culmination of a sequence of increasingly powerful equational systems starti...
Composing Hidden Information Modules over Inclusive Institutions
 In From ObjectOrientation to Formal Methods: Essays in Honor of JohanOle Dahl
, 2003
"... This paper studies the composition of modules that can hide information, over a very general class of logical systems called inclusive institutions. Two semantics are given for composition of such modules using five familiar operations, and a property called conservativity is shown necessary and suf ..."
Abstract

Cited by 23 (3 self)
 Add to MetaCart
This paper studies the composition of modules that can hide information, over a very general class of logical systems called inclusive institutions. Two semantics are given for composition of such modules using five familiar operations, and a property called conservativity is shown necessary and sufficient for these semantics to agree. The first semantics extracts the visible properties of the result of composing the visible and hidden parts of modules, while the second uses only the visible properties of the components; the semantics agree when the visible consequences of hidden information are enough to determine the result of the composition. A number of "laws of software composition" are proved relating the composition operations. Inclusive institutions simplify many proofs.
Operational termination of membership equational programs. the ordersorted way
, 2008
"... Our main goal is automating termination proofs for programs in rewritingbased languages with features such as: (i) expressive type structures, (ii) conditional rules, (iii) matching modulo axioms, and (iv) contextsensitive rewriting. Specifically, we present a new operational termination method for ..."
Abstract

Cited by 22 (9 self)
 Add to MetaCart
Our main goal is automating termination proofs for programs in rewritingbased languages with features such as: (i) expressive type structures, (ii) conditional rules, (iii) matching modulo axioms, and (iv) contextsensitive rewriting. Specifically, we present a new operational termination method for membership equational programs with features (i)(iv) that can be applied to programs in membership equational logic (MEL). The method first transforms a MEL program into a simpler, yet semantically equivalent, conditional ordersorted (OS) program. Subsequent trasformations make the OSprogram unconditonal, and, finally, unsorted. In particular, we extend and generalize to this richer setting an ordersorted termination technique for unconditional OS programs proposed by Ölveczky and Lysne. An important advantage of our method is that it minimizes the use of conditional rules and produces simpler transformed programs whose termination is often easier to prove automatically.
From Total Equational to Partial First Order Logic
, 1998
"... The focus of this chapter is the incremental presentation of partial firstorder logic, seen as a powerful framework where the specification of most data types can be directly represented in the most natural way. Both model theory and logical deduction are described in full detail. Alternatives to pa ..."
Abstract

Cited by 21 (8 self)
 Add to MetaCart
The focus of this chapter is the incremental presentation of partial firstorder logic, seen as a powerful framework where the specification of most data types can be directly represented in the most natural way. Both model theory and logical deduction are described in full detail. Alternatives to partiality, like (variants of) error algebras and ordersortedness are also discussed, showing their uses and limitations. Moreover, both the total and the partial (positive) conditional fragment are investigated in detail, and in particular the existence of initial (free) models for such restricted logical paradigms is proved. Some more powerful algebraic frameworks are sketched at the end. Equational specifications introduced in last chapter, are a powerful tool to represent the most common data types used in programming languages and their semantics. Indeed, Bergstra and Tucker have shown in a series of papers (see [BT87] for a complete exposition of results) that a data type is semicompu...
Rewriting Logic as a Metalogical Framework
 Lecture Notes in Computer Science
, 2000
"... A metalogical framework is a logic with an associated methodology that is used to represent other logics and to reason about their metalogical properties. We propose that logical frameworks can be good metalogical frameworks when their logics support reective reasoning and their theories always ..."
Abstract

Cited by 16 (5 self)
 Add to MetaCart
A metalogical framework is a logic with an associated methodology that is used to represent other logics and to reason about their metalogical properties. We propose that logical frameworks can be good metalogical frameworks when their logics support reective reasoning and their theories always have initial models. We present a concrete realization of this idea in rewriting logic. Theories in rewriting logic always have initial models and this logic supports reective reasoning. This implies that inductive reasoning is valid when proving properties about the initial models of theories in rewriting logic, and that we can use reection to reason at the metalevel about these properties. In fact, we can uniformly reect induction principles for proving metatheorems about rewriting logic theories and their parameterized extensions. We show that this reective methodology provides an eective framework for dierent, nontrivial, kinds of formal metatheoretic reasoning; one can...
On the Complexity of Reasoning in Kleene Algebra
 Information and Computation
, 1997
"... We study the complexity of reasoning in Kleene algebra and *continuous Kleene algebra in the presence of extra equational assumptions E; that is, the complexity of deciding the validity of universal Horn formulas E ! s = t, where E is a finite set of equations. We obtain various levels of complexi ..."
Abstract

Cited by 13 (5 self)
 Add to MetaCart
(Show Context)
We study the complexity of reasoning in Kleene algebra and *continuous Kleene algebra in the presence of extra equational assumptions E; that is, the complexity of deciding the validity of universal Horn formulas E ! s = t, where E is a finite set of equations. We obtain various levels of complexity based on the form of the assumptions E. Our main results are: for * continuous Kleene algebra, ffl if E contains only commutativity assumptions pq = qp, the problem is \Pi 0 1 complete; ffl if E contains only monoid equations, the problem is \Pi 0 2 complete; ffl for arbitrary equations E, the problem is \Pi 1 1  complete. The last problem is the universal Horn theory of the *continuous Kleene algebras. This resolves an open question of Kozen (1994). 1 Introduction Kleene algebra (KA) is fundamental and ubiquitous in computer science. Since its invention by Kleene in 1956, it has arisen in various forms in program logic and semantics [17, 28], relational algebra [27, 32], aut...
Hidden Algebra for Software Engineering
 PROCEEDINGS COMBINATORICS, COMPUTATION AND LOGIC
, 1999
"... This paper is an introduction to recent research on hidden algebra and its application to software engineering; it is intended to be informal and friendly, but still precise. We first review classical algebraic specification for traditional "Platonic" abstract data types like integers, ve ..."
Abstract

Cited by 13 (0 self)
 Add to MetaCart
(Show Context)
This paper is an introduction to recent research on hidden algebra and its application to software engineering; it is intended to be informal and friendly, but still precise. We first review classical algebraic specification for traditional "Platonic" abstract data types like integers, vectors, matrices, and lists. Software engineering also needs changeable "abstract machines," recently called "objects," that can communicate concurrently with other objects through visible "attributes" and statechanging "methods." Hidden algebra is a new development in algebraic semantics designed to handle such systems. Equational theories are used in both cases, but the notion of satisfaction for hidden algebra is behavioral, in the sense that equations need only appear to be true under all possible experiments; this extra flexibility is needed to accommodate the clever implementations that software engineers often use to conserve space and/or time. The most important results in hidden algebra are ...
A Hidden Herbrand Theorem: Combining the Object and Logic Paradigms
 Principles of Declarative Programming
, 1998
"... : The benefits of the object, logic (or relational), functional, and constraint paradigms ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
(Show Context)
: The benefits of the object, logic (or relational), functional, and constraint paradigms