Skip to content

Commit 1f953fa

Browse files
committed
[WIP] Remove qiskit_algorithms
1 parent a469f06 commit 1f953fa

33 files changed

+1854
-160
lines changed

constraints.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
numpy>=1.20.0
2+
jedi<0.19

qiskit_optimization/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
A uniform interface as well as automatic conversion between different problem representations
2727
allows users to solve problems using a large set of algorithms, from variational quantum algorithms,
2828
such as the Quantum Approximate Optimization Algorithm
29-
(:class:`~qiskit_algorithms.QAOA`), to
29+
(:class:`~qiskit_optimization.minimum_eigensolvers.QAOA`), to
3030
`Grover Adaptive Search <https://arxiv.org/abs/quant-ph/9607014>`_
3131
(:class:`~algorithms.GroverOptimizer`), leveraging
3232
fundamental `minimum eigensolvers
@@ -85,7 +85,7 @@
8585
8686
"""
8787

88-
from .exceptions import QiskitOptimizationError, AlgorithmError
88+
from .exceptions import AlgorithmError, QiskitOptimizationError
8989
from .infinity import INFINITY # must be at the top of the file
9090
from .problems.quadratic_program import QuadraticProgram
9191
from .version import __version__

qiskit_optimization/algorithms/admm_optimizer.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2020, 2024.
3+
# (C) Copyright IBM 2020, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -17,9 +17,9 @@
1717
from typing import List, Optional, Tuple, cast
1818

1919
import numpy as np
20-
from qiskit_algorithms import NumPyMinimumEigensolver
2120

2221
from ..converters import MaximizeToMinimize
22+
from ..minimum_eigensolvers import NumPyMinimumEigensolver
2323
from ..problems.constraint import Constraint
2424
from ..problems.linear_constraint import LinearConstraint
2525
from ..problems.linear_expression import LinearExpression

qiskit_optimization/algorithms/grover_optimizer.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2020, 2024.
3+
# (C) Copyright IBM 2020, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -21,19 +21,18 @@
2121
from qiskit import QuantumCircuit, QuantumRegister
2222
from qiskit.circuit.library import QuadraticForm
2323
from qiskit.primitives import BaseSampler
24-
from qiskit_algorithms import AmplificationProblem
25-
from qiskit_algorithms.amplitude_amplifiers.grover import Grover
26-
from qiskit_algorithms.utils import algorithm_globals
2724

2825
from qiskit_optimization.algorithms.optimization_algorithm import (
2926
OptimizationAlgorithm,
3027
OptimizationResult,
3128
OptimizationResultStatus,
3229
SolutionSample,
3330
)
31+
from qiskit_optimization.amplitude_amplifiers.grover import AmplificationProblem, Grover
3432
from qiskit_optimization.converters import QuadraticProgramConverter, QuadraticProgramToQubo
3533
from qiskit_optimization.exceptions import QiskitOptimizationError
3634
from qiskit_optimization.problems import QuadraticProgram, Variable
35+
from qiskit_optimization.utils import algorithm_globals
3736

3837
logger = logging.getLogger(__name__)
3938

qiskit_optimization/algorithms/minimum_eigen_optimizer.py

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@
1515

1616
import numpy as np
1717
from qiskit.quantum_info import SparsePauliOp
18+
19+
from ..converters.quadratic_program_to_qubo import QuadraticProgramConverter, QuadraticProgramToQubo
20+
from ..exceptions import QiskitOptimizationError
1821
from ..minimum_eigensolvers import (
1922
NumPyMinimumEigensolver,
2023
NumPyMinimumEigensolverResult,
2124
SamplingMinimumEigensolver,
2225
SamplingMinimumEigensolverResult,
2326
)
24-
25-
from ..converters.quadratic_program_to_qubo import QuadraticProgramConverter, QuadraticProgramToQubo
26-
from ..exceptions import QiskitOptimizationError
2727
from ..problems.quadratic_program import QuadraticProgram, Variable
2828
from .optimization_algorithm import (
2929
OptimizationAlgorithm,
@@ -109,7 +109,7 @@ class MinimumEigenOptimizer(OptimizationAlgorithm):
109109
110110
.. code-block::
111111
112-
from qiskit_algorithms import QAOA
112+
from qiskit_optimization.minimum_eigensolvers import QAOA
113113
from qiskit_optimization.problems import QuadraticProgram
114114
from qiskit_optimization.algorithms import MinimumEigenOptimizer
115115
problem = QuadraticProgram()
@@ -222,7 +222,8 @@ def _solve_internal(
222222
raise QiskitOptimizationError(
223223
"MinimumEigenOptimizer does not support this minimum eigensolver "
224224
f"{type(self._min_eigen_solver)}. "
225-
"You can use qiskit_algorithms.SamplingMinimumEigensolver instead."
225+
"You can use qiskit_optimization.minimum_eigensolvers."
226+
"SamplingMinimumEigensolver instead."
226227
)
227228
if eigen_result.eigenstate is not None:
228229
raw_samples = self._eigenvector_to_solutions(

qiskit_optimization/algorithms/qrao/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2023.
3+
# (C) Copyright IBM 2023, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -48,8 +48,8 @@
4848
4949
.. code-block:: python
5050
51-
from qiskit_algorithms.optimizers import COBYLA
52-
from qiskit_algorithms import VQE
51+
from qiskit_optimization.optimizers import COBYLA
52+
from qiskit_optimization.minimum_eigensolvers import VQE
5353
from qiskit.circuit.library import RealAmplitudes
5454
from qiskit.primitives import Estimator
5555

qiskit_optimization/algorithms/qrao/magic_rounding.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2023, 2024.
3+
# (C) Copyright IBM 2023, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -19,10 +19,9 @@
1919
from qiskit import QuantumCircuit
2020
from qiskit.primitives import BaseSampler
2121
from qiskit.quantum_info import SparsePauliOp
22-
from qiskit_algorithms.exceptions import AlgorithmError
2322

2423
from qiskit_optimization.algorithms import OptimizationResultStatus, SolutionSample
25-
from qiskit_optimization.exceptions import QiskitOptimizationError
24+
from qiskit_optimization.exceptions import AlgorithmError, QiskitOptimizationError
2625

2726
from .quantum_random_access_encoding import (
2827
_z_to_21p_qrac_basis_circuit,

qiskit_optimization/algorithms/qrao/quantum_random_access_optimizer.py

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2023.
3+
# (C) Copyright IBM 2023, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -13,16 +13,10 @@
1313
"""Quantum Random Access Optimizer class."""
1414
from __future__ import annotations
1515

16-
from typing import cast, List
16+
from typing import List, cast
1717

1818
import numpy as np
1919
from qiskit import QuantumCircuit
20-
from qiskit_algorithms import (
21-
MinimumEigensolver,
22-
MinimumEigensolverResult,
23-
NumPyMinimumEigensolverResult,
24-
VariationalResult,
25-
)
2620

2721
from qiskit_optimization.algorithms import (
2822
OptimizationAlgorithm,
@@ -31,7 +25,13 @@
3125
SolutionSample,
3226
)
3327
from qiskit_optimization.converters import QuadraticProgramToQubo
28+
from qiskit_optimization.minimum_eigensolvers import (
29+
MinimumEigensolver,
30+
MinimumEigensolverResult,
31+
NumPyMinimumEigensolverResult,
32+
)
3433
from qiskit_optimization.problems import QuadraticProgram, Variable
34+
from qiskit_optimization.variational_algorithm import VariationalResult
3535

3636
from .quantum_random_access_encoding import QuantumRandomAccessEncoding
3737
from .rounding_common import RoundingContext, RoundingResult, RoundingScheme

qiskit_optimization/algorithms/recursive_minimum_eigen_optimizer.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2020, 2024.
3+
# (C) Copyright IBM 2020, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -17,13 +17,13 @@
1717
from typing import Dict, List, Optional, Tuple, Union, cast
1818

1919
import numpy as np
20-
from qiskit_algorithms import NumPyMinimumEigensolver
21-
from qiskit_algorithms.utils.validation import validate_min
2220

2321
from ..converters.quadratic_program_to_qubo import QuadraticProgramConverter, QuadraticProgramToQubo
2422
from ..exceptions import QiskitOptimizationError
23+
from ..minimum_eigensolvers import NumPyMinimumEigensolver
2524
from ..problems import Variable
2625
from ..problems.quadratic_program import QuadraticProgram
26+
from ..utils.validation import validate_min
2727
from .minimum_eigen_optimizer import MinimumEigenOptimizationResult, MinimumEigenOptimizer
2828
from .optimization_algorithm import (
2929
OptimizationAlgorithm,
@@ -117,7 +117,7 @@ class RecursiveMinimumEigenOptimizer(OptimizationAlgorithm):
117117
118118
.. code-block:: python
119119
120-
from qiskit_algorithms import QAOA
120+
from qiskit_optimization.minimum_eigensolvers import QAOA
121121
from qiskit_optimization.problems import QuadraticProgram
122122
from qiskit_optimization.algorithms import (
123123
MinimumEigenOptimizer, RecursiveMinimumEigenOptimizer
@@ -161,7 +161,7 @@ def __init__( # pylint: disable=too-many-positional-arguments
161161
min_num_vars_optimizer: This optimizer is used after the recursive scheme for the
162162
problem with the remaining variables. Default value is
163163
:class:`~qiskit_optimization.algorithms.MinimumEigenOptimizer` created on top of
164-
:class:`~qiskit_algorithms.NumPyMinimumEigensolver`.
164+
:class:`~qiskit_optimization.minimum_eigensolvers.NumPyMinimumEigensolver`.
165165
penalty: The factor that is used to scale the penalty terms corresponding to linear
166166
equality constraints.
167167
history: Whether the intermediate results are stored.

qiskit_optimization/algorithms/warm_start_qaoa_optimizer.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# This code is part of a Qiskit project.
22
#
3-
# (C) Copyright IBM 2021, 2024.
3+
# (C) Copyright IBM 2021, 2025.
44
#
55
# This code is licensed under the Apache License, Version 2.0. You may
66
# obtain a copy of this license in the LICENSE.txt file in the root directory
@@ -19,10 +19,10 @@
1919
import numpy as np
2020
from qiskit import QuantumCircuit
2121
from qiskit.circuit import Parameter
22-
from qiskit_algorithms import QAOA
2322

2423
from ..converters.quadratic_program_converter import QuadraticProgramConverter
2524
from ..exceptions import QiskitOptimizationError
25+
from ..minimum_eigensolvers import QAOA
2626
from ..problems.quadratic_program import QuadraticProgram
2727
from ..problems.variable import VarType
2828
from .minimum_eigen_optimizer import MinimumEigenOptimizationResult, MinimumEigenOptimizer
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# This code is part of a Qiskit project.
2+
#
3+
# (C) Copyright IBM 2020, 2025.
4+
#
5+
# This code is licensed under the Apache License, Version 2.0. You may
6+
# obtain a copy of this license in the LICENSE.txt file in the root directory
7+
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
8+
#
9+
# Any modifications or derivative works of this code must retain this
10+
# copyright notice, and modified files need to carry a notice indicating
11+
# that they have been altered from the originals.
12+
13+
"""Amplitude Amplifiers Package"""
14+
15+
from .amplification_problem import AmplificationProblem
16+
from .amplitude_amplifier import AmplitudeAmplifier, AmplitudeAmplifierResult
17+
from .grover import Grover, GroverResult
18+
19+
__all__ = [
20+
"AmplitudeAmplifier",
21+
"AmplitudeAmplifierResult",
22+
"AmplificationProblem",
23+
"Grover",
24+
"GroverResult",
25+
]

0 commit comments

Comments
 (0)