Results 11  20
of
21
Higherorder orderings for normal rewriting
 In Proc. 17th International Conference on Rewriting Techniques and Applications
, 2006
"... Abstract. We extend the termination proof methods based on reduction orderings to higherorder rewriting systems à la Nipkow using higherorder pattern matching for firing rules, and accommodate for any use of eta, as a reduction, as an expansion or as an equation. As a main novelty, we provide with ..."
Abstract

Cited by 6 (2 self)
 Add to MetaCart
Abstract. We extend the termination proof methods based on reduction orderings to higherorder rewriting systems à la Nipkow using higherorder pattern matching for firing rules, and accommodate for any use of eta, as a reduction, as an expansion or as an equation. As a main novelty, we provide with a mechanism for transforming any reduction ordering including betareduction, such as the higherorder recursive path ordering, into a reduction ordering for proving termination of rewriting à la Nipkow. Nontrivial examples are carried out. 1
Description and Verification of Mobile Processes with Graph Rewriting Techniques
"... The aim of this thesis is to describe the semantics of a process calculus by means of hypergraph rewriting, creating a specification mechanism combining modularity of process calculi and locality of graph transformation. Verification of processes is addressed by presenting two methods: barbed congru ..."
Abstract

Cited by 5 (4 self)
 Add to MetaCart
The aim of this thesis is to describe the semantics of a process calculus by means of hypergraph rewriting, creating a specification mechanism combining modularity of process calculi and locality of graph transformation. Verification of processes is addressed by presenting two methods: barbed congruence for relating processes displaying the same behaviour and generic type systems, forming a central part of this work. Based on existing work in graph rewriting...
Functional Programming Formalisms for OODB Methods
 IN PROC. OF THE NATO ASI SUMMER SCHOOL ON OODBS, TURKEY
, 1993
"... Two wellstudied functional formalisms in the theory of programming languages are (1) applicative program schemas and (2) typed lambda calculi. We relate these programming formalisms to objectoriented databases (OODBs) and in particular to the description of methods. The language of method schemas ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
Two wellstudied functional formalisms in the theory of programming languages are (1) applicative program schemas and (2) typed lambda calculi. We relate these programming formalisms to objectoriented databases (OODBs) and in particular to the description of methods. The language of method schemas (MS) is a programming formalism based on applicative program schemas with additional key objectoriented features such as classes, methods, inheritance, name overloading, and late binding. From [4], we present its syntax and semantics and survey the stateoftheart of consistency checking or signature inference for this language, a problem which can be used in studying database schema evolution. We then relate MS with more conventional database query languages by showing that its expressive power over finite ordered databases is PTIME. Despite its simplicity and applicability, MS does not directly model the tuple, set, and list complex structures that are quite common in databases. Also, it does not treat functions as objects, i.e., methods are different from objects. It is possible to achieve these two capabilities using the typed lambda calculus with equality (TLC=) as a database query language, even without any objectoriented features. From [25], we illustrate how this pure functional language subsumes most conventional database query languages including the relational calculus/algebra, Datalog (with or without negation), and the complex object calculus/algebra (with or without powerset). In conclusion, we argue that the appropriate programming formalism for OODBs must be a functional language that combines the objectoriented MS with the expressive TLC= and facilitates operations on sets of objects.
A calculus of recursiveparallel BSP programs
, 1998
"... . An extension of the calculus called BS is introduced as a formal basis for functional languages expressing bulk synchronous parallel algorithms. A local confluence result is explained and a callbyvalue evaluation strategy is defined. The operational meaning of the calculus is illustrated by two ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
. An extension of the calculus called BS is introduced as a formal basis for functional languages expressing bulk synchronous parallel algorithms. A local confluence result is explained and a callbyvalue evaluation strategy is defined. The operational meaning of the calculus is illustrated by two programs defining the binary fold algorithm, one flat and one parallelrecursive. 1 Highlevel languages and parallel programming If parallel programming is to become as widespread as sequential programming, the languages supporting it should incorporate all the standard abstraction mechanisms including pure functions and recursion. Yet for such languages to be practical scalable programming tools, abstraction should not come at the price of predictable performance. Unfortunately many parallel languages don't describe data placement so that performance is not predictable as a function of the source program. This is because data placement depends on the language implementation, not its sema...
Hashed Addressed Caches For Embedded Pointer Based Codes
"... We are proposing a cache addressing scheme based on hashing intended to decrease the miss ratio of small size caches. The main intention is to improve the hit ratio for 'random' patterns pointer memory accesses for embedded (special purpose) system applications. We introduce a hashing scheme, de ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
We are proposing a cache addressing scheme based on hashing intended to decrease the miss ratio of small size caches. The main intention is to improve the hit ratio for 'random' patterns pointer memory accesses for embedded (special purpose) system applications. We introduce a hashing scheme, denoted as bit juggling, and measure the effect such a scheme has in the cache access miss ratio. It is shown, for the considered benchmark, that 3bit bit juggling will reduce the miss ratio for up to 12%, for associative caches of maximum size of 8KBytes when compared to usual cache addressing schemes.
Implementing βReduction by Hypergraph Rewriting
, 1995
"... The aim of this paper is to implement the betareduction in the lambdacalculus with a hypergraph rewriting mechanism called collapsed lambdatree rewriting. It turns out that collapsed lambdatree rewriting is sound with respect to betareduction and complete with respect to the GrossKnuth strateg ..."
Abstract
 Add to MetaCart
The aim of this paper is to implement the betareduction in the lambdacalculus with a hypergraph rewriting mechanism called collapsed lambdatree rewriting. It turns out that collapsed lambdatree rewriting is sound with respect to betareduction and complete with respect to the GrossKnuth strategy. As a consequence, there exists a normal form for a collapsed lambdatree if and only if there exists a normal form for the represented lambdaterm.
Bracket abstraction in the combinator system Cl(K)
"... Translations from lambda calculi to combinatory logics can be used to avoid some implementational problems of the former systems. However, this scheme can only be efficient if the translation produces short output with a small number of combinators, in order to reduce the time and transient storage ..."
Abstract
 Add to MetaCart
Translations from lambda calculi to combinatory logics can be used to avoid some implementational problems of the former systems. However, this scheme can only be efficient if the translation produces short output with a small number of combinators, in order to reduce the time and transient storage space spent during reduction of combinatory terms. In this paper we present a combinatory system and an abstraction algorithm, based on the original bracket abstraction operator of Schonfinkel [9]. The algorithm introduces at most one combinator for each abstraction in the initial lambda term. This provides the system with quite good properties in terms of memory space as well as in terms of length of evaluations. We prove the correctness of the algorithm and establish some relations between the combinatory system and the lambda calculus. 1 Introduction Combinatory Logic may be regarded as an alternative notation for the Lambda Calculus, but without using bound variables. As such, systems o...
An Interactive Viewpoint on the Role of UML
, 2000
"... The role of the Unified Modeling Language (UML) is to model interactive systems, whose behaviors emerge from the interaction of their components with each other and with the environment. Unlike traditional (algorithmic) computation, interactive computation involves infinite and dynamic (late binding ..."
Abstract
 Add to MetaCart
The role of the Unified Modeling Language (UML) is to model interactive systems, whose behaviors emerge from the interaction of their components with each other and with the environment. Unlike traditional (algorithmic) computation, interactive computation involves infinite and dynamic (late binding) input/output streams. Algorithmic tools and models do not suffice to express the behavior of today's interactive systems, which are capable of selfreconfiguring and adapting to their environment. Whereas procedural languages may express precise designs of closed processes, UML provides support for the inherently openended preliminary steps of system analysis and specification, which are becoming increasingly complex. Interactive systems require dynamic models where interaction has firstclass status, and where the environment is modeled explicitly, as actors whose roles constrain the input patterns. UML's interactionbased approach to system modeling fits well with the encapsulationba...
Calculus Af2@
"... Contents 1 Introduction 3 1.1 History : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 3 1.2 Overview of lambda calculus : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 4 2 Lambda Expressions 5 2.1 Syntax of expr ..."
Abstract
 Add to MetaCart
Contents 1 Introduction 3 1.1 History : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 3 1.2 Overview of lambda calculus : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 4 2 Lambda Expressions 5 2.1 Syntax of expressions : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5 2.2 Notational conventions : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5 2.3 Binding : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 5 2.4 Lambda abstraction in Lisp and Algol : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 6 3 Equivalence and Substitution 7 3.1 Axioms of Equivalence : : : : : : : : : : : : : : : : : : : : :
ProofTheoretic Notions for Software Maintenance
, 2000
"... In this report we give an outline how prooftheoretic notions can be useful for questions related to software maintenance. ..."
Abstract
 Add to MetaCart
In this report we give an outline how prooftheoretic notions can be useful for questions related to software maintenance.