Anthony Brogni ; Sebastiaan J. C. Joosten - Translating Three-Variable First-Order Predicate Logic to Relation Algebra, Implemented using Z3

fi:11710 - Fundamenta Informaticae, December 27, 2025, Volume 195, Issues 1-4: Relational and Algebraic Methods in Computer Science 2024 - https://doi.org/10.46298/fi.11710
Translating Three-Variable First-Order Predicate Logic to Relation Algebra, Implemented using Z3Article

Authors: Anthony Brogni ; Sebastiaan J. C. Joosten

    This paper presents the development of a software tool that enables the translation of first-order predicate logic with at most three variables into relation algebra. The tool was developed using the Z3 theorem prover, leveraging its capabilities to enhance reliability, generate code, and expedite development. The resulting standalone Python program allows users to translate first-order logic formulas into relation algebra, eliminating the need to work with relation algebra explicitly. This paper outlines the theoretical background of first-order logic, relation algebra, and the translation process. It also describes the implementation details, including validation of the software tool using Z3 for testing correctness. By demonstrating the feasibility of utilizing first-order logic as an alternative language for expressing relation algebra, this tool paves the way for integrating first-order logic into tools traditionally relying on relation algebra as input.

    15 pages, 2 figures, 2 tables, to be published in Fundamenta Informaticae


    Volume: Volume 195, Issues 1-4: Relational and Algebraic Methods in Computer Science 2024
    Published on: December 27, 2025
    Accepted on: February 12, 2025
    Submitted on: August 8, 2023
    Keywords: Logic in Computer Science, I.2.2; F.4