SharpLogic
An open-source formal verification tool for agent routing graphs. It encodes LangGraph-style multi-agent routing and retry logic as k-CNF, analyzes deadlocks and failure paths through #F counting, and provides Python hooks and a CLI for CI gate checks.
Timeline (last 90 days)
SharpLogic is an open-source project that encodes multi-agent routing and retries as k-CNF and uses a Rust kernel to count the number of deadlock and failure paths (#F counting), for use as a pre-release gate check.
SharpLogic provides a Python-side AgentGuard hook and a command-line tool, is open-sourced under the MIT license, hosts its code on GitHub, and offers an online demo.
SharpLogic's demo use case contains 20 variables, corresponding to a state space of 2^20, with offline checking taking microseconds.
#F counting counts the number of assignments that make the formula true, belonging to the counting problems in the #P complexity class (a generalization of #SAT); in the SharpLogic context, each assignment corresponds to a combination of conditions in the graph, and the counting result reflects the number of failure paths or deadlock combinations.
SharpLogic does not execute the agents but performs symbolic analysis of the graph structure, thus combining the exhaustiveness of model checking with the lightness of property testing.
SharpLogic's k-CNF encoding and #F counting can cover the finite state space of routing and retry logic, provided the graph is modeled correctly; if agent behavior depends on non-enumerable external states (such as open-ended text returned by tools), the formal model can only handle them abstractly, possibly producing false positives or false negatives.
SharpLogic's demo uses ETH-2026 as example code.
All Facts (7)
SharpLogic is an open-source project that encodes multi-agent routing and retries as k-CNF and uses a Rust kernel to count the number of deadlock and failure paths (#F counting), for use as a pre-release gate check.
50%UnverifiedSharpLogic provides a Python-side AgentGuard hook and a command-line tool, is open-sourced under the MIT license, hosts its code on GitHub, and offers an online demo.
50%UnverifiedSharpLogic's demo use case contains 20 variables, corresponding to a state space of 2^20, with offline checking taking microseconds.
50%Unverified#F counting counts the number of assignments that make the formula true, belonging to the counting problems in the #P complexity class (a generalization of #SAT); in the SharpLogic context, each assignment corresponds to a combination of conditions in the graph, and the counting result reflects the number of failure paths or deadlock combinations.
50%UnverifiedSharpLogic does not execute the agents but performs symbolic analysis of the graph structure, thus combining the exhaustiveness of model checking with the lightness of property testing.
50%UnverifiedSharpLogic's k-CNF encoding and #F counting can cover the finite state space of routing and retry logic, provided the graph is modeled correctly; if agent behavior depends on non-enumerable external states (such as open-ended text returned by tools), the formal model can only handle them abstractly, possibly producing false positives or false negatives.
50%UnverifiedSharpLogic's demo uses ETH-2026 as example code.
50%