Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Sleipnir

C++ Python PyPI Downloads Website C++ API Python API Discord

Sleipnir is a reverse mode autodiff library, interior-point method, and NLP solver DSL for C++23 and Python. The DSL automatically chooses the best solver based on the problem structure.

#include <print>

#include <sleipnir/optimization/problem.hpp>

int main() {
  // Find the x, y pair with the largest product for which x + 3y = 36
  slp::Problem<double> problem;

  auto x = problem.decision_variable();
  auto y = problem.decision_variable();

  problem.maximize(x * y);
  problem.subject_to(x + 3 * y == 36);
  problem.solve();

  // x = 18.0, y = 6.0
  std::println("x = {}, y = {}", x.value(), y.value());
}
#!/usr/bin/env python

from sleipnir.optimization import Problem


def main():
    # Find the x, y pair with the largest product for which x + 3y = 36
    problem = Problem()

    x, y = problem.decision_variable(2)

    problem.maximize(x * y)
    problem.subject_to(x + 3 * y == 36)
    problem.solve()

    # x = 18.0, y = 6.0
    print(f"x = {x.value()}, y = {y.value()}")


if __name__ == "__main__":
    main()

Sleipnir supports easy cross-compilation via CMake toolchain files, provides good performance by default, and contains clean reference implementations of various solvers with links to explanatory material.

The C++ API also supports arbitrary scalar types, so users can specify higher precision floating-point types at the cost of speed.

Install

The following platforms are supported:

  • Windows
  • Linux
    • OS: Ubuntu 24.04
    • Runtime: GCC 14 libstdc++ (run sudo apt install g++-14)
  • macOS
    • OS: macOS 14.5
    • Runtime: Apple Clang 16.0.0 libc++ from Xcode 16.2 (run xcode-select --install)

To use Sleipnir within a CMake project, add the following to CMakeLists.txt:

include(FetchContent)

FetchContent_Declare(
    Sleipnir
    GIT_REPOSITORY https://github.com/SleipnirGroup/Sleipnir.git
    GIT_TAG main
    EXCLUDE_FROM_ALL
    SYSTEM
)
FetchContent_MakeAvailable(Sleipnir)

target_link_libraries(MyApp PUBLIC Sleipnir::Sleipnir)

To use Sleipnir in Python, install sleipnirgroup-jormungandr from PyPI:

pip install sleipnirgroup-jormungandr

If necessary, follow these instructions to build from source.

Docs

See the C++ API docs, Python API docs, and usage docs.

Examples

See the examples folder, C++ optimization unit tests, and Python optimization unit tests.

Benchmarks

See the benchmarks folder.

Contributing

See the contributing docs.

Metadata

Release files for sleipnirgroup-jormungandr 0.6.7.dev88

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for sleipnirgroup-jormungandr 0.6.7.dev88
File Size Uploaded Provenance Actions
sleipnirgroup_jormungandr-0.6.7.dev88.tar.gz 148.0 kB With provenance Details for sleipnirgroup_jormungandr-0.6.7.dev88.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for sleipnirgroup-jormungandr 0.6.7.dev88
File Actions
sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_arm64.whl CPython 3.12 abi3 Windows ARM64 Details for sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_arm64.whl
sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_amd64.whl CPython 3.12 abi3 Windows x86-64 Details for sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_amd64.whl
sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_x86_64.whl CPython 3.12 abi3 Linux glibc 2.39+ x86-64 Details for sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_x86_64.whl
sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_aarch64.whl CPython 3.12 abi3 Linux glibc 2.39+ ARM64 Details for sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_aarch64.whl
sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-macosx_14_0_universal2.whl CPython 3.12 abi3 macOS 14.0+ universal2 (ARM64, x86-64) Details for sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-macosx_14_0_universal2.whl

Total release size: 4.3 MB

Release files / sleipnirgroup_jormungandr-0.6.7.dev88.tar.gz

Download URL sleipnirgroup_jormungandr-0.6.7.dev88.tar.gz
Size 148.0 kB
Tags Source
SHA-256 checksum
How to use checksums
eead22cd6e4d6e659dd6671c97fd3f679d814352f7733f2343d449272d72a2b4
BLAKE2b-256 checksum
How to use checksums
b447420d394b02e2a713451dd9caf5a95537f2379cf5a5f30d8310259f908f47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_arm64.whl

Download URL sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_arm64.whl
Size 1.1 MB
Tags CPython 3.12 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
d984f7d14a9045ebf519b643f610ee8503bd3a2b2ac1bfd6aafaafe32fbd0e76
BLAKE2b-256 checksum
How to use checksums
2f3ea671e6089bb47836bfc38ea9ea36e456c50d8e47fa369d168e8995146125
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_amd64.whl

Download URL sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-win_amd64.whl
Size 911.7 kB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
5c981542864942681dfa66ff7e74a1e5fbd60ce6c7b845746cfeb78d77a3b187
BLAKE2b-256 checksum
How to use checksums
d4df254c4b640685b921bd7c2c785187a2278efed5f628c99749101a75ce453f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_x86_64.whl

Download URL sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_x86_64.whl
Size 576.1 kB
Tags CPython 3.12 Linux glibc 2.39+ x86-64 abi3
SHA-256 checksum
How to use checksums
636deeeb416874f8d663117d91b250a802efb4c52c5250afea408f27b4c3d02f
BLAKE2b-256 checksum
How to use checksums
d3d380b7dac2536bd733535c46289f3316901ca002ba63809fe9930d5f831bed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_aarch64.whl

Download URL sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-manylinux_2_39_aarch64.whl
Size 518.7 kB
Tags CPython 3.12 Linux glibc 2.39+ ARM64 abi3
SHA-256 checksum
How to use checksums
1af3418d5cc390f6615cb06a4722def3a4343f5e118afe0006fa16aba4a81e9f
BLAKE2b-256 checksum
How to use checksums
17a1c02e8a303cf2f90f2f512a69f87217a1e2cd200a20ee46d8e484951cd561
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-macosx_14_0_universal2.whl

Download URL sleipnirgroup_jormungandr-0.6.7.dev88-cp312-abi3-macosx_14_0_universal2.whl
Size 1.1 MB
Tags CPython 3.12 abi3 macOS 14.0+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
c36df25db73f38c9093386676ecb16a9c34a2dda6c5f9dbb3f86c56e589991f1
BLAKE2b-256 checksum
How to use checksums
696bd0f3186154510f4bc9ad869216c277f4e607c8f09006d1ace2423e917612
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Security for sleipnirgroup-jormungandr 0.6.7.dev88

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 6 files in this release have been uploaded with provenance metadata.

Select from 6 files

Attestation for sleipnirgroup_jormungandr-0.6.7.dev88.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release
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