56 research outputs found

    Full asymptotic expansion for Polya structures

    Full text link
    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

    Full text link
    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

    Full text link
    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

    An Iterative Approach for Counting Reduced Ordered Binary Decision Diagrams

    Get PDF

    A Quantitative Study of Pure Parallel Processes

    Full text link
    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

    Full text link
    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 kk 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 kk variables is equal to 22k2^{2^k}, which is of double exponential growth with respect to the number of variables. The maximal size of a ROBDD with kk variables is Mk≈2k/kM_k \approx 2^k / k. 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 kk variables with respect to ROBDD size denoted by nn. The algorithm computes the (enumerative) generating function of ROBDDs with kk variables up to size nn. It performs O(kn4)O(k n^4) arithmetical operations on integers and necessitates storing O((k+n)n2)O((k+n) n^2) integers with bit length O(nlog⁡n)O(n\log n). Our new approach relies on a decomposition of ROBDDs layer by layer and on an inclusion-exclusion argument

    The Combinatorics of Non-determinism

    Get PDF
    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

    Get PDF
    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

    Get PDF
    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
    • 

    corecore