Overview of Chiasmus capabilities
mainChiasmus is an MCP (Model Context Protocol) server that provides LLMs with formal verification and source code analysis capabilities. It uses a template-based pipeline to translate natural language into formal logic, which is then verified using Z3 (an SMT solver) and SWI-Prolog (via prolog-wasm-full, including library(clpfd)).
Key capabilities include:
- Formal Verification: Using Z3 to solve constraints (e.g., RBAC rule conflicts, dependency version compatibility, or validation consistency).
- Logic & Reachability: Using Prolog to trace call graphs for taint analysis (e.g., user input reaching a database) or state machine reachability (e.g., identifying dead-end states).
- Source Code Analysis: Using tree-sitter to parse files and identify dead code or perform impact analysis (transitive callers) when functions change.
- Automated Review: The
chiasmus_reviewtool provides a phased recipe of graph analyses and verification templates for step-by-step execution.