46 research outputs found

    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

    Combinatorial generation via permutation languages

    Get PDF
    In this work we present a general and versatile algorithmic framework for exhaustively generating a large variety of different combinatorial objects, based on encoding them as permutations. This approach provides a unified view on many known results and allows us to prove many new ones. In particular, we obtain the following four classical Gray codes as special cases: the Steinhaus-Johnson-Trotter algorithm to generate all permutations of an nn-element set by adjacent transpositions; the binary reflected Gray code to generate all nn-bit strings by flipping a single bit in each step; the Gray code for generating all nn-vertex binary trees by rotations due to Lucas, van Baronaigien, and Ruskey; the Gray code for generating all partitions of an nn-element ground set by element exchanges due to Kaye. We present two distinct applications for our new framework: The first main application is the generation of pattern-avoiding permutations, yielding new Gray codes for different families of permutations that are characterized by the avoidance of certain classical patterns, (bi)vincular patterns, barred patterns, Bruhat-restricted patterns, mesh patterns, monotone and geometric grid classes, and many others. We thus also obtain new Gray code algorithms for the combinatorial objects that are in bijection to these permutations, in particular for five different types of geometric rectangulations, also known as floorplans, which are divisions of a square into nn rectangles subject to certain restrictions. The second main application of our framework are lattice congruences of the weak order on the symmetric group~SnS_n. Recently, Pilaud and Santos realized all those lattice congruences as (n−1)(n-1)-dimensional polytopes, called quotientopes, which generalize hypercubes, associahedra, permutahedra etc. Our algorithm generates the equivalence classes of each of those lattice congruences, by producing a Hamilton path on the skeleton of the corresponding quotientope, yielding a constructive proof that each of these highly symmetric graphs is Hamiltonian. We thus also obtain a provable notion of optimality for the Gray codes obtained from our framework: They translate into walks along the edges of a polytope

    Metric combinatorics of convex polyhedra: cut loci and nonoverlapping unfoldings

    Full text link
    This paper is a study of the interaction between the combinatorics of boundaries of convex polytopes in arbitrary dimension and their metric geometry. Let S be the boundary of a convex polytope of dimension d+1, or more generally let S be a `convex polyhedral pseudomanifold'. We prove that S has a polyhedral nonoverlapping unfolding into R^d, so the metric space S is obtained from a closed (usually nonconvex) polyhedral ball in R^d by identifying pairs of boundary faces isometrically. Our existence proof exploits geodesic flow away from a source point v in S, which is the exponential map to S from the tangent space at v. We characterize the `cut locus' (the closure of the set of points in S with more than one shortest path to v) as a polyhedral complex in terms of Voronoi diagrams on facets. Analyzing infinitesimal expansion of the wavefront consisting of points at constant distance from v on S produces an algorithmic method for constructing Voronoi diagrams in each facet, and hence the unfolding of S. The algorithm, for which we provide pseudocode, solves the discrete geodesic problem. Its main construction generalizes the source unfolding for boundaries of 3-polytopes into R^2. We present conjectures concerning the number of shortest paths on the boundaries of convex polyhedra, and concerning continuous unfolding of convex polyhedra. We also comment on the intrinsic non-polynomial complexity of nonconvex polyhedral manifolds.Comment: 47 pages; 21 PostScript (.eps) figures, most in colo
    corecore