4,047 research outputs found
Finite difference methods fengshui: alignment through a mathematics of arrays
Numerous scientific-computational domains make use of array data. The core computing of the numerical methods and the algorithms involved is related to multi-dimensional array manipulation. Memory layout and the access patterns of that data are crucial to the optimal performance of the array-based computations. As we move towards exascale computing, writing portable code for efficient data parallel computations is increasingly requiring an abstract productive working environment. To that end, we present the design of a framework for optimizing scientific array-based computations, building a case study for a Partial Differential Equations solver. By embedding the Mathematics of Arrays formalism in the Magnolia programming language, we assemble a software stack capable of abstracting the continuous high-level application layer from the discrete formulation of the collective array-based numerical methods and algorithms and the final detailed low-level code. The case study lays the groundwork for achieving optimized memory layout and efficient computations while preserving a stable abstraction layer independent of underlying algorithms and changes in the architecture.Peer ReviewedPostprint (author's final draft
A criterion for separating process calculi
We introduce a new criterion, replacement freeness, to discern the relative
expressiveness of process calculi. Intuitively, a calculus is strongly
replacement free if replacing, within an enclosing context, a process that
cannot perform any visible action by an arbitrary process never inhibits the
capability of the resulting process to perform a visible action. We prove that
there exists no compositional and interaction sensitive encoding of a not
strongly replacement free calculus into any strongly replacement free one. We
then define a weaker version of replacement freeness, by only considering
replacement of closed processes, and prove that, if we additionally require the
encoding to preserve name independence, it is not even possible to encode a non
replacement free calculus into a weakly replacement free one. As a consequence
of our encodability results, we get that many calculi equipped with priority
are not replacement free and hence are not encodable into mainstream calculi
like CCS and pi-calculus, that instead are strongly replacement free. We also
prove that variants of pi-calculus with match among names, pattern matching or
polyadic synchronization are only weakly replacement free, hence they are
separated both from process calculi with priority and from mainstream calculi.Comment: In Proceedings EXPRESS'10, arXiv:1011.601
A Concurrent Pattern Calculus
International audienceConcurrent pattern calculus (CPC) drives interaction between processes by comparing data structures, just as sequential pattern calculus drives computation. By generalising from pattern matching to pattern unification, interaction becomes symmetrical, with information flowing in both directions. CPC provides a natural language to express trade where information exchange is pivotal to interaction. The unification allows some patterns to be more discriminating than others; hence, the behavioural theory must take this aspect into account, so that bisimulation becomes subject to compatibility of patterns. Many popular process calculi can be encoded in CPC; this allows for a gain in expressiveness, formalised through encodings
Psi-calculi: a framework for mobile processes with nominal data and logic
The framework of psi-calculi extends the pi-calculus with nominal datatypes
for data structures and for logical assertions and conditions. These can be
transmitted between processes and their names can be statically scoped as in
the standard pi-calculus. Psi-calculi can capture the same phenomena as other
proposed extensions of the pi-calculus such as the applied pi-calculus, the
spi-calculus, the fusion calculus, the concurrent constraint pi-calculus, and
calculi with polyadic communication channels or pattern matching. Psi-calculi
can be even more general, for example by allowing structured channels,
higher-order formalisms such as the lambda calculus for data structures, and
predicate logic for assertions. We provide ample comparisons to related calculi
and discuss a few significant applications. Our labelled operational semantics
and definition of bisimulation is straightforward, without a structural
congruence. We establish minimal requirements on the nominal data and logic in
order to prove general algebraic properties of psi-calculi, all of which have
been checked in the interactive theorem prover Isabelle. Expressiveness of
psi-calculi significantly exceeds that of other formalisms, while the purity of
the semantics is on par with the original pi-calculus.Comment: 44 page
Parallel processing and expert systems
Whether it be monitoring the thermal subsystem of Space Station Freedom, or controlling the navigation of the autonomous rover on Mars, NASA missions in the 1990s cannot enjoy an increased level of autonomy without the efficient implementation of expert systems. Merely increasing the computational speed of uniprocessors may not be able to guarantee that real-time demands are met for larger systems. Speedup via parallel processing must be pursued alongside the optimization of sequential implementations. Prototypes of parallel expert systems have been built at universities and industrial laboratories in the U.S. and Japan. The state-of-the-art research in progress related to parallel execution of expert systems is surveyed. The survey discusses multiprocessors for expert systems, parallel languages for symbolic computations, and mapping expert systems to multiprocessors. Results to date indicate that the parallelism achieved for these systems is small. The main reasons are (1) the body of knowledge applicable in any given situation and the amount of computation executed by each rule firing are small, (2) dividing the problem solving process into relatively independent partitions is difficult, and (3) implementation decisions that enable expert systems to be incrementally refined hamper compile-time optimization. In order to obtain greater speedups, data parallelism and application parallelism must be exploited
An Adynamical, Graphical Approach to Quantum Gravity and Unification
We use graphical field gradients in an adynamical, background independent
fashion to propose a new approach to quantum gravity and unification. Our
proposed reconciliation of general relativity and quantum field theory is based
on a modification of their graphical instantiations, i.e., Regge calculus and
lattice gauge theory, respectively, which we assume are fundamental to their
continuum counterparts. Accordingly, the fundamental structure is a graphical
amalgam of space, time, and sources (in parlance of quantum field theory)
called a "spacetimesource element." These are fundamental elements of space,
time, and sources, not source elements in space and time. The transition
amplitude for a spacetimesource element is computed using a path integral with
discrete graphical action. The action for a spacetimesource element is
constructed from a difference matrix K and source vector J on the graph, as in
lattice gauge theory. K is constructed from graphical field gradients so that
it contains a non-trivial null space and J is then restricted to the row space
of K, so that it is divergence-free and represents a conserved exchange of
energy-momentum. This construct of K and J represents an adynamical global
constraint between sources, the spacetime metric, and the energy-momentum
content of the element, rather than a dynamical law for time-evolved entities.
We use this approach via modified Regge calculus to correct proper distance in
the Einstein-deSitter cosmology model yielding a fit of the Union2 Compilation
supernova data that matches LambdaCDM without having to invoke accelerating
expansion or dark energy. A similar modification to lattice gauge theory
results in an adynamical account of quantum interference.Comment: 47 pages text, 14 figures, revised per recent results, e.g., dark
energy result
Parallel processing and expert systems
Whether it be monitoring the thermal subsystem of Space Station Freedom, or controlling the navigation of the autonomous rover on Mars, NASA missions in the 90's cannot enjoy an increased level of autonomy without the efficient use of expert systems. Merely increasing the computational speed of uniprocessors may not be able to guarantee that real time demands are met for large expert systems. Speed-up via parallel processing must be pursued alongside the optimization of sequential implementations. Prototypes of parallel expert systems have been built at universities and industrial labs in the U.S. and Japan. The state-of-the-art research in progress related to parallel execution of expert systems was surveyed. The survey is divided into three major sections: (1) multiprocessors for parallel expert systems; (2) parallel languages for symbolic computations; and (3) measurements of parallelism of expert system. Results to date indicate that the parallelism achieved for these systems is small. In order to obtain greater speed-ups, data parallelism and application parallelism must be exploited
- …