521 research outputs found

    Bidirectional Text Compression in External Memory

    Get PDF
    Bidirectional compression algorithms work by substituting repeated substrings by references that, unlike in the famous LZ77-scheme, can point to either direction. We present such an algorithm that is particularly suited for an external memory implementation. We evaluate it experimentally on large data sets of size up to 128 GiB (using only 16 GiB of RAM) and show that it is significantly faster than all known LZ77 compressors, while producing a roughly similar number of factors. We also introduce an external memory decompressor for texts compressed with any uni- or bidirectional compression scheme

    Factorizing a String into Squares in Linear Time

    Get PDF
    A square factorization of a string w is a factorization of w in which each factor is a square. Dumitran et al. [SPIRE 2015, pp. 54-66] showed how to find a square factorization of a given string of length n in O(n log n) time, and they posed a question whether it can be done in O(n) time. In this paper, we answer their question positively, showing an O(n)-time algorithm for square factorization in the standard word RAM model with machine word size omega = Omega(log n). We also show an O(n + (n log^2 n) / omega)-time (respectively, O(n log n)-time) algorithm to find a square factorization which contains the maximum (respectively, minimum) number of squares

    Minimal Suffix and Rotation of a Substring in Optimal Time

    Get PDF
    For a text given in advance, the substring minimal suffix queries ask to determine the lexicographically minimal non-empty suffix of a substring specified by the location of its occurrence in the text. We develop a data structure answering such queries optimally: in constant time after linear-time preprocessing. This improves upon the results of Babenko et al. (CPM 2014), whose trade-off solution is characterized by Θ(nlogn)\Theta(n\log n) product of these time complexities. Next, we extend our queries to support concatenations of O(1)O(1) substrings, for which the construction and query time is preserved. We apply these generalized queries to compute lexicographically minimal and maximal rotations of a given substring in constant time after linear-time preprocessing. Our data structures mainly rely on properties of Lyndon words and Lyndon factorizations. We combine them with further algorithmic and combinatorial tools, such as fusion trees and the notion of order isomorphism of strings

    Parallel-Sparse Symmetrical/Unsymmetrical Finite Element Domain Decomposition Solver with Multi-Point Constraints for Structural/Acoustic Analysis

    Get PDF
    Details of parallel-sparse Domain Decomposition (DD) with multi-point constraints (MPC) formulation are explained. Major computational components of the DD formulation are identified. Critical roles of parallel (direct) sparse and iterative solvers with MPC are discussed within the framework of DD formulation. Both symmetrical and unsymmetrical system of simultaneous linear equations (SLE) can be handled by the developed DD formulation. For symmetrical SLE, option for imposing MPC equations is also provided. Large-scale (up to 25 million unknowns involving complex numbers) structural and acoustic Finite Element (FE) analysis are used to evaluate the parallel computational performance of the proposed DD implementation using different parallel computer platforms. Numerical examples show that the authors\u27 MPI/FORTRAN code is significantly faster than the commercial parallel sparse solver. Furthermore, the developed software can also conveniently and efficiently solve large SLE with MPCs, a feature not available in almost all commercial parallel sparse solvers
    corecore