Skip to main content

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)

Source distribution for torc-sat 0.1.1
File Size Uploaded
torc_sat-0.1.1.tar.gz 33.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for torc-sat 0.1.1
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page