Skip to main content

An extensible framework for building applications around SAT, MaxSAT and related satisfiability technologies.

Project description

Paramita

Documentation | PyPI | Paramita Interfaces | Paramita Plugins

Paramita is an extensible framework for building applications around SAT, MaxSAT and related satisfiability technologies. It provides a unified API for interacting with different solvers, supports plugins written in C++ and Python, and includes modelling tools for constructing and solving problems.

Quick Start

Paramita is available at PyPI and can be installed using pip:

pip install paramita

The core Paramita package is independent of any specific solver. Solvers, encoders and other components are distributed as plugins that can be installed independently. For this example, we will download, compile and install CaDiCaL version 3.0.0 from the default paramita-plugins repository:

paramita plugins build cmake '#sat-solvers/cadical-3.0.0'

Then, we can use the compiled CaDiCaL 3.0.0 SAT solver to solve a CNF formula in Python:

from paramita.solvers import SatSolver

solver = SatSolver.from_name("Cadical300")
solver.add_clauses([[1, 2], [-1, -2]])
is_sat = solver.solve()
print(is_sat)

For more information you can visit the official documentation.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

paramita-0.0.1-cp313-cp313-manylinux_2_34_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

paramita-0.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

paramita-0.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

paramita-0.0.1-cp312-cp312-manylinux_2_34_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

paramita-0.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

paramita-0.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

paramita-0.0.1-cp311-cp311-manylinux_2_34_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

paramita-0.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

paramita-0.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

paramita-0.0.1-cp310-cp310-manylinux_2_34_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

paramita-0.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

paramita-0.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

paramita-0.0.1-cp39-cp39-manylinux_2_34_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

paramita-0.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

paramita-0.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

paramita-0.0.1-cp38-cp38-manylinux_2_34_x86_64.whl (1.3 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.34+ x86-64

paramita-0.0.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

paramita-0.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file paramita-0.0.1-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 0f6ad78e582c68d197d7398e954ad7a39a33f1591b67b0eaccaef6e3fa4dae37
MD5 616c8d9ee7b4fba88015e6372c0400b3
BLAKE2b-256 4d11c2a3231fa921786034b4e2a4a2eacf3db914dd3e72c2dd70375053dcd1ed

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 d6cfe7ac49b1555f079c0e8e8b73503d22df8afc6c54b05b1f6166fadd3aeb19
MD5 c9eb4a69b79123747bf214ec5b5e5927
BLAKE2b-256 5c4ad85210d6224f2e6898582bf754fcfdf3fdb1fbfd21346889c8ed3a1fb1db

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 cfec84a4c44a739e0d9cb2a6ac3d477438e81a765339a1f66f1c947cd1dfe4b2
MD5 4a63f054163f8f372535f0fefd30f71c
BLAKE2b-256 37a450e385c65279921cc8acb8f9c9fe5ea4115406e250fd7ac6abd8b124b8de

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1517f25de91c704e70e1e879737694b471ff96e1c3b801052d41b1f4bee8d701
MD5 854cc6703ad48700706542d80c8d153e
BLAKE2b-256 b6d1d54b83b05259a92545f56cdb94f2cf70e579aa347e8f1e8b08a5cac2cc21

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 14edeb58c5b9024c0f395f9c4add3b9d2119c2b60a0f11ad9ca8fff598aea6e1
MD5 112f2c7f8ae172b266a37ff567d27e85
BLAKE2b-256 f8794959a5e3884a7df956976fd97b894312ef098a0eb93c9747b8a34635ea34

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 20e5fca85888e88e7d452fe2304b33e95ccf4db5aadab56dc91d9e54554ac70b
MD5 7ea4129fcbe78b4e75a7a259fd5b691c
BLAKE2b-256 3e241b89ac04444d5c7079abb1ad45868fff16210b2d95a89fc31d86e436ff7c

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 75b78c4bcef3ba7c1542ba895c6d03129d9f121b82e59302aa4fbb3b2102ac04
MD5 bf7343b7b5c662425d7cf994447884d1
BLAKE2b-256 7a189c6422bfb9f1f23bda7207165ca723278b0359dc9b00c2918e4e21857700

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9cf3fd949726177514d9975970447187523fa107667dfc4e1664ef842f9f1b0d
MD5 292db970569ae4a376225bb4184d70e4
BLAKE2b-256 74030bb1bc09bd82aeb0f726b59b34278830163d5b525ded3bfe375671901f2f

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 1648302c4e3a9355d09508b5858bc01a2fb0233529a61d9854e93e0132576968
MD5 42525dcdd5f212e25bb29e4e768ce0b0
BLAKE2b-256 a861bae5eec56c264f21b8843d26e4370ddeba3b3cd2098ff5fb37d29c1b4a71

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 4c46c6dbc1318925b94a3ceaca7994a66e1e8e849e66d2ca2e3e92c789340915
MD5 5131ed7e7787fb2d3d71bd16bea29e8f
BLAKE2b-256 a8ea72284806ae2c95d3e6926874502eb693a1aa01ac2252227e7555613c0f88

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 f3153716ee5cb4b8fb67ed305539d7a56f9b140b405fca135b29cef5cda71d58
MD5 b24cb394c05f8029346e8c6857d9e112
BLAKE2b-256 fcdf7b53bf02d8a3e09503024abaadfb3dac0f2357529defb09d92ce519d29a9

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 ac71f2b9a9d139aad9fc5fb122a5e4b0c989441ba9aac4efbe7cbc589a1090df
MD5 193553224eeb76300a16914c9e345856
BLAKE2b-256 a228e0dfe17f08d4dcc5f1b546bda6475a73ac87c9280b42d1b7caec844cb3b5

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 47e5915e5cf5793fb3a9b09ecf52744a9f1a06f5c8574b9a743ae10ac175f41a
MD5 06bd4e14d4e133922c5ec7e190a7cb44
BLAKE2b-256 db085e9897e9433486f65a32b7f1a090ee30fbeaf9902973736a0a4ff663bf33

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e062c7e1c25442e5ad3519eb63cb98f7b1a999f1dc4f76b4a9c992584c02e0f6
MD5 e9ece6b8f8c647a7d98f9e25ce281018
BLAKE2b-256 07c10325cb005ea579b98575ee4e7ed83e1631340055600b1413cd4b11dd020f

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 ed6751d49052e4aadb3fd0a34cd2084f6c1fae7ddf2f7df0ac0b7dcb64b6505b
MD5 06c36b2e6bc5cf22a1c1710b5b90a7a0
BLAKE2b-256 bba0af3354882747f6fbbf0f0d32e7d3fe69a1028e81c43b42a5de60ff4dec00

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp38-cp38-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp38-cp38-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 7b2eeef23ab3079c3d2de2cbc9a13c2234136a70aa8e80bf804133c37d8d37a0
MD5 8a39c152ebc807c4e92a803ba0d0618e
BLAKE2b-256 d192d1eeb915215174453bd8f8112940da533ba4897a361f05336550a5ff5a88

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 dbbf2095c2985eaa1bb3b4544caf925cf6008a29e97196d359f725060ab0836e
MD5 1584ff553b9513bc10f00c6e974b8d6e
BLAKE2b-256 8ac532d28afecf87376191d76c87006bef45014af41fc2bc5226aaeb9c44996d

See more details on using hashes here.

File details

Details for the file paramita-0.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for paramita-0.0.1-cp38-cp38-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 0a0c68410bc39a16aaffeb136173716660c4b5383612c3e54bc26626ffb219a0
MD5 87678c852021c815ad07e332a9d006ca
BLAKE2b-256 809760a5d3dfe7828c0c15beba12897a81dadccc72f34beed59b53d4093f8e0b

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