Topological SAT preprocessor — detects UNSAT via cohomological obstructions
Project description
torc-sat
Topological SAT preprocessor. Detects UNSAT in CNF formulas via cohomological obstructions.
First-of-its-kind: recognizes combinatorial structures (PHP, Tseitin, graph coloring) hidden in DIMACS CNF and applies TORC topological infeasibility certificates. Returns UNSAT with mathematical proof or UNKNOWN (pass to SAT solver).
Install
pip install -e .
Usage
CLI
# Check a single instance
torc-sat check instance.cnf
# JSON output
torc-sat check instance.cnf --json
# Benchmark a directory
torc-sat bench benchmark/instances/
Python API
from torc_sat import check
result = check("instance.cnf")
print(result.verdict) # UNSAT or UNKNOWN
print(result.time_ms) # milliseconds
print(result.certificate) # topological certificate (if UNSAT)
Supported structures
| Structure | Detection | TORC method | Typical speedup vs SAT solver |
|---|---|---|---|
| PHP(n+1,n) | Pigeon + hole clauses | Cech H1 cohomology | >1000x for n>15 |
| Tseitin | XOR groups | GF(2) rank obstruction | >100x |
| Graph coloring | At-least-one + conflict | Clique lower bound | >50x |
Soundness
TORC never produces false positives. If it says UNSAT, it IS unsat (mathematical proof). If it says UNKNOWN, pass to a SAT solver.
License
All Rights Reserved. Carmen Esteban / IAFISCAL & PARTNERS.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file torc_sat-0.1.1.tar.gz.
File metadata
- Download URL: torc_sat-0.1.1.tar.gz
- Upload date:
- Size: 33.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60b7b73b9e994a04b642a0886561f540deb7c27bcf2ef7ff294e6d4053f9082f
|
|
| MD5 |
abfaad70db69b733502d1940203ebe92
|
|
| BLAKE2b-256 |
432a2d3f2cf14f2e01323559abc4d781bfd9d9727e8bd097cba0a3e3f399527e
|
File details
Details for the file torc_sat-0.1.1-py3-none-any.whl.
File metadata
- Download URL: torc_sat-0.1.1-py3-none-any.whl
- Upload date:
- Size: 43.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e5f5f77be4b9dea2a74dc31ce7b4f15ac13a4374f6d34b80e318e4782a85a7c1
|
|
| MD5 |
cb07933ab435e7761b7d496198ae95cb
|
|
| BLAKE2b-256 |
9cc05926f412432a5164e59ba5b619331fecef619bd21bc20ec2fbe6854cba6b
|