Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

torc_sat-0.1.1.tar.gz (33.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

torc_sat-0.1.1-py3-none-any.whl (43.1 kB view details)

Uploaded Python 3

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

Hashes for torc_sat-0.1.1.tar.gz
Algorithm Hash digest
SHA256 60b7b73b9e994a04b642a0886561f540deb7c27bcf2ef7ff294e6d4053f9082f
MD5 abfaad70db69b733502d1940203ebe92
BLAKE2b-256 432a2d3f2cf14f2e01323559abc4d781bfd9d9727e8bd097cba0a3e3f399527e

See more details on using hashes here.

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

Hashes for torc_sat-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e5f5f77be4b9dea2a74dc31ce7b4f15ac13a4374f6d34b80e318e4782a85a7c1
MD5 cb07933ab435e7761b7d496198ae95cb
BLAKE2b-256 9cc05926f412432a5164e59ba5b619331fecef619bd21bc20ec2fbe6854cba6b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page