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.dev19

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.dev19
File Size Uploaded
sleipnirgroup_jormungandr-0.6.7.dev19.tar.gz 132.4 kB Details

Built distributions (wheels)

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

Total release size: 4.2 MB

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

Download URL sleipnirgroup_jormungandr-0.6.7.dev19.tar.gz
Size 132.4 kB
Tags Source
SHA-256 checksum
How to use checksums
76b443a6e923e5c7767be26127f651b13df304e50af23deaeb79a7c6d3dc42b0
BLAKE2b-256 checksum
How to use checksums
75f85e7a663820d6e23eba84f2ce20718cee4934084dce4cd9ae1d0f9136eb5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 10, 2026.

Transparency log

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

Download URL sleipnirgroup_jormungandr-0.6.7.dev19-cp312-abi3-win_arm64.whl
Size 1.1 MB
Tags CPython 3.12 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
78b7bfb728a966bd9cecfe1aaf89106df880301011c965f2b3ab0f8c6cc9b15f
BLAKE2b-256 checksum
How to use checksums
49ed06c6d760ce16533eb46d2f829380c22d168cfb19b8da1d56f69a081220ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 10, 2026.

Transparency log

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

Download URL sleipnirgroup_jormungandr-0.6.7.dev19-cp312-abi3-win_amd64.whl
Size 900.7 kB
Tags CPython 3.12 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
7098d8e0d55b14599d364f3e1eb31b197f9b4a910cbb59562c32a077bd16597d
BLAKE2b-256 checksum
How to use checksums
f039b17f2b6637d6e4beb252bad2376b574f49f031ae1acdb1e02f1c6689b05a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 10, 2026.

Transparency log

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

Download URL sleipnirgroup_jormungandr-0.6.7.dev19-cp312-abi3-manylinux_2_39_x86_64.whl
Size 560.2 kB
Tags CPython 3.12 Linux glibc 2.39+ x86-64 abi3
SHA-256 checksum
How to use checksums
3a196d6f1b917ddc2f71018ae11d139395ff588efa0a0d6ff5a36329d340828b
BLAKE2b-256 checksum
How to use checksums
aeeb2f17461e4013c3392ab0b6b0fcd1173aba514e85beee67ec0c31c48ca21d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 10, 2026.

Transparency log

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

Download URL sleipnirgroup_jormungandr-0.6.7.dev19-cp312-abi3-manylinux_2_39_aarch64.whl
Size 506.3 kB
Tags CPython 3.12 Linux glibc 2.39+ ARM64 abi3
SHA-256 checksum
How to use checksums
5272cfaf332c908b392d4b64ede3f950ddf12592656057b2af081d83ab803c8f
BLAKE2b-256 checksum
How to use checksums
fd2bf5fb028f59592ec5de42389547f3b0c59e3e2685074290f411dbf2c1b8dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 10, 2026.

Transparency log

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

Download URL sleipnirgroup_jormungandr-0.6.7.dev19-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
979bfbd31d2dea6551f9dbacbce413c1c73eb119f179eb1a1e432bfe8a18f5b7
BLAKE2b-256 checksum
How to use checksums
b62779695fca53cc5284d0f8b0c3a0ef1d7bcce3e5593a4fe09e013b3365b174
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.6.7.dev19 This release

6 release files

0.6.6

6 release files

0.6.5

6 release files

0.6.4

6 release files

0.6.3

6 release files

0.6.2

6 release files

0.6.1

6 release files

0.6.0

6 release files

0.5.5

6 release files

0.5.4

6 release files

0.5.3

6 release files

0.5.2

6 release files

0.5.1

6 release files

0.5.0

6 release files

0.4.0

6 release files

0.3.5

6 release files

0.3.4

6 release files

0.3.3

6 release files

0.3.2

6 release files

0.3.1

6 release files

0.3.0

6 release files

0.2.2

6 release files

0.2.1

6 release files

0.2.0

6 release files

0.1.0

12 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