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.
Metadata
Release files for torc-sat 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| torc_sat-0.1.1.tar.gz | 33.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| torc_sat-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 76.1 kB
Release files / torc_sat-0.1.1.tar.gz
| Download URL | torc_sat-0.1.1.tar.gz |
|---|---|
| Size | 33.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
60b7b73b9e994a04b642a0886561f540deb7c27bcf2ef7ff294e6d4053f9082f
|
|
BLAKE2b-256 checksum How to use checksums |
432a2d3f2cf14f2e01323559abc4d781bfd9d9727e8bd097cba0a3e3f399527e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|
Release files / torc_sat-0.1.1-py3-none-any.whl
| Download URL | torc_sat-0.1.1-py3-none-any.whl |
|---|---|
| Size | 43.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e5f5f77be4b9dea2a74dc31ce7b4f15ac13a4374f6d34b80e318e4782a85a7c1
|
|
BLAKE2b-256 checksum How to use checksums |
9cc05926f412432a5164e59ba5b619331fecef619bd21bc20ec2fbe6854cba6b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.3
|