5281675
Algorithm Theories and Design Tactics
Abstract Algorithm theories represent the structure common to a class of algorithms, such as divide-and-conquer or backtrack. An algorithm theory for a class A provides the basis for design tactics—specialized methods for designing A -algorithms from formal problem specifications. We illustrate this approach with recent work on the theory of global search algorithms and briefly mention several others. Several design tactics have been implemented in the kids / cypress system and have been used to semiautomatically derive many algorithms.
17878068
Guarded Transitions in Evolving Specifications
We represent state machines in the category of specifications, where assignment statements correspond exactly to interpretations between theories [7, 8]. However, the guards on an assignment require a special construction. In this paper we raise guards to the same level as assignments by treating each as a distinct category over a shared set of objects. A guarded assignment is represented as a pair of arrows, a guard arrow and an assignment arrow. We give a general construction for combining arrows over a factorization system, and show its specialization to the category of specifications. This construction allows us to define the fine structure of state machine morphisms with respect to guards. Guards define the flow of control in a computation, and how they may be translated under refinement is central to the formal treatment of safety, liveness, concurrency, and determinism.
44957593
Toward a Classification Approach to Design
This paper addresses the problem of how to construct refinements of specifications formally and incrementally. The key idea is to use a taxonomy of abstract design concepts, each represented by a design theory An abstract design concept is applied by constructing a specification morphism from its design theory to a requirement specification. Procedures for propagating constraints, computing colimits, and constructing specification morphisms provide computational support for this approach. Although we conjecture that classification generally applies to the incremental application of knowledge represented in a taxonomy of design theories, this paper mainly focuses on algorithm design theories and presents several examples of design by classification.
7947888
Constructing Specification Morphisms
Specification morphisms underlie the refinement of algebraic specifications and provide the logical foundations for algorithm and data structure design. We present four techniques for formally, even mechanically, constructing specification morphisms. The first two techniques, verifying a manually constructed signature morphism and composition of specification morphisms are well-known. The remaining two techniques exploit the axioms of the source specification to help infer the translation of sort and function symbols from the source specification. The third, unskolemization, finds the translation of a function symbol by replacing occurrences of it in an axiom by an existentially quantified variable. A constructive proof of the translated axiom yields a witness to the existential that serves as the desired translation of the function symbol. The fourth technique, connections between specifications, allows the transfer of structure from one specification morphism to another. The unskolemization and connection techniques arose as abstractions from the algorithm design tactics implemented in the KIDS program transformation system (Smith (1990)). They suggest a more general approach to providing mechanized support for applying design knowledge expressed axiomatically.
12681881
Synthesis of Constraint Algorithms
13516557
The Design of Divide and Conquer Algorithms
Abstract The structure common to a class of divide and conquer algorithms is represented by a program scheme. A theorem is presented which relates the functionality of a divide and conquer algorithm to its structure and the functionalities of its subalgorithms. Several strategies for designing divide and conquer algorithms arise from this theorem and they are used to formally derive algorithms for sorting a list of numbers, forming the cartesian product of two sets, and finding the convex hull of a set of planar points.
45395534
A Study of Permutation Crossover Operators on the Traveling Salesman Problem
15706733
Integrating harvesting into digital library content
The Open Archives Initiative has gained success by aiming between complex federation schemes and low functionality web crawling. Much information still remains hidden inside documents catalogued by OAI metadata. We discuss how subdocument information can be exposed by data providers and exploited by service providers. We discuss services for citation reversal and name and term linking with harvested data in the Perseus Project's document management system and a proxy service for automatically adding these links to OAI documents outside Perseus.
8267445
Explaining design plans
The paper describes a methodology for generating quality explanations from design plans. In selecting items of information for inclusion in an explanation, the methodology considers the rationales behind the strategic knowledge and object-level knowledge specified in a design plan. Rhetorical structure theory and discourse focus tracking are utilised to determine textual structure, and to maintain discourse coherence and cohesion. Using a simple system of user modelling, it is shown how the methodology flexibly includes consideration of a user's knowledge, thus resulting in more focused and convincing explanations. The methodology is used to investigate follow-up explanations, and the generation of explanations from plans which contain a misconception on the part of the designer.
18928754
An improved algorithm to determine lower bounds for the fixed spectrum frequency assignment problem
Frequencies have to be assigned to transmitters whenever a radio network is established or modified. This is ideally done is a way which minimises interference in the network. Lower bounds are necessary to establish the effectiveness of the heuristic algorithms used for this task and to assess the quality of the assignments obtained. 
 
In the fixed spectrum frequency assignment problem the available frequencies are known in advance. The constraints are often binary constraints, specifying the necessary frequency separation between given pairs of transmitters. There may be penalties (or weights) associated with the violation of each constraint; it is then either necessary to minimise the number of constraints violated or, increasingly often, to minimise the sum of the weights associated with violated constraints. 
 
A technique for generating lower bounds for these quantities is presented. This is an evolution of a technique which has recently appeared in the literature. It produces better quality bounds, is in general significantly faster and allows larger problems to be handled.
6938855
mSpace: improving information access to multimedia domains with multimodal exploratory search
Overview of mSpace interaction approach for presenting exploratory search particularly in the audio domain by using slices, preview cues, and user-determined organization of information from high-dimensional spaces