211 research outputs found
Model Checking Real Time Java Using Java PathFinder
The Real Time Specification for Java (RTSJ) is an augmentation of Java for real time applications of various degrees of hardness. The central features of RTSJ are real time threads; user defined schedulers; asynchronous events, handlers, and control transfers; a priority inheritance based default scheduler; non-heap memory areas such as immortal and scoped, and non-heap real time threads whose execution is not impeded by garbage collection. The Robust Software Systems group at NASA Ames Research Center has JAVA PATHFINDER (JPF) under development, a Java model checker. JPF at its core is a state exploring JVM which can examine alternative paths in a Java program (e.g., via backtracking) by trying all nondeterministic choices, including thread scheduling order. This paper describes our implementation of an RTSJ profile (subset) in JPF, including requirements, design decisions, and current implementation status. Two examples are analyzed: jobs on a multiprogramming operating system, and a complex resource contention example involving autonomous vehicles crossing an intersection. The utility of JPF in finding logic and timing errors is illustrated, and the remaining challenges in supporting all of RTSJ are assessed
String Fluid from Unstable D-branes
We consider Sen's effective action for unstable D-branes, and study its
classical dynamics exactly. In the true vacuum, the Hamiltonian dynamics
remains well-defined despite a vanishing action, and is that of massive
relativistic string fluid of freely moving electric flux lines. The
energy(tension) density equals the flux density in the local co-moving frame.
Furthermore, a finite dual Lagrangian exists and is related to the
Nielsen-Olesen field theory of ``dual'' strings, supplemented by a crucial
constraint. We conclude with discussion on the endpoint of tachyon
condensation.Comment: 17 pages, LaTeX, a reference adde
Sample Curation at a Lunar Outpost
The six Apollo surface missions returned 2,196 individual rock and soil samples, with a total mass of 381.6 kg. Samples were collected based on visual examination by the astronauts and consultation with geologists in the science back room in Houston. The samples were photographed during collection, packaged in uniquely-identified containers, and transported to the Lunar Module. All samples collected on the Moon were returned to Earth. NASA's upcoming return to the Moon will be different. Astronauts will have extended stays at an out-post and will collect more samples than they will return. They will need curation and analysis facilities on the Moon in order to carefully select samples for return to Earth
Alpha-beta pruning on evolving game trees
technical reportThe alpha-beta strategy is a widely used method for economizing on the size of game trees. Heretofore, its application has been limited to depth-first tree growth in recursive search functions. However, many modern game players use retentive (i.e. coroutine-based) control to achieve greater attention mobility in the game tree, e.g. for heuristically guided "best-first" searching. This paper reformulates the alpha-beta strategy for this generalized control setting. Algorithms are provided (in complete PASCAL code) for the following operations on appropriate nodes arbitrarily selected from a game tree: terminal node expansion, resumption of heuristically suspended move generation, tree re-rooting (i.e. top-level move selection), subtree redevelopment to satisfy a new search thoroughness condition, including restart of nodes that were cut-off but may no longer be. empirical results are presented indicating that, in addition to heuristic freedom, this method typically offers trees with fewer terminal nodes than in the recursive case, due to best-first descendant ordering, and the availability on the average of greater tree context for node cutting
The key node method: a highly-parallel alpha-beta algorithm
Journal ArticleA new parallel formulation of the alpha-beta algorithm for minimax game tree searching is presented. Its chief characteristic is incremental information sharing among subsearch processes in the form of "provisional" node value communication. Such "eager" communication can offer the double benefit of faster search focusing and enhanced parallelism. This effect is particularly advantageous in the prevalent case when static value correlation exists among adjacent nodes. A message-passing formulation of this idea, termed the "Key Node Method", is outlined. Preliminary experimental results for this method are reported, supporting its validity and potential for increased speedup
Efficiency in nondeterministic control through non-forgetful backtracking
Journal ArticleNondeterministic (ND) control has long been used to express elegant solutions to complex search problems. Programs using ND control can be executed on conventional machines through a systematic examination of trial execution paths. Among the many approaches to the enumeration of these paths is backtracking, a depth-first search of the execution path tree. Despite its implementational advantages, backtracking in its purest form suffers from a "forgetfulness" of retracted execution subpaths. This can lead to exponential run-time on problems such as top-down parsing in which the same subproblem can reoccur in slightly different global contexts. This paper presents an alternative form of ND control implementation incorporating "non-forgetfulness" into backtracking. Reoccurrences of previously searched subgoals are detected and their net computational effects recreated on demand. Since each distinct goal is pursued at most once, search problems such as general top-down parsing run in polynomial time. Moreover, in contrast to an exhaustive, bottom-up approach, goals are only pursued if appropriate in some global context. A strategy for non-forgetful backtracking is outlined in terms of coroutines and ordinary backtracking. The description of an alternative implementation of this strategy using simple coroutines is referenced. Top-down parsing is used to illustrate the application of this technique in both linguistic appearance and execution effect. Finally, some directions for further research into generalizations of these results are suggested
An abstract machine for parallel graph reduction
technical reportAn abstract machine suitable for parallel graph reduction on a shared memory multiprocessor is described. Parallel programming is plagued with subtle race conditions resulting in deadlock or fatal system errors. Due to the nondeterministic nature of program execution the utilization of resources may vary from one run to another. The abstract machine has been designed for the efficient execution of normal order functional languages. The instructions proposed related to parallel activity are sensitive to load conditions and the current utilization of resources on the machine. The novel aspect of the architecture is the very simple set of instructions needed to control the complexities of parallel execution. This is an important step towards building a compiler for multiprocessor machines and to further language research in this area. Sample test programs hand coded in this instruction set show good performance on our 18 node BBN Butterfly as compared to a VAX 8600
Combinator evaluation of functional programs with logical variables
technical reportA technique is presented that brings logical variables into the scope of the well known Turner method for evaluating normal order functioned programs by S, K, I combinator graph reduction. This extension is illustrated by SASL+LV, an extension of Turner's language SASL in which general expressions serve as formal parameters, and parameter passage is done by unification. The conceptual and practical advantages of such an extension are discussed, as well as semantic pitfalls that arise from the attendant weakening of referential transparency. Only four new combinators (LV, BV, FN and UNIFY) are introduced. The resulting object code is fully upward compatible in the sense that previously compiled SASL object code remains executable with unchanged semantics. However, "read-only" variable usage in SASL-f LV programs requires a "multi-tasking" extension of the customary stack-based evaluation method. Mechanisms are presented for managing this multi-tasking on both single and multi-processor systems. Finally, directions are examined for applying this technique to implementations involving larger granularity combinators, and fuller semantic treatment of logical variables (e.g. accommodation of failing unifications)
Approaching Distributed Database Implementations Through Functional Programming Concepts
The application of functional programming concepts to the data representation and querying aspects of databases has been discussed by Shipman and Buneman, et al. respectively. We argue the suitability of a function-based approach to additional aspects of database systems, including updating, transaction serialization, and physical distribution and communication. It is shown how the NmergeH extension of a purely functional model permits serializable concurrent primary site distribution control. We also present preliminary experimental results which indicate that a reasonable degree of concurrency is attainable from the functional approach
Migrating relational data to an OODB: strategies and lessions from a molecular biology experience
Journal ArticleThe growing maturity of OODB technology is causing many enterprises to consider migrating relational databases to OODBs. While data remapping is relatively straightforward, greater challenges lie in economically and non-invasively adapting legacy application software. We report on a genetics laboratory database migration experiment, which was facilitated by both organization of the relational data in object-like form and a C++ framework designed to insulate application code from relational artifacts. To our surprise, the framework failed to encapsulate three subtle aspects of the relational implementation, thereby "contaminating" application code. We describe the underlying issues, and offer cautionary guidance to future migrators
- …
