qdd-mpi 0.3.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. qdd_mpi-0.3.1/.github/workflows/mpi_test_on_pull_request.yml +58 -0
  2. qdd_mpi-0.3.1/.github/workflows/publish_mpi_to_pypi.yml +44 -0
  3. qdd_mpi-0.3.1/.github/workflows/publish_to_pypi_ci.yml +69 -0
  4. qdd_mpi-0.3.1/.github/workflows/test_on_pull_request.yml +70 -0
  5. qdd_mpi-0.3.1/.gitignore +67 -0
  6. qdd_mpi-0.3.1/.vscode/c_cpp_properties.json +17 -0
  7. qdd_mpi-0.3.1/.vscode/extensions.json +5 -0
  8. qdd_mpi-0.3.1/.vscode/settings.json +102 -0
  9. qdd_mpi-0.3.1/3rdPartyLicense/Boost_LICENSE_1_0.txt +23 -0
  10. qdd_mpi-0.3.1/3rdPartyLicense/GoogleTest_LICENSE.txt +28 -0
  11. qdd_mpi-0.3.1/3rdPartyLicense/README.md +25 -0
  12. qdd_mpi-0.3.1/3rdPartyLicense/ddsim_LICENSE.txt +21 -0
  13. qdd_mpi-0.3.1/3rdPartyLicense/eigen_LICENSE.txt +373 -0
  14. qdd_mpi-0.3.1/3rdPartyLicense/oneTBB_LICENSE.txt +201 -0
  15. qdd_mpi-0.3.1/3rdPartyLicense/qiskit_LICENSE.txt +203 -0
  16. qdd_mpi-0.3.1/CMakeLists.txt +48 -0
  17. qdd_mpi-0.3.1/CONTRIBUTING.md +19 -0
  18. qdd_mpi-0.3.1/CONTRIBUTING_ja.md +19 -0
  19. qdd_mpi-0.3.1/LICENSE.txt +9 -0
  20. qdd_mpi-0.3.1/PKG-INFO +172 -0
  21. qdd_mpi-0.3.1/README.md +145 -0
  22. qdd_mpi-0.3.1/README_MPI.md +51 -0
  23. qdd_mpi-0.3.1/bench/QuantumFactoring.py +482 -0
  24. qdd_mpi-0.3.1/bench/qcbm_main.py +63 -0
  25. qdd_mpi-0.3.1/bench/shor_main.py +48 -0
  26. qdd_mpi-0.3.1/docs/fx1000.md +79 -0
  27. qdd_mpi-0.3.1/include/cache.hpp +571 -0
  28. qdd_mpi-0.3.1/include/common.h +145 -0
  29. qdd_mpi-0.3.1/include/dd.h +551 -0
  30. qdd_mpi-0.3.1/include/table.hpp +156 -0
  31. qdd_mpi-0.3.1/pyproject.toml +76 -0
  32. qdd_mpi-0.3.1/pyproject.toml.bak +73 -0
  33. qdd_mpi-0.3.1/qdd/CMakeLists.txt +5 -0
  34. qdd_mpi-0.3.1/qdd/__init__.py +18 -0
  35. qdd_mpi-0.3.1/qdd/bindings.cpp +260 -0
  36. qdd_mpi-0.3.1/qdd/circuit_property.py +20 -0
  37. qdd_mpi-0.3.1/qdd/qdd_backend.py +990 -0
  38. qdd_mpi-0.3.1/qdd/qdd_estimator.py +642 -0
  39. qdd_mpi-0.3.1/qdd/qdd_failed_job.py +22 -0
  40. qdd_mpi-0.3.1/qdd/qdd_gate.py +14 -0
  41. qdd_mpi-0.3.1/qdd/qdd_job.py +30 -0
  42. qdd_mpi-0.3.1/qdd/qdd_provider.py +30 -0
  43. qdd_mpi-0.3.1/qdd/qdd_sampler.py +183 -0
  44. qdd_mpi-0.3.1/qdd/qdd_sv_backend.py +10 -0
  45. qdd_mpi-0.3.1/qdd/qdd_utils.py +21 -0
  46. qdd_mpi-0.3.1/scripts/build_mpi_sdist.sh +35 -0
  47. qdd_mpi-0.3.1/scripts/local_build_and_test_new.sh +62 -0
  48. qdd_mpi-0.3.1/src/CMakeLists.txt +6 -0
  49. qdd_mpi-0.3.1/src/dd.cpp +2208 -0
  50. qdd_mpi-0.3.1/test/CMakeLists.txt +26 -0
  51. qdd_mpi-0.3.1/test/__init__.py +0 -0
  52. qdd_mpi-0.3.1/test/mpi_qcbm.cpp +110 -0
  53. qdd_mpi-0.3.1/test/mpi_test.cpp +99 -0
  54. qdd_mpi-0.3.1/test/mpi_test_grover.cpp +238 -0
  55. qdd_mpi-0.3.1/test/python/__init__.py +0 -0
  56. qdd_mpi-0.3.1/test/python/helpers/__init__.py +0 -0
  57. qdd_mpi-0.3.1/test/python/helpers/circuit_helper.py +118 -0
  58. qdd_mpi-0.3.1/test/python/qiskit_tutorials/__init__.py +0 -0
  59. qdd_mpi-0.3.1/test/python/qiskit_tutorials/advanced_circuits/__init__.py +0 -0
  60. qdd_mpi-0.3.1/test/python/qiskit_tutorials/advanced_circuits/test_advanced_circuits.py +228 -0
  61. qdd_mpi-0.3.1/test/python/qiskit_tutorials/advanced_circuits/test_obtain_backend_information.py +41 -0
  62. qdd_mpi-0.3.1/test/python/qiskit_tutorials/advanced_circuits/test_operators.py +65 -0
  63. qdd_mpi-0.3.1/test/python/qiskit_tutorials/algorithms/__init__.py +0 -0
  64. qdd_mpi-0.3.1/test/python/qiskit_tutorials/algorithms/test_iqpe.py +215 -0
  65. qdd_mpi-0.3.1/test/python/qiskit_tutorials/algorithms/test_qaoa.py +117 -0
  66. qdd_mpi-0.3.1/test/python/qiskit_tutorials/algorithms/test_vqe.py +67 -0
  67. qdd_mpi-0.3.1/test/python/qiskit_tutorials/classical_simulators/__init__.py +0 -0
  68. qdd_mpi-0.3.1/test/python/qiskit_tutorials/classical_simulators/test_simulators.py +160 -0
  69. qdd_mpi-0.3.1/test/python/qiskit_tutorials/introductory/__init__.py +0 -0
  70. qdd_mpi-0.3.1/test/python/qiskit_tutorials/introductory/test_qiskit_warmup.py +49 -0
  71. qdd_mpi-0.3.1/test/python/qiskit_tutorials/operators/__init__.py +0 -0
  72. qdd_mpi-0.3.1/test/python/qiskit_tutorials/operators/test_operator_flow.py +67 -0
  73. qdd_mpi-0.3.1/test/python/qiskit_tutorials/quantum_circuits/__init__.py +0 -0
  74. qdd_mpi-0.3.1/test/python/qiskit_tutorials/quantum_circuits/test_circuit_basics.py +40 -0
  75. qdd_mpi-0.3.1/test/python/qiskit_tutorials/quantum_circuits/test_getting_started_with_qiskit.py +53 -0
  76. qdd_mpi-0.3.1/test/python/qiskit_tutorials/quantum_circuits/test_qiskit_visualization.py +38 -0
  77. qdd_mpi-0.3.1/test/python/qiskit_tutorials/quantum_circuits/test_summary_of_quantum_operations.py +66 -0
  78. qdd_mpi-0.3.1/test/python/test_basics.py +428 -0
  79. qdd_mpi-0.3.1/test/python/test_classical_condition.py +95 -0
  80. qdd_mpi-0.3.1/test/python/test_estimator.py +88 -0
  81. qdd_mpi-0.3.1/test/python/test_gate.py +255 -0
  82. qdd_mpi-0.3.1/test/python/test_mpi.py +22 -0
  83. qdd_mpi-0.3.1/test/python/test_sampler.py +109 -0
  84. qdd_mpi-0.3.1/test/qcbm.cpp +103 -0
  85. qdd_mpi-0.3.1/test/serialization_test.cpp +39 -0
  86. qdd_mpi-0.3.1/test/test.cpp +528 -0
  87. qdd_mpi-0.3.1/test/test_performance.cpp +150 -0
@@ -0,0 +1,58 @@
1
+ name: MPI test on pull request
2
+
3
+ on: pull_request
4
+
5
+ jobs:
6
+ mpi_test:
7
+ name: MPI test
8
+ runs-on: ubuntu-latest
9
+ timeout-minutes: 20
10
+ steps:
11
+ - uses: actions/checkout@v4
12
+ with:
13
+ fetch-depth: 0
14
+
15
+ - name: Install OpenMPI and Boost
16
+ run: |
17
+ sudo apt-get update
18
+ sudo apt-get install -y \
19
+ libopenmpi-dev \
20
+ openmpi-bin \
21
+ libboost-mpi-dev \
22
+ libboost-serialization-dev
23
+
24
+ - uses: actions/setup-python@v5
25
+ with:
26
+ python-version: "3.11"
27
+
28
+ - name: Build C++ MPI tests
29
+ run: |
30
+ cmake -S . -B build-mpi \
31
+ -DCMAKE_BUILD_TYPE=Release \
32
+ -DisMPI=ON \
33
+ -DBINDINGS=OFF \
34
+ -DCMAKE_C_COMPILER=mpicc \
35
+ -DCMAKE_CXX_COMPILER=mpicxx
36
+ cmake --build build-mpi -j
37
+
38
+ - name: Run C++ MPI tests
39
+ run: |
40
+ set -e
41
+ mpirun --oversubscribe -np 2 ./build-mpi/test/mpi_test
42
+ mpirun --oversubscribe -np 2 ./build-mpi/test/mpi_test_grover 6
43
+ mpirun --oversubscribe -np 2 ./build-mpi/test/mpi_qcbm 6
44
+
45
+ - name: Install qdd with MPI bindings
46
+ run: |
47
+ python -m pip install --upgrade pip build
48
+ python -m pip install mpi4py
49
+ CMAKE_ARGS="-DisMPI=ON" CC=mpicc CXX=mpicxx python -m pip install .[test]
50
+
51
+ - name: Run Python MPI tests
52
+ run: |
53
+ rm -rf /tmp/qdd-mpi-tests
54
+ mkdir -p /tmp/qdd-mpi-tests
55
+ cp pyproject.toml /tmp/qdd-mpi-tests/pyproject.toml
56
+ cp -r test /tmp/qdd-mpi-tests/test
57
+ cd /tmp/qdd-mpi-tests
58
+ mpirun --oversubscribe -np 2 python -m pytest -o addopts="" test/python/test_mpi.py
@@ -0,0 +1,44 @@
1
+ name: Publish qdd-mpi sdist to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+ workflow_dispatch:
8
+
9
+ jobs:
10
+ build_and_publish:
11
+ runs-on: ubuntu-latest
12
+ environment:
13
+ name: pypi-mpi
14
+ url: https://pypi.org/p/qdd-mpi
15
+ permissions:
16
+ contents: read
17
+ id-token: write
18
+ steps:
19
+ - uses: actions/checkout@v4
20
+ with:
21
+ fetch-depth: 0
22
+
23
+ - uses: actions/setup-python@v5
24
+ with:
25
+ python-version: "3.12"
26
+
27
+ - name: Install build tools
28
+ run: python -m pip install --upgrade pip build
29
+
30
+ - name: Build qdd-mpi sdist
31
+ run: |
32
+ if [[ "${GITHUB_REF_TYPE}" == "tag" && "${GITHUB_REF_NAME}" == v* ]]; then
33
+ export SETUPTOOLS_SCM_PRETEND_VERSION="${GITHUB_REF_NAME#v}"
34
+ fi
35
+ bash scripts/build_mpi_sdist.sh
36
+
37
+ - uses: actions/upload-artifact@v4
38
+ with:
39
+ name: qdd-mpi-sdist
40
+ path: dist-mpi/*.tar.gz
41
+
42
+ - uses: pypa/gh-action-pypi-publish@release/v1
43
+ with:
44
+ packages-dir: dist-mpi/
@@ -0,0 +1,69 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - "v*"
7
+ workflow_dispatch: {}
8
+
9
+ jobs:
10
+ build_wheels:
11
+ name: Build wheels (${{ matrix.os }} ${{ matrix.arch }} / cp${{ matrix.python-tag }})
12
+ runs-on: ${{ matrix.os }}
13
+ strategy:
14
+ fail-fast: false
15
+ matrix:
16
+ os: [ubuntu-latest, ubuntu-24.04-arm]
17
+ python-tag: ["39", "310", "311", "312", "313"]
18
+ include:
19
+ - os: ubuntu-latest
20
+ arch: x86_64
21
+ - os: ubuntu-24.04-arm
22
+ arch: aarch64
23
+ steps:
24
+ - uses: actions/checkout@v4
25
+ with:
26
+ fetch-depth: 0
27
+ - uses: pypa/cibuildwheel@v3.3.0
28
+ env:
29
+ CIBW_ARCHS_LINUX: ${{ matrix.arch }}
30
+ CIBW_BUILD: cp${{ matrix.python-tag }}-manylinux_${{ matrix.arch }}
31
+ - uses: actions/upload-artifact@v4
32
+ with:
33
+ name: wheels-${{ matrix.arch }}-cp${{ matrix.python-tag }}
34
+ path: ./wheelhouse/*.whl
35
+
36
+ build_sdist:
37
+ runs-on: ubuntu-latest
38
+ steps:
39
+ - uses: actions/checkout@v4
40
+ with:
41
+ fetch-depth: 0
42
+ - uses: actions/setup-python@v5
43
+ - run: pipx run build --sdist
44
+ - uses: actions/upload-artifact@v4
45
+ with:
46
+ name: sdist
47
+ path: dist/*.tar.gz
48
+
49
+ publish-to-pypi:
50
+ needs: [build_wheels, build_sdist]
51
+ if: startsWith(github.ref, 'refs/tags/v')
52
+ runs-on: ubuntu-latest
53
+ environment:
54
+ name: pypi
55
+ url: https://pypi.org/p/qdd
56
+ permissions:
57
+ id-token: write
58
+ steps:
59
+ - uses: actions/download-artifact@v4
60
+ with:
61
+ path: dist/
62
+ pattern: "wheels-*"
63
+ merge-multiple: true
64
+ - uses: actions/download-artifact@v4
65
+ with:
66
+ path: dist/
67
+ name: sdist
68
+ - run: ls -la dist/
69
+ - uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,70 @@
1
+ name: Test library on pull request
2
+
3
+ on: pull_request
4
+
5
+ jobs:
6
+ python_test:
7
+ name: Python test (${{ matrix.os }} ${{ matrix.arch }} / py${{ matrix.python-version }})
8
+ runs-on: ${{ matrix.os }}
9
+ strategy:
10
+ fail-fast: false
11
+ matrix:
12
+ os: [ubuntu-latest, ubuntu-24.04-arm]
13
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
14
+ include:
15
+ - os: ubuntu-latest
16
+ arch: x86_64
17
+ - os: ubuntu-24.04-arm
18
+ arch: aarch64
19
+
20
+ steps:
21
+ - uses: actions/checkout@v4
22
+ with:
23
+ fetch-depth: 0
24
+
25
+ - uses: actions/setup-python@v5
26
+ with:
27
+ python-version: ${{ matrix.python-version }}
28
+
29
+ - name: Install build tools
30
+ run: python -m pip install --upgrade pip build
31
+
32
+ - name: Install package and test dependencies
33
+ run: python -m pip install .[test]
34
+
35
+ - name: Run pytest
36
+ run: |
37
+ rm -rf /tmp/qdd-tests
38
+ mkdir -p /tmp/qdd-tests
39
+ cp pyproject.toml /tmp/qdd-tests/pyproject.toml
40
+ cp -r test /tmp/qdd-tests/test
41
+ cd /tmp/qdd-tests
42
+ python -m pytest -m "not slow and not mpi"
43
+
44
+ cpp_test:
45
+ name: C++ test (${{ matrix.os }} ${{ matrix.arch }})
46
+ runs-on: ${{ matrix.os }}
47
+ strategy:
48
+ fail-fast: false
49
+ matrix:
50
+ os: [ubuntu-latest, ubuntu-24.04-arm]
51
+ include:
52
+ - os: ubuntu-latest
53
+ arch: x86_64
54
+ - os: ubuntu-24.04-arm
55
+ arch: aarch64
56
+
57
+ steps:
58
+ - uses: actions/checkout@v4
59
+
60
+ - name: Show CMake version
61
+ run: cmake --version
62
+
63
+ - name: Configure
64
+ run: cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DBINDINGS=OFF
65
+
66
+ - name: Build
67
+ run: cmake --build build -j
68
+
69
+ - name: Run C++ tests
70
+ run: ctest --test-dir build --output-on-failure
@@ -0,0 +1,67 @@
1
+ .DS_Store
2
+ .DS_Store?
3
+ tags*
4
+ .tags*
5
+ build/
6
+ .cache/
7
+ tmp/
8
+ lib/
9
+ result/
10
+ __pycache__
11
+ .idea/
12
+ dist/
13
+ *.so
14
+ .python-version
15
+ .zip
16
+ compile_commands.json
17
+ _deps
18
+
19
+
20
+ # Compiled Object files
21
+ **/.DS_Store
22
+ *.slo
23
+ *.lo
24
+ *.o
25
+ *.obj
26
+
27
+ # Precompiled Headers
28
+ *.gch
29
+ *.pch
30
+
31
+ # Compiled Dynamic libraries
32
+ *.so
33
+ *.dylib
34
+ *.dll
35
+
36
+ # Fortran module files
37
+ *.mod
38
+ *.smod
39
+
40
+ # Compiled Static libraries
41
+ *.lai
42
+ *.la
43
+ *.a
44
+ *.lib
45
+
46
+ **/cmake-build-debug
47
+ **/CMakeCache.txt
48
+ **/cmake_install.cmake
49
+ **/install_manifest.txt
50
+ **/CMakeFiles/
51
+ **/CTestTestfile.cmake
52
+ **/Makefile
53
+ **/*.cbp
54
+ **/CMakeScripts
55
+ **/compile_commands.json
56
+
57
+ test/*_include.cmake
58
+ test/*_tests.cmake
59
+ test/qcbm
60
+ test/qdd_test
61
+
62
+
63
+ .venv*/
64
+ *.egg-info/
65
+ qdd/_version.py
66
+
67
+ .codex
@@ -0,0 +1,17 @@
1
+ {
2
+ "configurations": [
3
+ {
4
+ "name": "Linux",
5
+ "includePath": [
6
+ "${workspaceFolder}/**"
7
+ ],
8
+ "defines": [],
9
+ "compilerPath": "/usr/bin/clang",
10
+ "cStandard": "c17",
11
+ "cppStandard": "c++14",
12
+ "intelliSenseMode": "linux-clang-x64",
13
+ "compileCommands": "${workspaceFolder}/build/compile_commands.json"
14
+ }
15
+ ],
16
+ "version": 4
17
+ }
@@ -0,0 +1,5 @@
1
+ {
2
+ "recommendations": [
3
+ "esbenp.prettier-vscode"
4
+ ]
5
+ }
@@ -0,0 +1,102 @@
1
+ {
2
+ "[json]": {
3
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
4
+ },
5
+ "[markdown]": {
6
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
7
+ },
8
+ "[markdown-math]": {
9
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
10
+ },
11
+ "[markdown_latex_combined]": {
12
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
13
+ },
14
+ "[yaml]": {
15
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
16
+ },
17
+ "files.associations": {
18
+ "cmath": "cpp",
19
+ "array": "cpp",
20
+ "deque": "cpp",
21
+ "forward_list": "cpp",
22
+ "list": "cpp",
23
+ "string": "cpp",
24
+ "unordered_map": "cpp",
25
+ "unordered_set": "cpp",
26
+ "vector": "cpp",
27
+ "string_view": "cpp",
28
+ "hash_map": "cpp",
29
+ "initializer_list": "cpp",
30
+ "regex": "cpp",
31
+ "valarray": "cpp",
32
+ "cctype": "cpp",
33
+ "clocale": "cpp",
34
+ "cstdarg": "cpp",
35
+ "cstddef": "cpp",
36
+ "cstdio": "cpp",
37
+ "cstdlib": "cpp",
38
+ "cstring": "cpp",
39
+ "ctime": "cpp",
40
+ "cwchar": "cpp",
41
+ "cwctype": "cpp",
42
+ "any": "cpp",
43
+ "atomic": "cpp",
44
+ "strstream": "cpp",
45
+ "bit": "cpp",
46
+ "*.tcc": "cpp",
47
+ "bitset": "cpp",
48
+ "chrono": "cpp",
49
+ "codecvt": "cpp",
50
+ "compare": "cpp",
51
+ "complex": "cpp",
52
+ "concepts": "cpp",
53
+ "condition_variable": "cpp",
54
+ "cstdint": "cpp",
55
+ "map": "cpp",
56
+ "set": "cpp",
57
+ "exception": "cpp",
58
+ "algorithm": "cpp",
59
+ "functional": "cpp",
60
+ "iterator": "cpp",
61
+ "memory": "cpp",
62
+ "memory_resource": "cpp",
63
+ "numeric": "cpp",
64
+ "optional": "cpp",
65
+ "random": "cpp",
66
+ "ratio": "cpp",
67
+ "system_error": "cpp",
68
+ "tuple": "cpp",
69
+ "type_traits": "cpp",
70
+ "utility": "cpp",
71
+ "fstream": "cpp",
72
+ "future": "cpp",
73
+ "iomanip": "cpp",
74
+ "iosfwd": "cpp",
75
+ "iostream": "cpp",
76
+ "istream": "cpp",
77
+ "limits": "cpp",
78
+ "mutex": "cpp",
79
+ "new": "cpp",
80
+ "numbers": "cpp",
81
+ "ostream": "cpp",
82
+ "semaphore": "cpp",
83
+ "shared_mutex": "cpp",
84
+ "sstream": "cpp",
85
+ "stdexcept": "cpp",
86
+ "stop_token": "cpp",
87
+ "streambuf": "cpp",
88
+ "thread": "cpp",
89
+ "cfenv": "cpp",
90
+ "cinttypes": "cpp",
91
+ "typeindex": "cpp",
92
+ "typeinfo": "cpp",
93
+ "variant": "cpp",
94
+ "alignedvector3": "cpp",
95
+ "adolcforward": "cpp"
96
+ },
97
+ "C_Cpp.clang_format_style": "{ BasedOnStyle: Google, IndentWidth: 4 }",
98
+ "[python]": {
99
+ "editor.defaultFormatter": "ms-python.black-formatter",
100
+ },
101
+ "formatFiles.extensionsToInclude": "",
102
+ }
@@ -0,0 +1,23 @@
1
+ Boost Software License - Version 1.0 - August 17th, 2003
2
+
3
+ Permission is hereby granted, free of charge, to any person or organization
4
+ obtaining a copy of the software and accompanying documentation covered by
5
+ this license (the "Software") to use, reproduce, display, distribute,
6
+ execute, and transmit the Software, and to prepare derivative works of the
7
+ Software, and to permit third-parties to whom the Software is furnished to
8
+ do so, all subject to the following:
9
+
10
+ The copyright notices in the Software and this entire statement, including
11
+ the above license grant, this restriction and the following disclaimer,
12
+ must be included in all copies of the Software, in whole or in part, and
13
+ all derivative works of the Software, unless such copies or derivative
14
+ works are solely in the form of machine-executable object code generated by
15
+ a source language processor.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
20
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
21
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
22
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23
+ DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,28 @@
1
+ Copyright 2008, Google Inc.
2
+ All rights reserved.
3
+
4
+ Redistribution and use in source and binary forms, with or without
5
+ modification, are permitted provided that the following conditions are
6
+ met:
7
+
8
+ * Redistributions of source code must retain the above copyright
9
+ notice, this list of conditions and the following disclaimer.
10
+ * Redistributions in binary form must reproduce the above
11
+ copyright notice, this list of conditions and the following disclaimer
12
+ in the documentation and/or other materials provided with the
13
+ distribution.
14
+ * Neither the name of Google Inc. nor the names of its
15
+ contributors may be used to endorse or promote products derived from
16
+ this software without specific prior written permission.
17
+
18
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,25 @@
1
+ # 3rd Party Programs
2
+ ## Lists
3
+ To find source code of the 3rd party programs, please access to the linked URL.
4
+
5
+ QDD is dependent on the following libraries:
6
+
7
+ * Boost: https://github.com/boostorg
8
+ * oneTBB: https://github.com/oneapi-src/oneTBB
9
+ * GoogleTest: https://github.com/google/googletest
10
+ * Eigen: https://gitlab.com/libeigen/eigen/
11
+ * Qiskit: https://github.com/Qiskit
12
+
13
+ QDD was created with reference to the following projects:
14
+
15
+ * Qiskit: https://github.com/Qiskit
16
+ * ddsim: https://github.com/cda-tum
17
+
18
+ The python interface is refered to Qiskit code.
19
+ It has been changed by Fujitsu from the original version.
20
+
21
+ ## License
22
+ The licenses for the above programs are stored in this folder.
23
+
24
+ ## Contact
25
+ Please email to yusuke-kimura@fujitsu.com .
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 Chair for Design Automation, Technical University of Munich
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.