29,482 research outputs found
A Quantitative Study of Pure Parallel Processes
In this paper, we study the interleaving -- or pure merge -- operator that
most often characterizes parallelism in concurrency theory. This operator is a
principal cause of the so-called combinatorial explosion that makes very hard -
at least from the point of view of computational complexity - the analysis of
process behaviours e.g. by model-checking. The originality of our approach is
to study this combinatorial explosion phenomenon on average, relying on
advanced analytic combinatorics techniques. We study various measures that
contribute to a better understanding of the process behaviours represented as
plane rooted trees: the number of runs (corresponding to the width of the
trees), the expected total size of the trees as well as their overall shape.
Two practical outcomes of our quantitative study are also presented: (1) a
linear-time algorithm to compute the probability of a concurrent run prefix,
and (2) an efficient algorithm for uniform random sampling of concurrent runs.
These provide interesting responses to the combinatorial explosion problem
Initial Algebra Semantics for Cyclic Sharing Tree Structures
Terms are a concise representation of tree structures. Since they can be
naturally defined by an inductive type, they offer data structures in
functional programming and mechanised reasoning with useful principles such as
structural induction and structural recursion. However, for graphs or
"tree-like" structures - trees involving cycles and sharing - it remains
unclear what kind of inductive structures exists and how we can faithfully
assign a term representation of them. In this paper we propose a simple term
syntax for cyclic sharing structures that admits structural induction and
recursion principles. We show that the obtained syntax is directly usable in
the functional language Haskell and the proof assistant Agda, as well as
ordinary data structures such as lists and trees. To achieve this goal, we use
a categorical approach to initial algebra semantics in a presheaf category.
That approach follows the line of Fiore, Plotkin and Turi's models of abstract
syntax with variable binding
Strategy Logic with Imperfect Information
We introduce an extension of Strategy Logic for the imperfect-information
setting, called SLii, and study its model-checking problem. As this logic
naturally captures multi-player games with imperfect information, the problem
turns out to be undecidable. We introduce a syntactical class of "hierarchical
instances" for which, intuitively, as one goes down the syntactic tree of the
formula, strategy quantifications are concerned with finer observations of the
model. We prove that model-checking SLii restricted to hierarchical instances
is decidable. This result, because it allows for complex patterns of
existential and universal quantification on strategies, greatly generalises
previous ones, such as decidability of multi-player games with imperfect
information and hierarchical observations, and decidability of distributed
synthesis for hierarchical systems. To establish the decidability result, we
introduce and study QCTL*ii, an extension of QCTL* (itself an extension of CTL*
with second-order quantification over atomic propositions) by parameterising
its quantifiers with observations. The simple syntax of QCTL* ii allows us to
provide a conceptually neat reduction of SLii to QCTL*ii that separates
concerns, allowing one to forget about strategies and players and focus solely
on second-order quantification. While the model-checking problem of QCTL*ii is,
in general, undecidable, we identify a syntactic fragment of hierarchical
formulas and prove, using an automata-theoretic approach, that it is decidable.
The decidability result for SLii follows since the reduction maps hierarchical
instances of SLii to hierarchical formulas of QCTL*ii
Recommended from our members
XML-based genetic rules for scene boundary detection in a parallel processing environment
Genetic programming is based on Darwinian evolutionary theory that suggests that the best solution for a problem can be evolved by methods of natural selection of the fittest organisms in a population. These principles are translated into genetic programming by populating the solution space with an initial number of computer programs that can possibly solve the problem and then evolving the programs by means of mutation, reproduction and crossover until a candidate solution can be found that is close to or is the optimal solution for the problem. The computer programs are not fully formed source code but rather a derivative that is represented as a parse tree. The initial solutions are randomly generated and set to a certain population size that the system can compute efficiently. Research has shown that better solutions can be obtained if 1) the population size is increased and 2) if multiple runs are performed of each experiment. If multiple runs are initiated on many machines the probability of finding an optimal solution are increased exponentially and computed more efficiently. With the proliferation of the web and high speed bandwidth connections genetic programming can take advantage of grid computing to both increase population size and increasing the number of runs by utilising machines connected to the web. Using XML-Schema as a global referencing mechanism for defining the parameters and syntax of the evolvable computer programs all machines can synchronise ad-hoc to the ever changing environment of the solution space. Another advantage of using XML is that rules are constructed that can be transformed by XSLT or DOM tree viewers so they can be understood by the GP programmer. This allows the programmer to experiment by manipulating rules to increase the fitness of a rule and evaluate the selection of parameters used to define a solution
A generic operational metatheory for algebraic effects
We provide a syntactic analysis of contextual preorder and equivalence for a polymorphic programming language with effects. Our approach applies uniformly across a range of algebraic effects, and incorporates, as instances: errors, input/output, global state, nondeterminism, probabilistic choice, and combinations thereof. Our approach is to extend Plotkin and Powerâs structural operational semantics for algebraic effects (FoSSaCS 2001) with a primitive âbasic preorderâ on ground type computation trees. The basic preorder is used to derive notions of contextual preorder and equivalence on program terms. Under mild assumptions on this relation, we prove fundamental properties of contextual preorder (hence equivalence) including extensionality properties and a characterisation via applicative contexts, and we provide machinery for reasoning about polymorphism using relational parametricity
An abstract view on syntax with sharing
The notion of term graph encodes a refinement of inductively generated syntax
in which regard is paid to the the sharing and discard of subterms. Inductively
generated syntax has an abstract expression in terms of initial algebras for
certain endofunctors on the category of sets, which permits one to go beyond
the set-based case, and speak of inductively generated syntax in other
settings. In this paper we give a similar abstract expression to the notion of
term graph. Aspects of the concrete theory are redeveloped in this setting, and
applications beyond the realm of sets discussed.Comment: 26 pages; v2: final journal versio
- âŠ