• Home
  • Search
  • Pattern Masking for Dictionary Matching: Theory and Practice
  • https://doi.org/10.1007/s00453-024-01213-8Copy DOI Icon

Pattern Masking for Dictionary Matching: Theory and Practice

Show More
  • Abstract
  • Highlights & Summary
  • PDF
  • Literature Map
  • References
  • Similar Papers
Abstract

Data masking is a common technique for sanitizing sensitive data maintained in database systems which is becoming increasingly important in various application areas, such as in record linkage of personal data. This work formalizes the Pattern Masking for Dictionary Matching (PMDM) problem: given a dictionary D\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {D}$$\\end{document} of d strings, each of length ℓ\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\ell $$\\end{document}, a query string q of length ℓ\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\ell $$\\end{document}, and a positive integer z, we are asked to compute a smallest set K⊆{1,…,ℓ}\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$K\\subseteq \\{1,\\ldots ,\\ell \\}$$\\end{document}, so that if q[i] is replaced by a wildcard for all i∈K\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$i\\in K$$\\end{document}, then q matches at least z strings from D\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {D}$$\\end{document}. Solving PMDM allows providing data utility guarantees as opposed to existing approaches. We first show, through a reduction from the well-known k-Clique problem, that a decision version of the PMDM problem is NP-complete, even for binary strings. We thus approach the problem from a more practical perspective. We show a combinatorial O((dℓ)|K|/3+dℓ)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {O}((d\\ell )^{|K|/3}+d\\ell )$$\\end{document}-time and O(dℓ)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {O}(d\\ell )$$\\end{document}-space algorithm for PMDM for |K|=O(1)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$|K|=\\mathscr {O}(1)$$\\end{document}. In fact, we show that we cannot hope for a faster combinatorial algorithm, unless the combinatorial k-Clique hypothesis fails (Abboud et al. in SIAM J Comput 47:2527–2555, 2018; Lincoln et al., in: 29th ACM-SIAM Symposium on Discrete Algorithms (SODA), 2018). Our combinatorial algorithm, executed with small |K|, is the backbone of a greedy heuristic that we propose. Our experiments on real-world and synthetic datasets show that our heuristic finds nearly-optimal solutions in practice and is also very efficient. We also generalize this algorithm for the problem of masking multiple query strings simultaneously so that every string has at least z matches in D\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {D}$$\\end{document}. PMDM can be viewed as a generalization of the decision version of the dictionary matching with mismatches problem: by querying a PMDM data structure with string q and z=1\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$z=1$$\\end{document}, one obtains the minimal number of mismatches of q with any string from D\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {D}$$\\end{document}. The query time or space of all known data structures for the more restricted problem of dictionary matching with at most k mismatches incurs some exponential factor with respect to k. A simple exact algorithm for PMDM runs in time O(2ℓd)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {O}(2^\\ell d)$$\\end{document}. We present a data structure for PMDM that answers queries over D\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {D}$$\\end{document} in time O(2ℓ/2(2ℓ/2+τ)ℓ)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {O}(2^{\\ell /2}(2^{\\ell /2}+\ au )\\ell )$$\\end{document} and requires space O(2ℓd2/τ2+2ℓ/2d)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {O}(2^{\\ell }d^2/\ au ^2+2^{\\ell /2}d)$$\\end{document}, for any parameter τ∈[1,d]\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\ au \\in [1,d]$$\\end{document}. We complement our results by showing a two-way polynomial-time reduction between PMDM and the Minimum Union problem [Chlamtáč et al., ACM-SIAM Symposium on Discrete Algorithms (SODA) 2017]. This gives a polynomial-time O(d1/4+ϵ)\\documentclass[12pt]{minimal} \\usepackage{amsmath} \\usepackage{wasysym} \\usepackage{amsfonts} \\usepackage{amssymb} \\usepackage{amsbsy} \\usepackage{mathrsfs} \\usepackage{upgreek} \\setlength{\\oddsidemargin}{-69pt} \\begin{document}$$\\mathscr {O}(d^{1/4+\\epsilon })$$\\end{document}-approximation algorithm for PMDM, which is tight under a plausible complexity conjecture. This is an extended version of a paper that was presented at International Symposium on Algorithms and Computation (ISAAC) 2021.

Loading PDF

Similar Papers
  • Book Chapter
  • Citations12

Faster p-norm minimizing flows, via smoothed q-norm problems

  • Jan 01, 2020
  • Deeksha Adil +1
  • Conference Article
  • Citations23

Partitioning into Expanders

  • Dec 18, 2013
  • Shayan Oveis Gharan +1
  • Conference Article
  • Citations49

Near Optimal Leader Election in Multi-Hop Radio Networks

  • Jan 06, 2013
  • Mohsen Ghaffari +1
  • Conference Article
  • Citations15

Inapproximability of the Multi-level Uncapacitated Facility Location Problem

  • Jan 17, 2012
  • Ravishankar Krishnaswamy +1
  • Conference Article
  • Citations48

Exact Algorithms for Partial Curve Matching via the Fréchet Distance

  • Jan 04, 2009
  • Kevin Buchin +2
  • Conference Article
  • Citations10

Using Hashing to Solve the Dictionary Problem (In External Memory)

  • Jan 17, 2012
  • Dépôt institutionnel de l'Université libre de Bruxelles (Université Libre de Bruxelles)
  • John Iacono +1
  • Conference Article
  • Citations32

The Complexity of Optimal Multidimensional Pricing

  • Dec 18, 2013
  • Xi Chen +4
  • Research Article

Introduction to the ACM-SIAM Symposium on Discrete Algorithms (SODA) 2019 Special Issue

  • Jan 23, 2022
  • ACM Transactions on Algorithms
  • Martin Hoefer +1
  • Conference Article
  • Citations24

Half-integrality, LP-branching and FPT Algorithms

  • Dec 18, 2013
  • Magnus Wahlström
  • Research Article
  • Citations1

Non-clairvoyant Weighted Flow Time Scheduling on Different Multi-processor Models

  • May 15, 2013
  • Theory of Computing Systems
  • Jianqiao Zhu +2
  • Book Chapter
  • Citations9

Faster Deterministic and Las Vegas Algorithms for Offline Approximate Nearest Neighbors in High Dimensions

  • Jan 01, 2020
  • Josh Alman +2
  • Conference Article
  • Citations25

Efficient algorithms for some special cases of the polynomial equivalence problem

  • Jan 23, 2011
  • Neeraj Kayal
  • Book Chapter
  • Citations3

A 4 + ε approximation for k-connected subgraphs

  • Jan 01, 2020
  • Zeev Nutov
  • Conference Article
  • Citations58

Sequential Auctions and Externalities

  • Jan 17, 2012
  • Renato Paes Leme +2
  • Conference Article
  • Citations42

Weighted flow time does not admit O(1)-competitive algorithms

  • Jan 04, 2009
  • Nikhil Bansal +1
Cactus Communications logo

Copyright 2026 Cactus Communications. All rights reserved.