56 research outputs found
Full asymptotic expansion for Polya structures
In order to obtain the full asymptotic expansion for Polya trees, i.e. rooted
unlabelled and non-plane trees, Flajolet and Sedgewick observed that their
specification could be seen as a slight disturbance of the functional equation
satisfied by the Cayley tree function. Such an approach highlights the
complicated formal expressions with some combinatorial explanation. They
initiated this process in their book but they spared the technical part by only
exhibiting the first- order approximation. In this paper we exhibit the
university of the method and obtain the full asymptotic expansions for several
varieties of trees. We then focus on three different varieties of rooted,
unlabelled and non-plane trees, Polya trees, rooted identity trees and
hierarchies, in order to calculate explicitly their full singular expansions
and asymptotic expansions.Comment: To appear in Proceedings of the 27th International Conference on
Probabilistic, Combinatorial and Asymptotic Methods for the Analysis of
Algorithms, Krakow, Poland, 4-8 July, 201
Generalised and Quotient Models for Random And/Or Trees and Application to Satisfiability
This article is motivated by the following satisfiability question: pick
uniformly at random an and/or Boolean expression of length n, built on a set of
k_n Boolean variables. What is the probability that this expression is
satisfiable? asymptotically when n tends to infinity?
The model of random Boolean expressions developed in the present paper is the
model of Boolean Catalan trees, already extensively studied in the literature
for a constant sequence (k_n)_{n\geq 1}. The fundamental breakthrough of this
paper is to generalise the previous results to any (reasonable) sequence of
integers (k_n)_{n\geq 1}, which enables us, in particular, to solve the above
satisfiability question.
We also analyse the effect of introducing a natural equivalence relation on
the set of Boolean expressions. This new "quotient" model happens to exhibit a
very interesting threshold (or saturation) phenomenon at k_n = n/ln n.Comment: Long version of arXiv:1304.561
The relation between tree size complexity and probability for Boolean functions generated by uniform random trees
We consider a probability distribution on the set of Boolean functions in n
variables which is induced by random Boolean expressions. Such an expression is
a random rooted plane tree where the internal vertices are labelled with
connectives And and OR and the leaves are labelled with variables or negated
variables. We study limiting distribution when the tree size tends to infinity
and derive a relation between the tree size complexity and the probability of a
function. This is done by first expressing trees representing a particular
function as expansions of minimal trees representing this function and then
computing the probabilities by means of combinatorial counting arguments
relying on generating functions and singularity analysis
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
An iterative approach for counting reduced ordered binary decision diagrams
For three decades binary decision diagrams, a data structure efficiently
representing Boolean functions, have been widely used in many distinct contexts
like model verification, machine learning, cryptography and also resolution of
combinatorial problems. The most famous variant, called reduced ordered binary
decision diagram (ROBDD for short), can be viewed as the result of a compaction
procedure on the full decision tree. A useful property is that once an order
over the Boolean variables is fixed, each Boolean function is represented by
exactly one ROBDD. In this paper we aim at computing the exact distribution of
the Boolean functions in variables according to the ROBDD size}, where the
ROBDD size is equal to the number of decision nodes of the underlying directed
acyclic graph (DAG for short) structure. Recall the number of Boolean functions
with variables is equal to , which is of double exponential growth
with respect to the number of variables. The maximal size of a ROBDD with
variables is . Apart from the natural combinatorial
explosion observed, another difficulty for computing the distribution according
to size is to take into account dependencies within the DAG structure of
ROBDDs. In this paper, we develop the first polynomial algorithm to derive the
distribution of Boolean functions over variables with respect to ROBDD size
denoted by . The algorithm computes the (enumerative) generating function of
ROBDDs with variables up to size . It performs arithmetical
operations on integers and necessitates storing integers with
bit length . Our new approach relies on a decomposition of ROBDDs
layer by layer and on an inclusion-exclusion argument
The Combinatorics of Non-determinism
A deep connection exists between the interleaving semantics of concurrent processes and increasingly labelled combinatorial structures. In this paper we further explore this connection by studying the rich combinatorics of partially increasing structures underlying the operator of non-deterministic choice. Following the symbolic method of analytic combinatorics, we study the size of the computation trees induced by typical non-deterministic processes, providing a precise quantitative measure of the so-called "combinatorial explosion" phenomenon. Alternatively, we can see non-deterministic choice as encoding a family of tree-like partial orders. Measuring the (rather large) size of this family on average offers a key witness to the expressiveness of the choice operator. As a practical outcome of our quantitative study, we describe an efficient algorithm for generating computation paths uniformly at random
Beyond Series-Parallel Concurrent Systems: The Case of Arch Processes
In this paper we focus on concurrent processes built on synchronization by means of futures. This concept is an abstraction for processes based on a main execution thread but allowing to delay some computations. The structure of a general concurrent process is a directed acyclic graph (DAG). Since the quantitative study of increasingly labeled DAG (directly related to processes) seems out of reach (this is a #P-complete problem), we restrict ourselves to the study of arch processes, a simplistic model of processes with futures. They are based on two parameters related to their sizes and their numbers of arches. The increasingly labeled structures seems not to be specifiable in the classical sense of Analytic Combinatorics, but we manage to derive a recurrence equation for the enumeration. For this model we first exhibit an exact and an asymptotic formula for the number of runs of a given process. The second main contribution is composed of a uniform random sampler algorithm and an unranking one that allow efficient generation and exhaustive enumeration of the runs of a given arch process
Quantitative and Algorithmic aspects of Barrier Synchronization in Concurrency
In this paper we address the problem of understanding Concurrency Theory from a combinatorial point of view. We are interested in quantitative results and algorithmic tools to refine our understanding of the classical combinatorial explosion phenomenon arising in concurrency. This paper is essentially focusing on the the notion of synchronization from the point of view of combinatorics. As a first step, we address the quantitative problem of counting the number of executions of simple processes interacting with synchronization barriers. We elaborate a systematic decomposition of processes that produces a symbolic integral formula to solve the problem. Based on this procedure, we develop a generic algorithm to generate process executions uniformly at random. For some interesting sub-classes of processes we propose very efficient counting and random sampling algorithms. All these algorithms have one important characteristic in common: they work on the control graph of processes and thus do not require the explicit construction of the state-space
- âŠ