Efficient String Matching Using Bit Parallelism

Size: px
Start display at page:

Download "Efficient String Matching Using Bit Parallelism"

Transcription

1 Efficient String Matching Using Bit Parallelism Kapil Kumar Soni, Rohit Vyas, Dr. Vivek Sharma TIT College, Bhopal, Madhya Pradesh, India Abstract: Bit parallelism is an inherent property of computer to perform bitwise a parallel operation on computer word, but it is performed only on data available in single computer word. Bit parallelism inherently favors parallelism of bit operations within computer word. Parallel computing comprises bit parallelism and analyzed that it can be carried out in parallel which ensures utilizing the word size of computer. This technique is being properly utilized to work out on various string matching problems for increasing the efficiency of various real world applications. Since 99 bit parallelism is being used in string matching applications to improve the matching pace. There are a variety of important bit parallel string matching algorithms exist like Shift-OR, BNDM, TNDM, SBNDM, BNDMq, Shift-OR with Q-Gram, and Multiple Patterns BNDM. This paper discusses the various important bit parallel string matching algorithms by means of example along with their advantages and disadvantages. matching algorithms whereas Shift-OR, Shift-OR with Q- grams and Multiple Patterns BNDM are the multiple pattern string matching algorithms. This paper presents the working of above mentioned bit parallel string matching algorithms with examples. Here we elaborate the advantages and disadvantages of these algorithm and gives the bit parallel string matching history. Keywords: String Matching, Bit Parallelism, Shift-OR, BNDM, TNDM, SBNDM, BNDMq, Shift-OR with Q-Gram, Multiple pattern BNDM. I. INTRODUCTION Bit parallelism [] is a built in quality of computer in which basic bit wise operations like AND, OR, NOR etc, are performed parallel within the computer word in the single clock cycle. Equivalent to computer word there are basic registers available for holding a data unit in the computer. Figure describes how the bit parallelism can be achieved in the computer. With the use of bit parallelism in the field of String Matching, matching speed is improved up to certain level. But using such kinds of bit parallel based string matching, matching is quite difficult and having number of limitations []. These algorithms can be used in most of the real world applications [] where string matching is required like as Intrusion Detection system, Plagiarism detection, Data Mining & Bioinformatics and etc. Bit parallel string matching algorithms are faster than the other benchmark character matching based algorithms like as KMP [], BM [5], BMH [6], BMHS [7], BMHS [8], BMI [9], Improved BMHS [0], Wu Manber [] and Aho- Corasick [] etc. The Bit Parallel algorithms are based on the simulation of non-deterministic automata. It is simply the efficient simulation of non-deterministic automata. Figure shows bit parallelism behaviour inside a computer. Some of the important bit parallel string matching algorithms are Shift-OR [], BNDM [], TNDM [5], SBNDM [5], BNDMq [7], Shift-OR with Q-Gram [6], and Multiple pattern BNDM [8]. BNDM, TNDM, SBNDM and BNDMq are the single pattern string Figure : Bit Parallelism in Computer II. HISTORY OF BIT PARALLEL STRING MATCHING In 99 the Baeza Yates and Gonnet gives the first bit parallel string matching algorithm named Shift- OR algorithm []. It was approximate multiple patterns string matching algorithm. In 998, based on Shift-OR algorithm Navarro and Raffinot proposed a new algorithm named as BNDM (Backward Non Deterministic Matching) []. BNDM is exact single pattern string matching algorithm. In BNDM algorithm, AND or SHIFT operation is used. BNDM set the benchmark in the string matching algorithm. After BNDM in 00 Peltola and Tarhio presented an improved version of BNDM named TNDM (Two Way Non Deterministic Matching) [5]. Except mismatch at last position this algorithm is same as BNDM algorithm. In 00 another algorithm Simplified BNDM also known as SBNDM [5] was suggested. It was an enhanced version of BNDM. Here we do not require finding the longest prefix which will give the better performance in some cases. In 006 an enhanced edition of Shift-OR algorithm was launched by Salmela, Tarhio and Kytojoki known as Shift OR with Q-Gram [6]. It is also an approximate multiple 65

2 string matching algorithm. It considers Q character at a time for scanning. In 009 Branislav Durian, Jan Holub, Hannu Peltola and Jorma Tarhio presented the concept of Q-gram in BNDM algorithm known as BNDMq [7]. It scans the Q characters at each arrangement. In 00 Changsheng Miao, Guiran Chang and Xingwei combine the concept of Q-gram with BNDM and implemented Multiple Pattern BNDM Algorithm [8]. Figure shows the timeline history of bit parallel string matching algorithms. III. BIT PARALLEL STRING MATCHING ALGROITHMS A. Shift-OR Algorithm: Shift-OR [] Algorithm gives the approximate matching results it means algorithm matching results may contain errors. In Shift OR algorithm searching is done from left to right. But this is designed for working on patterns of equal length plus the length less than or equal to the size of a computer word. Maximum multiple pattern algorithms are based on the automata theory. They build automata of the patterns in pre-processing phase. When the pattern set size is increased then the size of automata also increases which is difficult to maintain. Shift-OR algorithm is a replication of a nondeterministic automata. It is suitable to be implemented in hardware. Shift OR consist of two phases pre-processing and searching. Figure : Bit Parallel String Matching Timeline History In pre-processing phase we find out the bit vector of the every character which is possibly exists in the text. In this i th corresponding bit is zero the same character appears at position i otherwise place at i th position and write this in reverse order. In searching phase automaton has a transition from i to i+ on the basis of input character say 'c'. If i th bit in B[c] is 0, and in vector D where i th bit is 0 indicates that 0 occurs at MSB so we find the pattern at that particular position. In Shift OR algorithm preprocessing and searching both are simple. Here only Shift and AND are used and no buffering is required. This algorithm is working on the patterns whose lengths are equal. Let s take an example to understand Shift OR algorithm. Suppose King, thin and Apps be the patterns of length and "DeepthinKing" be the text of length. Bit Vector: B [K] = 0, B [i] = 00, B [n] = 00, B [g] = 0, B [t] = 0, B [h] = 0, B [a] = 0, B [p] = 00, B [s] = 0 and for others. Table shows the algorithm processing for this example. And the initial Bit vector D is initialized to all s. D =, pos = & D = D<<. Table : Shift-OR Algorithm Processing Example S.NO. Matching Process Comments Scan "D" D = (0) OR (B[D]=) D= Scan "e" pos = pos+= (B[e]=) D= Scan "e" pos = pos+= (B[e]=) D= Scan "p" pos = pos+= (B[p]=00) D= Scan "t" pos = pos+=5 (B[t]=0) D=0 Scan "h" pos = pos+=6 D=(00) OR (B[h]=0) D=0 pos = pos+=7 D=(00) OR (B[i]=00) D=0 pos = pos+=8 D=(00) OR (B[n]=00) D=0 because MSB is because MSB is because MSB is because MSB is MSB = 0 means patterns found at posm+ i.e. 8--=

3 9 0 Scan "K" pos = pos+=9 (B[K]=0) D=0 pos = pos+=0 D=(00) OR (B[i]=00) D=0 pos = pos+= D=(00) OR (B[n]=00) D=0 Scan "g" pos = pos+= D=(00) OR (B[K]=0) D=0 MSB = 0 means patterns found at posm+ i.e. 8--=5. B. BNDM Algorithm: BNDM i.e. Backward Non Deterministic Matching [] is single pattern exact string matching algorithm. In BNDM we scan the text from right to left respective of pattern. BNDM matching concept is based on shift OR Algorithm and suffix automata from BDM (Backward Deterministic Matching) Algorithm. This algorithm is simulation of BDM algorithm with the use of bit parallelism. BNDM simulates the non-deterministic version using bit parallelism. BNDM comprises of two phases pre-processing and searching. In pre-processing phase we find Bit Vectors of each character that will possibly come in text. This is done by using the pattern characters. Bit Vectors are to be calculated by putting for occurrence and 0 for nonoccurrence of the character and we first take bit vector D with initial value i.e. all one. Here bit vector size is less than or equal to the word length of the computer. While searching, the pattern is searched with the help AND & SHIFT operations. Pattern is searched when MSB of D is and value of character count pointer is 0. For example Let Text T = DeepthinKing' and Pattern P = King'. The Bit vectors of the characters are B [k] = 000, B [i] = 000, B [n] = 000, B [g] = 000 and other = Initial Value of D =, pos = 0, j = and last =. Table shows the BNDM algorithm processing example. Table : BNDM Algorithm Processing Example Scan "p" D is all zero means D= (D=)&(B[p]=0000) mismatch D=0000. with zero pos = pos +last = suffix entry. D=, j=, last= D= (D=)&(B[n]=000) D=000. j = j-=, D<< i.e. 000 D= (D=000)&(B[i]=000) D=000. j=j-=. D<< i.e. 000 Scan "h" D= ()&(B[h]=0000). pos = pos +last =8 D=, j=, last= Scan "g" D=, pos=8, j= and last= D= (D=)&(B[g]=000) D=000 j=j-=. D<< i.e D= (D=000)&(B[n]=000) D=000 j=j-=. D<< i.e D= (D=000)&(B[i]=000) D=000 j=j-=. D<< i.e Scan "K" D= ()&(B[K]=000) j=j-=0. Mismatch at h. Shift by h. MSB having means pattern found at position 5. BNDM algorithm is faster than the previous algorithm Shift OR, BDM and other character based algorithms. It Occupies very less space and perform various operations in parallel. It is very simple and flexible algorithm. Here pattern is assume to the less than or equal to the word size of computer. C. TNDM Algorithm: TNDM i.e. Two Ways Non Deterministic Matching [5] is Single pattern exact string matching algorithm. It is similar to the BNDM algorithm, but having only a single change, if mismatch occur at last position instead of shifting like BNDM, TNDM go forward to find suffix of reverse pattern. Due to this sometimes number of examined characters is less than BNDM. Therefore matching is faster than the BNDM in such cases. Figure shows the basic processing structure of TNDM algorithm. 67

4 D. SBNDM Algorithm: SBNDM [5] i.e. Simple Backward Non Deterministic Matching is same as BNDM algorithm. SBNDM is having some changes, for calculating the shifts. Because of that mechanism SBNDM algorithm is faster than the BNDM algorithm. Here we are not going to finding the largest prefix for shifting. Here we always go for first prefix. In SBNDM, the average length of shift is reduced. Here the innermost loop of algorithm becomes simple. It is faster than the BNDM algorithm in some of the favourable cases. Figure shows the shifting logic of the SBNDM Algorithm. Figure : TNDM shifting logic Figure : SBNDM shifting logic E. BNDMq Algorithm: BNDM with Q-gram [7] is an enhanced variation of the Basic BNDM algorithm. In BNDMq, the q-characters are read at each alignment before testing the variable. In this algorithm loop has been made in order to quickly advance m-q+ position, where m is the length of pattern. Here q can be varied according to our requirement. The whole algorithm can be easily understood with the help of the example given below. We perform the BNDMq algorithm whose various step are described in the example shown in Table. Here we don t enter the loop until the q gram is matched. Let us assume the text is "DeepthinKing" and pattern is "King". Bit vector B [K] = 000, B [i] = 000, B [n] = 000, B [g] = 000 and other = Table : BNDMq Processing Example Q=,i= D <= f(i,q) i.e. f(,) D=(B[e]=0000&B[p]<<=0000) D=0000 So i=i+m-q+=6 shifts the window. D<= f(6,) D=(B[h]=0000&B[i],<<=000) D=0000 So i=i+m-q+=9 D<= f(9,) D=(B[K]=000&B[i]<<=000) First = i-(m-q+)=6 D<= f(,) D=(B[n]=000&B[g]<<=000) D=000 First = i-(m-q+)=8, j=0 D=(D=000 & B[i]=000) D=000 Left shift J=9 D=(000&B[K]=000) shifts the window. Match shift the window by next Q. MSB means pattern found. F. Shift-OR with Q-Grams: Shift OR with Q-gram [6] is an improved version of the Shift-OR algorithm. In Shift-OR with Q-gram algorithm we take Q character at a time for comparison by doing this, the size of simulation automata will be reduced and the number of comparisons for finding pattern is reduced up to certain level. The Q-gram can be Successive Q-gram or Overlie Q- gram. In Successive Q-gram we read pattern in a sequence of q character at a time while in Overlie Q-gram we take q character from each character of the patterns. Let us take an example of Shift-OR Successive -Gram where Text is "DeepthinKing" and Patterns are inking, and epthin. Hence the Successive -gram of patterns are B [in] = 00, B [Ki] = 0, B [ng] = 0, B [ep] = 0, B [th] = 0 and other =. Table shows the processing of the algorithm. Table : Shift-OR with Q-grams Example D=,D<< D=((D=0)OR(B[De]=) D= remain the same D=,D<< D=((D=0)OR(B[ee]=) D= remain the same D=,D<< D=((D=0)OR(B[ep]=0) D=0 D=0,D<< D=((D=00)OR(B[th]=0) D=0 5 D=0,D<< D=((D=00)OR(B[in]=00) D=00 6 D=0,D<< D=((D=00)OR(B[Ki]=0) D=0 7 D=0,D<< D=((D=00)OR(B[ng]=0) D=0 MSB 0 means pattern match. MSB 0 means pattern match. 68

5 Because of the Q-Grams technique Shift-OR Algorithm becomes faster and the total number of false matches is reduced. G. Multiple Patterns BNDM Algorithm: Changsheng Miao, Guiran Chang and Xingwei Wang convert the BNDM algorithm in multiple pattern BNDM algorithms [7]. They develop Filtering Based Multiple String Matching Algorithm by Combining Q-Grams and BNDM. It is very simple algorithm and may contain false matches. In multiple pattern BNDM string matching algorithm multiple patterns can be searched this was not possible in normal BNDM algorithm. We need filtering after pattern match to find the exact match which will take extra time to search. This algorithm is the similar to Shift- OR with Q-gram only the change is instead of Shift-OR it uses the BNDM matching process. IV. CONCLUSION Bit parallelism is the inherent behaviour of the computer through which we can get the speed-up in various real world applications where bitwise operations are used. Bit parallel string matching algorithms are the new series of efficient algorithms. BNDM, TNDM, SBNDM, BNDMq are the bit parallel single pattern string matching algorithms and Shift-OR, Shift-OR with Q-Grams, multiple pattern BNDM are used for multiple pattern matching bit parallel algorithms. These are efficient while comparing to standard character based algorithm. These algorithms have some disadvantages, major disadvantage of these algorithm is working on patterns of length less than or equal to computer word. Multiple pattern algorithms were working on the pattern of equal length and it allows the approximation in matching results. V. FUTURE WORK Multiple pattern bit parallel exact string matching algorithm is not available yet. So multiple pattern exact string matching is required for matching. Word size limitation present in the bit parallel algorithm can also be removed in future. REFERENCES [].Vidya Saikrishna, Akhtar Rasool and Nilay Khare, Time Efficient String Matching Solution for Single and Multiple Pattern using Bit Parallelism, In procd. Of International Journal of Computer Applications ( ) Volume 6 No.6, May 0. [].Christian Charras and Thierry Lecroq, Handbook of Exact String_Matching Algorithms, Published in King s college publication, Feb 00. [].Vidya Saikrishna, Akhtar Rasool and Nilay Khare, "String Matching and its Applications in Diversified Fields",IJCSI International Journal of Computer Science Issues, Vol. 9, Issue, No, January 0 Page-9-6. ISSN (Online): []. Knuth D E, Morris Jr J. H and Pratt V. R, Fast pattern matching in strings, In the procd. Of SIAM J.Comput., Vol. 6,, pp. 50, 977. [5]. Boyer R S and Moore J S, A fast string searching algorithm, Communication of ACM 0, Vol. 0, pp , 977. [6] Horspool R N, Practical fast searching in strings, In proc. Of Software Practical Exp, Vol. 0, 6, pp , 980. [7].Timo Raita, Tuning the Boyer Moore Horspool String Searching Algorithm, In the proc. of Software Practice and Experience, Vol. (0), pp , Oct. 99. [8].Jingbo Yuan, Jisen Zheng and Shunli Ding, An Improved Pattern Matching Algorithm, In the proc. of Third International Symposium on Intelligent Information Technology and Security Informatics (IITSI), pp , - April 00. [9] Linquan Xie, Xiaoming Liu and Guangxue Yue, Improved Pattern Matching Algorithm of BMHS, In the proc. of International Symposium on Information Science and Engineering (ISISE), pp , -6 Dec 00. [0]. JingboYuan, Jinsong Yang and Shunli Ding, An Improved Pattern Matching Algorithm Based on BMHS, In the proc. Of th International Symposium on Distributed Computing and Applications to Business, Engineering & Science, 0. []. Baojun Zhang, XiaoPing Chen, Lingdi Ping, Wu, Zhaohui, Address Filtering Based Wu-Manber Multiple Patterns Matching Algorithm, In the proc. of 009 Second International Workshop on Computer Science and Engineering[WCSE], Qingdao, Vol., pp. 08,8-0 Oct []. Alfred v aho and Margaret j corasick, efficient string matching: an aid to bibliographic search communication of acm, vol. 8, June 975. [].Ricardo A. Baeza-Yates and Gaston H. Gonnet, A New Approach to Text Searching, In Communications of the ACM, pp. 7-8, Oct 99. []. G. Navarro and M. Raffinot, Fast and flexible string matching by combining bit-parallelism and suffix automata,acm Journal. Experimental Algorithmics 998. [5]. Hannu Peltola and Jorma Tarhio, Alternative Algorithms for Bit- Parallel String Matching, String Processing and Information Retrieval, Spire Springer, LNCS 857, pp. 80-9, 00. [6]. L. Salmela, J. Tarhio, and J. Kytojoki, Multi pattern string matching with q-grams, Journal of Experimental Algorithms, Volume, pp. -9, 006. [7].Branislav Durian, Jan Holub, Hannu Peltola and Jarma Tarhio, Tuning BNDM with q-grams, In the proc. Of workshop on algorithm engineering and experiments, SIAM USA, pp. 9-7, 009 [8].Changsheng Miao, Guiran Chang and Xingwei Wang, Filtering Based Multiple String Matching Algorithm Combining q-grams and BNDM, In proc. Of Fourth International Conference on Genetic and Evolutionary Computing,

Importance of String Matching in Real World Problems

Importance of String Matching in Real World Problems www.ijecs.in International Journal Of Engineering And Computer Science ISSN: 2319-7242 Volume 3 Issue 6 June, 2014 Page No. 6371-6375 Importance of String Matching in Real World Problems Kapil Kumar Soni,

More information

Improving Practical Exact String Matching

Improving Practical Exact String Matching Improving Practical Exact String Matching Branislav Ďurian Jan Holub Hannu Peltola Jorma Tarhio Abstract We present improved variations of the BNDM algorithm for exact string matching. At each alignment

More information

Practical and Optimal String Matching

Practical and Optimal String Matching Practical and Optimal String Matching Kimmo Fredriksson Department of Computer Science, University of Joensuu, Finland Szymon Grabowski Technical University of Łódź, Computer Engineering Department SPIRE

More information

Tuning BNDM with q-grams

Tuning BNDM with q-grams Tuning BNDM with q-grams Branislav Ďurian Jan Holub Hannu Peltola Jorma Tarhio Abstract We develop bit-parallel algorithms for exact string matching. Our algorithms are variations of the BNDM and Shift-Or

More information

A Performance Evaluation of the Preprocessing Phase of Multiple Keyword Matching Algorithms

A Performance Evaluation of the Preprocessing Phase of Multiple Keyword Matching Algorithms A Performance Evaluation of the Preprocessing Phase of Multiple Keyword Matching Algorithms Charalampos S. Kouzinopoulos and Konstantinos G. Margaritis Parallel and Distributed Processing Laboratory Department

More information

arxiv: v1 [cs.ds] 3 Jul 2017

arxiv: v1 [cs.ds] 3 Jul 2017 Speeding Up String Matching by Weak Factor Recognition Domenico Cantone, Simone Faro, and Arianna Pavone arxiv:1707.00469v1 [cs.ds] 3 Jul 2017 Università di Catania, Viale A. Doria 6, 95125 Catania, Italy

More information

A Survey of String Matching Algorithms

A Survey of String Matching Algorithms RESEARCH ARTICLE OPEN ACCESS A Survey of String Matching Algorithms Koloud Al-Khamaiseh*, Shadi ALShagarin** *(Department of Communication and Electronics and Computer Engineering, Tafila Technical University,

More information

A New Multiple-Pattern Matching Algorithm for the Network Intrusion Detection System

A New Multiple-Pattern Matching Algorithm for the Network Intrusion Detection System IACSIT International Journal of Engineering and Technology, Vol. 8, No. 2, April 2016 A New Multiple-Pattern Matching Algorithm for the Network Intrusion Detection System Nguyen Le Dang, Dac-Nhuong Le,

More information

A Practical Distributed String Matching Algorithm Architecture and Implementation

A Practical Distributed String Matching Algorithm Architecture and Implementation A Practical Distributed String Matching Algorithm Architecture and Implementation Bi Kun, Gu Nai-jie, Tu Kun, Liu Xiao-hu, and Liu Gang International Science Index, Computer and Information Engineering

More information

Fast Hybrid String Matching Algorithms

Fast Hybrid String Matching Algorithms Fast Hybrid String Matching Algorithms Jamuna Bhandari 1 and Anil Kumar 2 1 Dept. of CSE, Manipal University Jaipur, INDIA 2 Dept of CSE, Manipal University Jaipur, INDIA ABSTRACT Various Hybrid algorithms

More information

TUNING BG MULTI-PATTERN STRING MATCHING ALGORITHM WITH UNROLLING Q-GRAMS AND HASH

TUNING BG MULTI-PATTERN STRING MATCHING ALGORITHM WITH UNROLLING Q-GRAMS AND HASH Computer Modelling and New Technologies, 2013, Vol.17, No. 4, 58-65 Transport and Telecommunication Institute, Lomonosov 1, LV-1019, Riga, Latvia TUNING BG MULTI-PATTERN STRING MATCHING ALGORITHM WITH

More information

Fast Exact String Matching Algorithms

Fast Exact String Matching Algorithms Fast Exact String Matching Algorithms Thierry Lecroq Thierry.Lecroq@univ-rouen.fr Laboratoire d Informatique, Traitement de l Information, Systèmes. Part of this work has been done with Maxime Crochemore

More information

Fast exact string matching algorithms

Fast exact string matching algorithms Information Processing Letters 102 (2007) 229 235 www.elsevier.com/locate/ipl Fast exact string matching algorithms Thierry Lecroq LITIS, Faculté des Sciences et des Techniques, Université de Rouen, 76821

More information

Volume 3, Issue 9, September 2015 International Journal of Advance Research in Computer Science and Management Studies

Volume 3, Issue 9, September 2015 International Journal of Advance Research in Computer Science and Management Studies Volume 3, Issue 9, September 2015 International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online at: www.ijarcsms.com

More information

Multi-Pattern String Matching with Very Large Pattern Sets

Multi-Pattern String Matching with Very Large Pattern Sets Multi-Pattern String Matching with Very Large Pattern Sets Leena Salmela L. Salmela, J. Tarhio and J. Kytöjoki: Multi-pattern string matching with q-grams. ACM Journal of Experimental Algorithmics, Volume

More information

Knuth-Morris-Pratt. Kranthi Kumar Mandumula Indiana State University Terre Haute IN, USA. December 16, 2011

Knuth-Morris-Pratt. Kranthi Kumar Mandumula Indiana State University Terre Haute IN, USA. December 16, 2011 Kranthi Kumar Mandumula Indiana State University Terre Haute IN, USA December 16, 2011 Abstract KMP is a string searching algorithm. The problem is to find the occurrence of P in S, where S is the given

More information

The Exact Online String Matching Problem: A Review of the Most Recent Results

The Exact Online String Matching Problem: A Review of the Most Recent Results 13 The Exact Online String Matching Problem: A Review of the Most Recent Results SIMONE FARO, Università di Catania THIERRY LECROQ, Université derouen This article addresses the online exact string matching

More information

GRASPm: an efficient algorithm for exact pattern-matching in genomic sequences

GRASPm: an efficient algorithm for exact pattern-matching in genomic sequences Int. J. Bioinformatics Research and Applications, Vol. GRASPm: an efficient algorithm for exact pattern-matching in genomic sequences Sérgio Deusdado* Centre for Mountain Research (CIMO), Polytechnic Institute

More information

Algorithms for Weighted Matching

Algorithms for Weighted Matching Algorithms for Weighted Matching Leena Salmela and Jorma Tarhio Helsinki University of Technology {lsalmela,tarhio}@cs.hut.fi Abstract. We consider the matching of weighted patterns against an unweighted

More information

Bit-Reduced Automaton Inspection for Cloud Security

Bit-Reduced Automaton Inspection for Cloud Security Bit-Reduced Automaton Inspection for Cloud Security Haiqiang Wang l Kuo-Kun Tseng l* Shu-Chuan Chu 2 John F. Roddick 2 Dachao Li 1 l Department of Computer Science and Technology, Harbin Institute of Technology,

More information

An efficient matching algorithm for encoded DNA sequences and binary strings

An efficient matching algorithm for encoded DNA sequences and binary strings An efficient matching algorithm for encoded DNA sequences and binary strings Simone Faro 1 and Thierry Lecroq 2 1 Dipartimento di Matematica e Informatica, Università di Catania, Italy 2 University of

More information

String Matching Algorithms

String Matching Algorithms String Matching Algorithms Georgy Gimel farb (with basic contributions from M. J. Dinneen, Wikipedia, and web materials by Ch. Charras and Thierry Lecroq, Russ Cox, David Eppstein, etc.) COMPSCI 369 Computational

More information

PLEASE SCROLL DOWN FOR ARTICLE. Full terms and conditions of use:

PLEASE SCROLL DOWN FOR ARTICLE. Full terms and conditions of use: This article was downloaded by: [Universiteit Twente] On: 21 May 2010 Access details: Access Details: [subscription number 907217948] Publisher Taylor & Francis Informa Ltd Registered in England and Wales

More information

Study of Selected Shifting based String Matching Algorithms

Study of Selected Shifting based String Matching Algorithms Study of Selected Shifting based String Matching Algorithms G.L. Prajapati, PhD Dept. of Comp. Engg. IET-Devi Ahilya University, Indore Mohd. Sharique Dept. of Comp. Engg. IET-Devi Ahilya University, Indore

More information

Application of String Matching in Auto Grading System

Application of String Matching in Auto Grading System Application of String Matching in Auto Grading System Akbar Suryowibowo Syam - 13511048 Computer Science / Informatics Engineering Major School of Electrical Engineering & Informatics Bandung Institute

More information

Text Algorithms (6EAP) Lecture 3: Exact paaern matching II

Text Algorithms (6EAP) Lecture 3: Exact paaern matching II Text Algorithms (6EA) Lecture 3: Exact paaern matching II Jaak Vilo 2012 fall Jaak Vilo MTAT.03.190 Text Algorithms 1 2 Algorithms Brute force O(nm) Knuth- Morris- raa O(n) Karp- Rabin hir- OR, hir- AND

More information

Indexing and Searching

Indexing and Searching Indexing and Searching Introduction How to retrieval information? A simple alternative is to search the whole text sequentially Another option is to build data structures over the text (called indices)

More information

Fast Searching in Biological Sequences Using Multiple Hash Functions

Fast Searching in Biological Sequences Using Multiple Hash Functions Fast Searching in Biological Sequences Using Multiple Hash Functions Simone Faro Dip. di Matematica e Informatica, Università di Catania Viale A.Doria n.6, 95125 Catania, Italy Email: faro@dmi.unict.it

More information

Multithreaded Sliding Window Approach to Improve Exact Pattern Matching Algorithms

Multithreaded Sliding Window Approach to Improve Exact Pattern Matching Algorithms Multithreaded Sliding Window Approach to Improve Exact Pattern Matching Algorithms Ala a Al-shdaifat Computer Information System Department The University of Jordan Amman, Jordan Bassam Hammo Computer

More information

Enhanced Two Sliding Windows Algorithm For Pattern Matching (ETSW) University of Jordan, Amman Jordan

Enhanced Two Sliding Windows Algorithm For Pattern Matching (ETSW) University of Jordan, Amman Jordan Enhanced Two Sliding Windows Algorithm For Matching (ETSW) Mariam Itriq 1, Amjad Hudaib 2, Aseel Al-Anani 2, Rola Al-Khalid 2, Dima Suleiman 1 1. Department of Business Information Systems, King Abdullah

More information

Exact String Matching. The Knuth-Morris-Pratt Algorithm

Exact String Matching. The Knuth-Morris-Pratt Algorithm Exact String Matching The Knuth-Morris-Pratt Algorithm Outline for Today The Exact Matching Problem A simple algorithm Motivation for better algorithms The Knuth-Morris-Pratt algorithm The Exact Matching

More information

Text Algorithms. Jaak Vilo 2016 fall. MTAT Text Algorithms

Text Algorithms. Jaak Vilo 2016 fall. MTAT Text Algorithms Text Algorithms Jaak Vilo 2016 fall Jaak Vilo MTAT.03.190 Text Algorithms 1 Topics Exact matching of one pattern(string) Exact matching of multiple patterns Suffix trie and tree indexes Applications Suffix

More information

Approximate search with constraints on indels with application in SPAM filtering Ambika Shrestha Chitrakar and Slobodan Petrović

Approximate search with constraints on indels with application in SPAM filtering Ambika Shrestha Chitrakar and Slobodan Petrović Approximate search with constraints on indels with application in SPAM filtering Ambika Shrestha Chitrakar and Slobodan Petrović Norwegian Information Security Laboratory, Gjøvik University College ambika.chitrakar2@hig.no,

More information

Accelerating Boyer Moore Searches on Binary Texts

Accelerating Boyer Moore Searches on Binary Texts Accelerating Boyer Moore Searches on Binary Texts Shmuel T. Klein Miri Kopel Ben-Nissan Department of Computer Science, Bar Ilan University, Ramat-Gan 52900, Israel Tel: (972 3) 531 8865 Email: {tomi,kopel}@cs.biu.ac.il

More information

Max-Shift BM and Max-Shift Horspool: Practical Fast Exact String Matching Algorithms

Max-Shift BM and Max-Shift Horspool: Practical Fast Exact String Matching Algorithms Regular Paper Max-Shift BM and Max-Shift Horspool: Practical Fast Exact String Matching Algorithms Mohammed Sahli 1,a) Tetsuo Shibuya 2 Received: September 8, 2011, Accepted: January 13, 2012 Abstract:

More information

Survey of Exact String Matching Algorithm for Detecting Patterns in Protein Sequence

Survey of Exact String Matching Algorithm for Detecting Patterns in Protein Sequence Advances in Computational Sciences and Technology ISSN 0973-6107 Volume 10, Number 8 (2017) pp. 2707-2720 Research India Publications http://www.ripublication.com Survey of Exact String Matching Algorithm

More information

Applied Databases. Sebastian Maneth. Lecture 14 Indexed String Search, Suffix Trees. University of Edinburgh - March 9th, 2017

Applied Databases. Sebastian Maneth. Lecture 14 Indexed String Search, Suffix Trees. University of Edinburgh - March 9th, 2017 Applied Databases Lecture 14 Indexed String Search, Suffix Trees Sebastian Maneth University of Edinburgh - March 9th, 2017 2 Recap: Morris-Pratt (1970) Given Pattern P, Text T, find all occurrences of

More information

A very fast string matching algorithm for small. alphabets and long patterns. (Extended abstract)

A very fast string matching algorithm for small. alphabets and long patterns. (Extended abstract) A very fast string matching algorithm for small alphabets and long patterns (Extended abstract) Christian Charras 1, Thierry Lecroq 1, and Joseph Daniel Pehoushek 2 1 LIR (Laboratoire d'informatique de

More information

Application of the BWT Method to Solve the Exact String Matching Problem

Application of the BWT Method to Solve the Exact String Matching Problem Application of the BWT Method to Solve the Exact String Matching Problem T. W. Chen and R. C. T. Lee Department of Computer Science National Tsing Hua University, Hsinchu, Taiwan chen81052084@gmail.com

More information

Inexact Pattern Matching Algorithms via Automata 1

Inexact Pattern Matching Algorithms via Automata 1 Inexact Pattern Matching Algorithms via Automata 1 1. Introduction Chung W. Ng BioChem 218 March 19, 2007 Pattern matching occurs in various applications, ranging from simple text searching in word processors

More information

On Performance Evaluation of BM-Based String Matching Algorithms in Distributed Computing Environment

On Performance Evaluation of BM-Based String Matching Algorithms in Distributed Computing Environment International Journal of Future Computer and Communication, Vol. 6, No. 1, March 2017 On Performance Evaluation of BM-Based String Matching Algorithms in Distributed Computing Environment Kunaphas Kongkitimanon

More information

A Two-Hashing Table Multiple String Pattern Matching Algorithm

A Two-Hashing Table Multiple String Pattern Matching Algorithm 2013 10th International Conference on Information Technology: New Generations A Two-Hashing Table Multiple String Pattern Matching Algorithm Chouvalit Khancome Department of Computer Science, Faculty of

More information

A New Platform NIDS Based On WEMA

A New Platform NIDS Based On WEMA I.J. Information Technology and Computer Science, 2015, 06, 52-58 Published Online May 2015 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijitcs.2015.06.07 A New Platform NIDS Based On WEMA Adnan A.

More information

String Matching Algorithms

String Matching Algorithms String Matching Algorithms 1. Naïve String Matching The naïve approach simply test all the possible placement of Pattern P[1.. m] relative to text T[1.. n]. Specifically, we try shift s = 0, 1,..., n -

More information

International Journal of Computer Engineering and Applications, Volume XI, Issue XI, Nov. 17, ISSN

International Journal of Computer Engineering and Applications, Volume XI, Issue XI, Nov. 17,  ISSN International Journal of Computer Engineering and Applications, Volume XI, Issue XI, Nov. 17, www.ijcea.com ISSN 2321-3469 DNA PATTERN MATCHING - A COMPARATIVE STUDY OF THREE PATTERN MATCHING ALGORITHMS

More information

Boyer-Moore strategy to efficient approximate string matching

Boyer-Moore strategy to efficient approximate string matching Boyer-Moore strategy to efficient approximate string matching Nadia El Mabrouk, Maxime Crochemore To cite this version: Nadia El Mabrouk, Maxime Crochemore. Boyer-Moore strategy to efficient approximate

More information

Indexing Variable Length Substrings for Exact and Approximate Matching

Indexing Variable Length Substrings for Exact and Approximate Matching Indexing Variable Length Substrings for Exact and Approximate Matching Gonzalo Navarro 1, and Leena Salmela 2 1 Department of Computer Science, University of Chile gnavarro@dcc.uchile.cl 2 Department of

More information

This chapter is based on the following sources, which are all recommended reading:

This chapter is based on the following sources, which are all recommended reading: Bioinformatics I, WS 09-10, D. Hson, December 7, 2009 105 6 Fast String Matching This chapter is based on the following sorces, which are all recommended reading: 1. An earlier version of this chapter

More information

Efficient validation and construction of border arrays

Efficient validation and construction of border arrays Efficient validation and construction of border arrays Jean-Pierre Duval Thierry Lecroq Arnaud Lefebvre LITIS, University of Rouen, France, {Jean-Pierre.Duval,Thierry.Lecroq,Arnaud.Lefebvre}@univ-rouen.fr

More information

A Multipattern Matching Algorithm Using Sampling and Bit Index

A Multipattern Matching Algorithm Using Sampling and Bit Index A Multipattern Matching Algorithm Using Sampling and Bit Index Jinhui Chen, Zhongfu Ye Department of Automation University of Science and Technology of China Hefei, P.R.China jeffcjh@mail.ustc.edu.cn,

More information

Experimental Results on String Matching Algorithms

Experimental Results on String Matching Algorithms SOFTWARE PRACTICE AND EXPERIENCE, VOL. 25(7), 727 765 (JULY 1995) Experimental Results on String Matching Algorithms thierry lecroq Laboratoire d Informatique de Rouen, Université de Rouen, Facultés des

More information

Enhanced Two Sliding Windows Algorithm For Pattern Matching (ETSW) University of Jordan, Amman Jordan.

Enhanced Two Sliding Windows Algorithm For Pattern Matching (ETSW) University of Jordan, Amman Jordan. Enhanced Two Sliding Windows Algorithm For Matching (ETSW) Mariam Itriq 1, Amjad Hudaib 2, Aseel Al-Anani 2, Rola Al-Khalid 2, Dima Suleiman 1 1. Department of Business Information Systems, King Abdullah

More information

Text Algorithms (6EAP) Lecture 3: Exact pa;ern matching II

Text Algorithms (6EAP) Lecture 3: Exact pa;ern matching II Text Algorithms (6EAP) Lecture 3: Exact pa;ern matching II Jaak Vilo 2010 fall Jaak Vilo MTAT.03.190 Text Algorithms 1 Find occurrences in text P S 2 Algorithms Brute force O(nm) Knuth- Morris- Pra; O(n)

More information

WAVEFRONT LONGEST COMMON SUBSEQUENCE ALGORITHM ON MULTICORE AND GPGPU PLATFORM BILAL MAHMOUD ISSA SHEHABAT UNIVERSITI SAINS MALAYSIA

WAVEFRONT LONGEST COMMON SUBSEQUENCE ALGORITHM ON MULTICORE AND GPGPU PLATFORM BILAL MAHMOUD ISSA SHEHABAT UNIVERSITI SAINS MALAYSIA WAVEFRONT LONGEST COMMON SUBSEQUENCE ALGORITHM ON MULTICORE AND GPGPU PLATFORM BILAL MAHMOUD ISSA SHEHABAT UNIVERSITI SAINS MALAYSIA 2010 WAVE-FRONT LONGEST COMMON SUBSEQUENCE ALGORITHM ON MULTICORE AND

More information

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio Project Proposal ECE 526 Spring 2006 Modified Data Structure of Aho-Corasick Benfano Soewito, Ed Flanigan and John Pangrazio 1. Introduction The internet becomes the most important tool in this decade

More information

String matching algorithms تقديم الطالب: سليمان ضاهر اشراف المدرس: علي جنيدي

String matching algorithms تقديم الطالب: سليمان ضاهر اشراف المدرس: علي جنيدي String matching algorithms تقديم الطالب: سليمان ضاهر اشراف المدرس: علي جنيدي للعام الدراسي: 2017/2016 The Introduction The introduction to information theory is quite simple. The invention of writing occurred

More information

A Survey on using String Matching Algorithms for Network Security

A Survey on using String Matching Algorithms for Network Security A Survey on using String Matching Algorithms for Network Security Sudheer Chelluboina In this paper, we make a survey of String Matching Algorithms for network security. It gives the summary of String

More information

Experiments on string matching in memory structures

Experiments on string matching in memory structures Experiments on string matching in memory structures Thierry Lecroq LIR (Laboratoire d'informatique de Rouen) and ABISS (Atelier de Biologie Informatique Statistique et Socio-Linguistique), Universite de

More information

Automaton-based Sublinear Keyword Pattern Matching. SoC Software. Loek Cleophas, Bruce W. Watson, Gerard Zwaan

Automaton-based Sublinear Keyword Pattern Matching. SoC Software. Loek Cleophas, Bruce W. Watson, Gerard Zwaan SPIRE 2004 Padova, Italy October 5 8, 2004 Automaton-based Sublinear Keyword Pattern Matching Loek Cleophas, Bruce W. Watson, Gerard Zwaan SoC Software Construction Software Construction Group Department

More information

Bit-parallel (δ, γ)-matching and Suffix Automata

Bit-parallel (δ, γ)-matching and Suffix Automata Bit-parallel (δ, γ)-matching and Suffix Automata Maxime Crochemore a,b,1, Costas S. Iliopoulos b, Gonzalo Navarro c,2,3, Yoan J. Pinzon b,d,2, and Alejandro Salinger c a Institut Gaspard-Monge, Université

More information

Fast Substring Matching

Fast Substring Matching Fast Substring Matching Andreas Klein 1 2 3 4 5 6 7 8 9 10 Abstract The substring matching problem occurs in several applications. Two of the well-known solutions are the Knuth-Morris-Pratt algorithm (which

More information

Hash-Based String Matching Algorithm For Network Intrusion Prevention systems (NIPS)

Hash-Based String Matching Algorithm For Network Intrusion Prevention systems (NIPS) Hash-Based String Matching Algorithm For Network Intrusion Prevention systems (NIPS) VINOD. O & B. M. SAGAR ISE Department, R.V.College of Engineering, Bangalore-560059, INDIA Email Id :vinod.goutham@gmail.com,sagar.bm@gmail.com

More information

Keywords Pattern Matching Algorithms, Pattern Matching, DNA and Protein Sequences, comparison per character

Keywords Pattern Matching Algorithms, Pattern Matching, DNA and Protein Sequences, comparison per character Volume 3, Issue 5, May 2013 ISSN: 2277 128X International Journal of Advanced Research in Computer Science and Software Engineering Research Paper Available online at: www.ijarcsse.com Index Based Multiple

More information

Given a text file, or several text files, how do we search for a query string?

Given a text file, or several text files, how do we search for a query string? CS 840 Fall 2016 Text Search and Succinct Data Structures: Unit 4 Given a text file, or several text files, how do we search for a query string? Note the query/pattern is not of fixed length, unlike key

More information

A New String Matching Algorithm Based on Logical Indexing

A New String Matching Algorithm Based on Logical Indexing The 5th International Conference on Electrical Engineering and Informatics 2015 August 10-11, 2015, Bali, Indonesia A New String Matching Algorithm Based on Logical Indexing Daniar Heri Kurniawan Department

More information

Computing Patterns in Strings I. Specific, Generic, Intrinsic

Computing Patterns in Strings I. Specific, Generic, Intrinsic Outline : Specific, Generic, Intrinsic 1,2,3 1 Algorithms Research Group, Department of Computing & Software McMaster University, Hamilton, Ontario, Canada email: smyth@mcmaster.ca 2 Digital Ecosystems

More information

String Matching using Inverted Lists

String Matching using Inverted Lists nternational Journal of Computer nformation Engineering String Matching using nverted Lists Chouvalit Khancome, Veera Boonjing nternational Science ndex, Computer nformation Engineering aset.org/publication/7400

More information

A Fast Order-Preserving Matching with q-neighborhood Filtration Using SIMD Instructions

A Fast Order-Preserving Matching with q-neighborhood Filtration Using SIMD Instructions A Fast Order-Preserving Matching with q-neighborhood Filtration Using SIMD Instructions Yohei Ueki, Kazuyuki Narisawa, and Ayumi Shinohara Graduate School of Information Sciences, Tohoku University, Japan

More information

High Performance Pattern Matching Algorithm for Network Security

High Performance Pattern Matching Algorithm for Network Security IJCSNS International Journal of Computer Science and Network Security, VOL.6 No., October 6 83 High Performance Pattern Matching Algorithm for Network Security Yang Wang and Hidetsune Kobayashi Graduate

More information

Advanced Pattern Based Virus Detection Algorithm for Network Security

Advanced Pattern Based Virus Detection Algorithm for Network Security Advanced Pattern Based Virus Detection Algorithm for Network Security Binroy T.B. M.E. Communication Systems Department of Electronics and Communication Engineering RVS College of Engineering & Technology,

More information

Small-Space 2D Compressed Dictionary Matching

Small-Space 2D Compressed Dictionary Matching Small-Space 2D Compressed Dictionary Matching Shoshana Neuburger 1 and Dina Sokol 2 1 Department of Computer Science, The Graduate Center of the City University of New York, New York, NY, 10016 shoshana@sci.brooklyn.cuny.edu

More information

Multiple Skip Multiple Pattern Matching Algorithm (MSMPMA)

Multiple Skip Multiple Pattern Matching Algorithm (MSMPMA) Multiple Skip Multiple Pattern Matching (MSMPMA) Ziad A.A. Alqadi 1, Musbah Aqel 2, & Ibrahiem M. M. El Emary 3 1 Faculty Engineering, Al Balqa Applied University, Amman, Jordan E-mail:ntalia@yahoo.com

More information

University of Huddersfield Repository

University of Huddersfield Repository University of Huddersfield Repository Klaib, Ahmad and Osborne, Hugh OE Matching for Searching Biological Sequences Original Citation Klaib, Ahmad and Osborne, Hugh (2009) OE Matching for Searching Biological

More information

An analysis of the Intelligent Predictive String Search Algorithm: A Probabilistic Approach

An analysis of the Intelligent Predictive String Search Algorithm: A Probabilistic Approach I.J. Information Technology and Computer Science, 2017, 2, 66-75 Published Online February 2017 in MECS (http://www.mecs-press.org/) DOI: 10.5815/ijitcs.2017.02.08 An analysis of the Intelligent Predictive

More information

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio

Project Proposal. ECE 526 Spring Modified Data Structure of Aho-Corasick. Benfano Soewito, Ed Flanigan and John Pangrazio Project Proposal ECE 526 Spring 2006 Modified Data Structure of Aho-Corasick Benfano Soewito, Ed Flanigan and John Pangrazio 1. Introduction The internet becomes the most important tool in this decade

More information

Log Linear Model for String Transformation Using Large Data Sets

Log Linear Model for String Transformation Using Large Data Sets Log Linear Model for String Transformation Using Large Data Sets Mr.G.Lenin 1, Ms.B.Vanitha 2, Mrs.C.K.Vijayalakshmi 3 Assistant Professor, Department of CSE, Podhigai College of Engineering & Technology,

More information

Article A Multi-Fusion Pattern Matching Algorithm for Signature-Based Network Intrusion Detection System

Article A Multi-Fusion Pattern Matching Algorithm for Signature-Based Network Intrusion Detection System Article A Multi-Fusion Pattern Matching Algorithm for Signature-Based Network Intrusion Detection System Manohar Naik S 1, * and Geethanjali N 2 1 Research Scholar, Department of Computer Science & Technology,

More information

AGREP A FAST APPROXIMATE PATTERN-MATCHING TOOL. (Preliminary version) Sun Wu and Udi Manber 1

AGREP A FAST APPROXIMATE PATTERN-MATCHING TOOL. (Preliminary version) Sun Wu and Udi Manber 1 AGREP A FAST APPROXIMATE PATTERN-MATCHING TOOL (Preliminary version) Sun Wu and Udi Manber 1 Department of Computer Science University of Arizona Tucson, AZ 85721 (sw udi)@cs.arizona.edu ABSTRACT Searching

More information

CMSC423: Bioinformatic Algorithms, Databases and Tools. Exact string matching: introduction

CMSC423: Bioinformatic Algorithms, Databases and Tools. Exact string matching: introduction CMSC423: Bioinformatic Algorithms, Databases and Tools Exact string matching: introduction Sequence alignment: exact matching ACAGGTACAGTTCCCTCGACACCTACTACCTAAG CCTACT CCTACT CCTACT CCTACT Text Pattern

More information

Algorithms for Order- Preserving Matching

Algorithms for Order- Preserving Matching Departm en tofcom pu terscien ce Algorithms for Order- Preserving Matching TamannaChhabra 90 80 text pattern 70 60 50 40 30 20 10 0 0 1 2 3 4 5 6 7 8 9 10 11 DOCTORAL DISSERTATIONS Preface First, I

More information

Combined string searching algorithm based on knuth-morris- pratt and boyer-moore algorithms

Combined string searching algorithm based on knuth-morris- pratt and boyer-moore algorithms IOP Conference Series: Materials Science and Engineering PAPER OPEN ACCESS Combined string searching algorithm based on knuth-morris- pratt and boyer-moore algorithms To cite this article: R Yu Tsarev

More information

An Index Based Sequential Multiple Pattern Matching Algorithm Using Least Count

An Index Based Sequential Multiple Pattern Matching Algorithm Using Least Count 2011 International Conference on Life Science and Technology IPCBEE vol.3 (2011) (2011) IACSIT Press, Singapore An Index Based Sequential Multiple Pattern Matching Algorithm Using Least Count Raju Bhukya

More information

A Unifying Look at the Apostolico Giancarlo String-Matching Algorithm

A Unifying Look at the Apostolico Giancarlo String-Matching Algorithm A Unifying Look at the Apostolico Giancarlo String-Matching Algorithm MAXIME CROCHEMORE, IGM (Institut Gaspard-Monge), Université de Marne-la-Vallée, 77454 Marne-la-Vallée CEDEX 2, France. E-mail: mac@univ-mlv.fr,

More information

Clone code detector using Boyer Moore string search algorithm integrated with ontology editor

Clone code detector using Boyer Moore string search algorithm integrated with ontology editor EUROPEAN ACADEMIC RESEARCH Vol. IV, Issue 2/ May 2016 ISSN 2286-4822 www.euacademic.org Impact Factor: 3.4546 (UIF) DRJI Value: 5.9 (B+) Clone code detector using Boyer Moore string search algorithm integrated

More information

Chapter 7. Space and Time Tradeoffs. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

Chapter 7. Space and Time Tradeoffs. Copyright 2007 Pearson Addison-Wesley. All rights reserved. Chapter 7 Space and Time Tradeoffs Copyright 2007 Pearson Addison-Wesley. All rights reserved. Space-for-time tradeoffs Two varieties of space-for-time algorithms: input enhancement preprocess the input

More information

String Matching in Scribblenauts Unlimited

String Matching in Scribblenauts Unlimited String Matching in Scribblenauts Unlimited Jordan Fernando / 13510069 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia

More information

Efficient Algorithm for Two Dimensional Pattern Matching Problem (Square Pattern)

Efficient Algorithm for Two Dimensional Pattern Matching Problem (Square Pattern) Efficient Algorithm for Two Dimensional Pattern Matching Problem (Square Pattern) Hussein Abu-Mansour 1, Jaber Alwidian 1, Wael Hadi 2 1 ITC department Arab Open University Riyadh- Saudi Arabia 2 CIS department

More information

Information Processing Letters Vol. 30, No. 2, pp , January Acad. Andrei Ershov, ed. Partial Evaluation of Pattern Matching in Strings

Information Processing Letters Vol. 30, No. 2, pp , January Acad. Andrei Ershov, ed. Partial Evaluation of Pattern Matching in Strings Information Processing Letters Vol. 30, No. 2, pp. 79-86, January 1989 Acad. Andrei Ershov, ed. Partial Evaluation of Pattern Matching in Strings Charles Consel Olivier Danvy LITP DIKU { Computer Science

More information

Applications of Suffix Tree

Applications of Suffix Tree Applications of Suffix Tree Let us have a glimpse of the numerous applications of suffix trees. Exact String Matching As already mentioned earlier, given the suffix tree of the text, all occ occurrences

More information

Lecture 7 February 26, 2010

Lecture 7 February 26, 2010 6.85: Advanced Data Structures Spring Prof. Andre Schulz Lecture 7 February 6, Scribe: Mark Chen Overview In this lecture, we consider the string matching problem - finding all places in a text where some

More information

SWIFT -A Performance Accelerated Optimized String Matching Algorithm for Nvidia GPUs

SWIFT -A Performance Accelerated Optimized String Matching Algorithm for Nvidia GPUs 2016 15th International Symposium on Parallel and Distributed Computing SWIFT -A Performance Accelerated Optimized String Matching Algorithm for Nvidia GPUs Sourabh S. Shenoy, Supriya Nayak U. and B. Neelima

More information

String Algorithms. CITS3001 Algorithms, Agents and Artificial Intelligence. 2017, Semester 2. CLRS Chapter 32

String Algorithms. CITS3001 Algorithms, Agents and Artificial Intelligence. 2017, Semester 2. CLRS Chapter 32 String Algorithms CITS3001 Algorithms, Agents and Artificial Intelligence Tim French School of Computer Science and Software Engineering The University of Western Australia CLRS Chapter 32 2017, Semester

More information

String Searching Algorithm Implementation-Performance Study with Two Cluster Configuration

String Searching Algorithm Implementation-Performance Study with Two Cluster Configuration International Journal of Computer Science & Communication Vol. 1, No. 2, July-December 2010, pp. 271-275 String Searching Algorithm Implementation-Performance Study with Two Cluster Configuration Prasad

More information

String Matching with Multicore CPUs: Performing Better with the Aho-Corasick Algorithm

String Matching with Multicore CPUs: Performing Better with the Aho-Corasick Algorithm String Matching with Multicore CPUs: Performing Better with the -Corasick Algorithm S. Arudchutha, T. Nishanthy and R.G. Ragel Department of Computer Engineering University of Peradeniya, Sri Lanka Abstract

More information

Optimization of Boyer-Moore-Horspool-Sunday Algorithm

Optimization of Boyer-Moore-Horspool-Sunday Algorithm Optimization of Boyer-Moore-Horspool-Sunday Algorithm Rionaldi Chandraseta - 13515077 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung Bandung, Indonesia

More information

Comparisons of Efficient Implementations for DAWG

Comparisons of Efficient Implementations for DAWG Comparisons of Efficient Implementations for DAWG Masao Fuketa, Kazuhiro Morita, and Jun-ichi Aoe Abstract Key retrieval is very important in various applications. A trie and DAWG are data structures for

More information

Fast and Efficient Hashing for Sequence Similarity Search using Substring Extraction in DNA Sequence Databases

Fast and Efficient Hashing for Sequence Similarity Search using Substring Extraction in DNA Sequence Databases Fast and Efficient Hashing for Sequence Similarity Search using Substring Extraction in DNA Sequence Databases Robinson Silvester.A J. Cruz Antony M. Pratheepa, PhD ABSTRACT Emergent interest in genomic

More information

17 dicembre Luca Bortolussi SUFFIX TREES. From exact to approximate string matching.

17 dicembre Luca Bortolussi SUFFIX TREES. From exact to approximate string matching. 17 dicembre 2003 Luca Bortolussi SUFFIX TREES From exact to approximate string matching. An introduction to string matching String matching is an important branch of algorithmica, and it has applications

More information

MDH: A High Speed Multi-phase Dynamic Hash String Matching Algorithm for Large-Scale Pattern Set

MDH: A High Speed Multi-phase Dynamic Hash String Matching Algorithm for Large-Scale Pattern Set MDH: A High Speed Multi-phase Dynamic Hash String Matching Algorithm for Large-Scale Pattern Set Zongwei Zhou,2, Yibo Xue 2,3, Junda Liu,2, Wei Zhang,2, and Jun Li 2,3 Department of Computer Science and

More information

Automaton-based Backward Pattern Matching

Automaton-based Backward Pattern Matching Czech Technical University in Prague Faculty of Electrical Engineering Department of Computer Science and Engineering Automaton-based Backward Pattern Matching Doctoral Thesis Jan Antoš PhD program: Computer

More information