PATTERN MATCHING WITH SWAPS IN PRACTICE

2012 ◽  
Vol 23 (02) ◽  
pp. 323-342 ◽  
Author(s):  
MATTEO CAMPANELLI ◽  
DOMENICO CANTONE ◽  
SIMONE FARO ◽  
EMANUELE GIAQUINTA

The Pattern Matching problem with Swaps consists in finding all occurrences of a pattern P in a text T, when disjoint local swaps in the pattern are allowed. In the Approximate Pattern Matching problem with Swaps one seeks, for every text location with a swapped match of P, the number of swaps necessary to obtain a match at the location. In this paper we devise two general algorithms for both Standard and Approximate Pattern Matching with Swaps, named CROSS-SAMPLING and BACKWARD-CROSS-SAMPLING, with a [Formula: see text] and [Formula: see text] worst-case time complexity, respectively. Then we provide efficient implementations of them, based on bit-parallelism, which achieve [Formula: see text] and [Formula: see text] worst-case time complexity, with patterns whose length is comparable to the word-size of the target machine. From an extensive comparison with some of the most effective algorithms for the swap matching problem, it turns out that our algorithms are very flexible and achieve very good results inpractice.

2018 ◽  
Vol 29 (02) ◽  
pp. 315-329 ◽  
Author(s):  
Timothy Ng ◽  
David Rappaport ◽  
Kai Salomaa

The neighbourhood of a language [Formula: see text] with respect to an additive distance consists of all strings that have distance at most the given radius from some string of [Formula: see text]. We show that the worst case deterministic state complexity of a radius [Formula: see text] neighbourhood of a language recognized by an [Formula: see text] state nondeterministic finite automaton [Formula: see text] is [Formula: see text]. In the case where [Formula: see text] is deterministic we get the same lower bound for the state complexity of the neighbourhood if we use an additive quasi-distance. The lower bound constructions use an alphabet of size linear in [Formula: see text]. We show that the worst case state complexity of the set of strings that contain a substring within distance [Formula: see text] from a string recognized by [Formula: see text] is [Formula: see text].


2012 ◽  
Vol 23 (02) ◽  
pp. 357-374 ◽  
Author(s):  
PÉTER BURCSI ◽  
FERDINANDO CICALESE ◽  
GABRIELE FICI ◽  
ZSUZSANNA LIPTÁK

The Parikh vector p(s) of a string s over a finite ordered alphabet Σ = {a1, …, aσ} is defined as the vector of multiplicities of the characters, p(s) = (p1, …, pσ), where pi = |{j | sj = ai}|. Parikh vector q occurs in s if s has a substring t with p(t) = q. The problem of searching for a query q in a text s of length n can be solved simply and worst-case optimally with a sliding window approach in O(n) time. We present two novel algorithms for the case where the text is fixed and many queries arrive over time. The first algorithm only decides whether a given Parikh vector appears in a binary text. It uses a linear size data structure and decides each query in O(1) time. The preprocessing can be done trivially in Θ(n2) time. The second algorithm finds all occurrences of a given Parikh vector in a text over an arbitrary alphabet of size σ ≥ 2 and has sub-linear expected time complexity. More precisely, we present two variants of the algorithm, both using an O(n) size data structure, each of which can be constructed in O(n) time. The first solution is very simple and easy to implement and leads to an expected query time of [Formula: see text], where m = ∑i qi is the length of a string with Parikh vector q. The second uses wavelet trees and improves the expected runtime to [Formula: see text], i.e., by a factor of log m.


2015 ◽  
Vol 8 (5-6) ◽  
pp. 340-352 ◽  
Author(s):  
David J. Stracuzzi ◽  
Randy C. Brost ◽  
Cynthia A. Phillips ◽  
David G. Robinson ◽  
Alyson G. Wilson ◽  
...  

2018 ◽  
Vol 72 (1) ◽  
pp. 55-70 ◽  
Author(s):  
Cláudio P. Santiago ◽  
Carlile Lavor ◽  
Sérgio Assunção Monteiro ◽  
Alberto Kroner-Martins

Author(s):  
William C. Regli ◽  
Satyandra K. Gupta ◽  
Dana S. Nau

Abstract While automated recognition of features has been attempted for a wide range of applications, no single existing approach possesses the functionality required to perform manufacturability analysis. In this paper, we present a methodology for taking a CAD model of a part and extracting a set of machinable features that contains the complete set of alternative interpretations of the part as collections of MRSEVs (Material Removal Shape Element Volumes, a STEP-based library of machining features). The approach handles a variety of features including those describing holes, pockets, slots, and chamfering and filleting operations. In addition, the approach considers accessibility constraints for these features, has an worst-case algorithmic time complexity quadratic in the number of solid modeling operations, and modifies features recognized to account for available tooling and produce more realistic volumes for manufacturability analysis.


Sign in / Sign up

Export Citation Format

Share Document