Linear Algebraic Partial Evaluation of Logic Programs
In logic programming, partial evaluation (PE) performs unfolding rules in advance to reduce the cost of inferencing. Recently, PE of logic programs has been implemented in vector spaces by computing the powers of matrix representations. It has been reported that linear algebraic PE substantially enhances the practical performance of linear algebraic methods for logic programming. However, most recent research has focused exclusively on And-rules, assuming that their dependency graph is acyclic. In this paper, we introduce cycle-resolving techniques to ensure that linear algebraic PE works effectively even with cycles in the program. Additionally, we demonstrate that linear algebraic PE can also be extended to accommodate Or-rules. Moreover, we propose using eigendecomposition and Jordan normal form to conduct PE in vector spaces. We compare the proposed techniques on a set of acyclic and cyclic logic programs to evaluate their effectiveness. It is shown that the iteration method for PE, especially with sparse format, is the most efficient one in general cases. However, the decomposition method has the potential for future research to leverage eigenvalues and eigenvectors of program matrices for reasoning.
Authors
- Tuan Quoc Nguyen (ORCID: https://orcid.org/0000-0002-1754-9329)
- Chiaki Sakama (ORCID: https://orcid.org/0000-0002-9966-3722)
- Katsumi Inoue (ORCID: https://orcid.org/0000-0002-2717-9122)
Institutions
- National Institute of Informatics (JP)
- Wakayama University (JP)
Publication Details
- Published
- 2024-10-28
- DOI
- https://doi.org/10.1109/ictai62512.2024.00059
- Primary Topic
- Formal Methods in Verification
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- Japan Science and Technology Corporation
- Core Research for Evolutional Science and Technology