SAT-Based Algorithms for Regular Graph Pattern Matching

Authors

  • Miguel Terra-Neves OutSystems
  • José Amaral OutSystems
  • Alexandre Lemos OutSystems
  • Rui Quintino OutSystems
  • Pedro Resende Zharta
  • Antonio Alegria OutSystems

DOI:

https://doi.org/10.1609/aaai.v38i8.28653

Keywords:

CSO: Applications, CSO: Constraint Programming, CSO: Constraint Satisfaction, CSO: Satisfiability

Abstract

Graph matching is a fundamental problem in pattern recognition, with many applications such as software analysis and computational biology. One well-known type of graph matching problem is graph isomorphism, which consists of deciding if two graphs are identical. Despite its usefulness, the properties that one may check using graph isomorphism are rather limited, since it only allows strict equality checks between two graphs. For example, it does not allow one to check complex structural properties such as if the target graph is an arbitrary length sequence followed by an arbitrary size loop. We propose a generalization of graph isomorphism that allows one to check such properties through a declarative specification. This specification is given in the form of a Regular Graph Pattern (ReGaP), a special type of graph, inspired by regular expressions, that may contain wildcard nodes that represent arbitrary structures such as variable-sized sequences or subgraphs. We propose a SAT-based algorithm for checking if a target graph matches a given ReGaP. We also propose a preprocessing technique for improving the performance of the algorithm and evaluate it through an extensive experimental evaluation on benchmarks from the CodeSearchNet dataset.

Published

2024-03-24

How to Cite

Terra-Neves, M., Amaral, J., Lemos, A., Quintino, R., Resende, P., & Alegria, A. (2024). SAT-Based Algorithms for Regular Graph Pattern Matching. Proceedings of the AAAI Conference on Artificial Intelligence, 38(8), 8136-8145. https://doi.org/10.1609/aaai.v38i8.28653

Issue

Section

AAAI Technical Track on Constraint Satisfaction and Optimization