proofofthought  by DebarghaG

Neuro-symbolic AI for verifiable reasoning

Created 1 month ago
348 stars

Top 79.8% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

ProofOfThought offers a neurosymbolic approach to AI reasoning by integrating Large Language Models (LLMs) with the Z3 theorem prover. It aims to provide robust, interpretable, and verifiable reasoning capabilities, targeting users who require explainable AI decision-making. The system enhances LLM reasoning by grounding it in formal logic, thereby increasing reliability.

How It Works

The system operates on a two-layer architecture: a high-level Python API (`z3dsl.reasoning`) for user interaction and a low-level JSON-based interface (`z3dsl`) for Z3 theorem prover communication. It translates natural language queries into formal logic representations that Z3 can process, enabling verifiable deductions and generating explainable answers. This hybrid neurosymbolic method combines the flexibility of LLMs with the rigor of symbolic computation.

Quick Start & Requirements

  • Primary install: pip install z3-solver openai scikit-learn numpy
  • Prerequisites: An OpenAI API key (or Azure OpenAI configuration) is required. Python environment.
  • Usage: Instantiate ProofOfThought with an LLM client (e.g., openai.OpenAI) and use the query method. Batch evaluation is available via EvaluationPipeline.
  • Examples: A comprehensive examples/ directory is provided.

Highlighted Details

  • Neurosymbolic program synthesis for robust and interpretable reasoning.
  • Integration with Z3 theorem prover for verifiable logical deduction.
  • Supports direct querying and batch evaluation pipelines.

Maintenance & Community

No specific details regarding maintainers, community channels (like Discord/Slack), or project roadmap are present in the provided README.

Licensing & Compatibility

The license type is not specified in the README. Therefore, compatibility for commercial use or integration with closed-source projects remains undetermined.

Limitations & Caveats

The system's functionality is dependent on external LLM APIs, necessitating API keys and incurring potential costs. The accuracy and robustness are contingent on the LLM's ability to correctly formulate logical expressions and Z3's capacity to solve them. Performance benchmarks and specific limitations of the Z3 integration are not detailed.

Health Check
Last Commit

2 weeks ago

Responsiveness

Inactive

Pull Requests (30d)
2
Issues (30d)
0
Star History
67 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.