What problem does it solve?
Formal-logic skill helps you determine whether logical statements are tautologies/contradictions, check the validity of arguments, and solve constraint puzzles by translating reasoning tasks into satisfiability or proof checks.
Core Features & Use Cases
- SMT for propositional and first-order logic: Encode formulas with Z3 and check satisfiability to verify arguments like “premises entail conclusion.”
- Constraint solving via SAT/SMT encodings: Solve logic-grid puzzles, Zebra/Einstein riddle, and N-Queens by expressing them as variables and constraints.
- Modal logic (S5) validity checking: Evaluate necessity/possibility properties under S5 Kripke frame semantics using brute-force model checks.
- Lean-style proof verification and sympy support (conceptual tooling): Use sympy’s logic utilities for symbolic manipulations and teach/verify equivalences for smaller formulas.
Quick Start
Use the formal-logic skill to check whether a candidate argument is valid by encoding its premises and conclusion in Z3 and testing whether the negated conclusion is satisfiable.