24,862 research outputs found
Aspect-Oriented Programming
Aspect-oriented programming is a promising idea that can improve the quality of software by reduce the problem of code tangling and improving the separation of concerns. At ECOOP'97, the first AOP workshop brought together a number of researchers interested in aspect-orientation. At ECOOP'98, during the second AOP workshop the participants reported on progress in some research topics and raised more issues that were further discussed. \ud
\ud
This year, the ideas and concepts of AOP have been spread and adopted more widely, and, accordingly, the workshop received many submissions covering areas from design and application of aspects to design and implementation of aspect languages
Teaching Parallel Programming Using Java
This paper presents an overview of the "Applied Parallel Computing" course
taught to final year Software Engineering undergraduate students in Spring 2014
at NUST, Pakistan. The main objective of the course was to introduce practical
parallel programming tools and techniques for shared and distributed memory
concurrent systems. A unique aspect of the course was that Java was used as the
principle programming language. The course was divided into three sections. The
first section covered parallel programming techniques for shared memory systems
that include multicore and Symmetric Multi-Processor (SMP) systems. In this
section, Java threads was taught as a viable programming API for such systems.
The second section was dedicated to parallel programming tools meant for
distributed memory systems including clusters and network of computers. We used
MPJ Express-a Java MPI library-for conducting programming assignments and lab
work for this section. The third and the final section covered advanced topics
including the MapReduce programming model using Hadoop and the General Purpose
Computing on Graphics Processing Units (GPGPU).Comment: 8 Pages, 6 figures, MPJ Express, MPI Java, Teaching Parallel
Programmin
Computational Complexity of Atomic Chemical Reaction Networks
Informally, a chemical reaction network is "atomic" if each reaction may be
interpreted as the rearrangement of indivisible units of matter. There are
several reasonable definitions formalizing this idea. We investigate the
computational complexity of deciding whether a given network is atomic
according to each of these definitions.
Our first definition, primitive atomic, which requires each reaction to
preserve the total number of atoms, is to shown to be equivalent to mass
conservation. Since it is known that it can be decided in polynomial time
whether a given chemical reaction network is mass-conserving, the equivalence
gives an efficient algorithm to decide primitive atomicity.
Another definition, subset atomic, further requires that all atoms are
species. We show that deciding whether a given network is subset atomic is in
, and the problem "is a network subset atomic with respect to a
given atom set" is strongly -.
A third definition, reachably atomic, studied by Adleman, Gopalkrishnan et
al., further requires that each species has a sequence of reactions splitting
it into its constituent atoms. We show that there is a to decide whether a given network is reachably atomic, improving
upon the result of Adleman et al. that the problem is . We
show that the reachability problem for reachably atomic networks is
-.
Finally, we demonstrate equivalence relationships between our definitions and
some special cases of another existing definition of atomicity due to Gnacadja
Test generation from P systems using model checking
This paper presents some testing approaches based on model checking and using different testing criteria. First, test sets are built from different Kripke structure representations. Second, various rule coverage criteria for transitional, non-deterministic, cell-like P systems, are considered in order to generate adequate test sets. Rule based coverage criteria (simple rule coverage, context-dependent rule coverage and variants) are defined and, for each criterion, a set of LTL (Linear Temporal Logic) formulas is provided. A codification of a P system as a Kripke structure and the sets of LTL properties are used in test generation: for each criterion, test cases are obtained from the counterexamples of the associated LTL formulas, which are automatically generated from the Kripke structure codification of the P system. The method is illustrated with an implementation using a specific model checker, NuSMV. (C) 2010 Elsevier Inc. All rights reserved
- …