Simulating Petri nets with Boolean Matrix Logic Programming

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Ai, Lun, Muggleton, Stephen H., Liang, Shi-Shun, Baldwin, Geoff S.
Format: Preprint
Published: 2024
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866913356756025344
author Ai, Lun
Muggleton, Stephen H.
Liang, Shi-Shun
Baldwin, Geoff S.
author_facet Ai, Lun
Muggleton, Stephen H.
Liang, Shi-Shun
Baldwin, Geoff S.
contents Recent attention to relational knowledge bases has sparked a demand for understanding how relations change between entities. Petri nets can represent knowledge structure and dynamically simulate interactions between entities, and thus they are well suited for achieving this goal. However, logic programs struggle to deal with extensive Petri nets due to the limitations of high-level symbol manipulations. To address this challenge, we introduce a novel approach called Boolean Matrix Logic Programming (BMLP), utilising boolean matrices as an alternative computation mechanism for Prolog to evaluate logic programs. Within this framework, we propose two novel BMLP algorithms for simulating a class of Petri nets known as elementary nets. This is done by transforming elementary nets into logically equivalent datalog programs. We demonstrate empirically that BMLP algorithms can evaluate these programs 40 times faster than tabled B-Prolog, SWI-Prolog, XSB-Prolog and Clingo. Our work enables the efficient simulation of elementary nets using Prolog, expanding the scope of analysis, learning and verification of complex systems with logic programming techniques.
format Preprint
id arxiv_https___arxiv_org_abs_2405_11412
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Simulating Petri nets with Boolean Matrix Logic Programming
Ai, Lun
Muggleton, Stephen H.
Liang, Shi-Shun
Baldwin, Geoff S.
Artificial Intelligence
Symbolic Computation
Recent attention to relational knowledge bases has sparked a demand for understanding how relations change between entities. Petri nets can represent knowledge structure and dynamically simulate interactions between entities, and thus they are well suited for achieving this goal. However, logic programs struggle to deal with extensive Petri nets due to the limitations of high-level symbol manipulations. To address this challenge, we introduce a novel approach called Boolean Matrix Logic Programming (BMLP), utilising boolean matrices as an alternative computation mechanism for Prolog to evaluate logic programs. Within this framework, we propose two novel BMLP algorithms for simulating a class of Petri nets known as elementary nets. This is done by transforming elementary nets into logically equivalent datalog programs. We demonstrate empirically that BMLP algorithms can evaluate these programs 40 times faster than tabled B-Prolog, SWI-Prolog, XSB-Prolog and Clingo. Our work enables the efficient simulation of elementary nets using Prolog, expanding the scope of analysis, learning and verification of complex systems with logic programming techniques.
title Simulating Petri nets with Boolean Matrix Logic Programming
topic Artificial Intelligence
Symbolic Computation
url https://arxiv.org/abs/2405.11412