English

Unification in Matching Logic -- Revisited

Logic in Computer Science 2024-11-01 v1

Abstract

Matching logic is a logical framework for specifying and reasoning about programs using pattern matching semantics. A pattern is made up of a number of structural components and constraints. Structural components are syntactically matched, while constraints need to be satisfied. Having multiple structural patterns poses a practical problem as it requires multiple matching operations. This is easily remedied by unification, for which an algorithm has already been defined and proven correct in a sorted, polyadic variant of matching logic. This paper revisits the subject in the applicative variant of the language while generalising the unification problem and mechanizing a proven-sound solution in Coq.

Keywords

Cite

@article{arxiv.2410.23760,
  title  = {Unification in Matching Logic -- Revisited},
  author = {Ádám Kurucz and Péter Bereczky and Dániel Horpácsi},
  journal= {arXiv preprint arXiv:2410.23760},
  year   = {2024}
}

Comments

In Proceedings FROM 2024, arXiv:2410.23020

R2 v1 2026-06-28T19:42:38.426Z