{"@context":"https:\/\/schema.org\/","@type":"ScholarlyArticle","@id":"#article8625","name":"Succinct Online Dictionary Matching with Improved Worst-Case Guarantees","abstract":"In the online dictionary matching problem the goal is to preprocess a set of patterns D={P_1,...,P_d} over alphabet Sigma, so that given an online text (one character at a time) we report all of the occurrences of patterns that are a suffix of the current text before the following character arrives. We introduce a succinct Aho-Corasick like data structure for the online dictionary matching problem. Our solution uses a new succinct representation for multi-labeled trees, in which each node has a set of labels from a universe of size lambda. We consider lowest labeled ancestor (LLA) queries on multi-labeled trees, where given a node and a label we return the lowest proper ancestor of the node that has the queried label.\r\n\r\nIn this paper we introduce a succinct representation of multi-labeled trees for lambda=omega(1) that support LLA queries in O(log(log(lambda))) time. Using this representation of multi-labeled trees, we introduce a succinct data structure for the online dictionary matching problem when sigma=omega(1). In this solution the worst case cost per character is O(log(log(sigma)) + occ) time, where occ is the size of the current output.\r\nMoreover, the amortized cost per character is O(1+occ) time.","keywords":["Succinct indexing","dictionary matching","Aho-Corasick","labeled trees"],"author":[{"@type":"Person","name":"Kopelowitz, Tsvi","givenName":"Tsvi","familyName":"Kopelowitz"},{"@type":"Person","name":"Porat, Ely","givenName":"Ely","familyName":"Porat"},{"@type":"Person","name":"Rozen, Yaron","givenName":"Yaron","familyName":"Rozen"}],"position":6,"pageStart":"6:1","pageEnd":"6:13","dateCreated":"2016-06-27","datePublished":"2016-06-27","isAccessibleForFree":true,"license":"https:\/\/creativecommons.org\/licenses\/by\/3.0\/legalcode","copyrightHolder":[{"@type":"Person","name":"Kopelowitz, Tsvi","givenName":"Tsvi","familyName":"Kopelowitz"},{"@type":"Person","name":"Porat, Ely","givenName":"Ely","familyName":"Porat"},{"@type":"Person","name":"Rozen, Yaron","givenName":"Yaron","familyName":"Rozen"}],"copyrightYear":"2016","accessMode":"textual","accessModeSufficient":"textual","creativeWorkStatus":"Published","inLanguage":"en-US","sameAs":"https:\/\/doi.org\/10.4230\/LIPIcs.CPM.2016.6","publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","isPartOf":{"@type":"PublicationVolume","@id":"#volume6257","volumeNumber":54,"name":"27th Annual Symposium on Combinatorial Pattern Matching (CPM 2016)","dateCreated":"2016-06-27","datePublished":"2016-06-27","editor":[{"@type":"Person","name":"Grossi, Roberto","givenName":"Roberto","familyName":"Grossi"},{"@type":"Person","name":"Lewenstein, Moshe","givenName":"Moshe","familyName":"Lewenstein"}],"isAccessibleForFree":true,"publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","hasPart":"#article8625","isPartOf":{"@type":"Periodical","@id":"#series116","name":"Leibniz International Proceedings in Informatics","issn":"1868-8969","isAccessibleForFree":true,"publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","hasPart":"#volume6257"}}}