luna-quantum 1.0.5rc2__cp313-cp313-win_amd64.whl → 1.0.6__cp313-cp313-win_amd64.whl

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.

Potentially problematic release.


This version of luna-quantum might be problematic. Click here for more details.

Binary file
luna_quantum/_core.pyi CHANGED
@@ -2263,6 +2263,11 @@ class Model:
2263
2263
  """Return the name of the model."""
2264
2264
  ...
2265
2265
 
2266
+ @name.setter
2267
+ def name(self, /, name: str) -> None:
2268
+ """Set the name of the model."""
2269
+ ...
2270
+
2266
2271
  @property
2267
2272
  def sense(self, /) -> Sense:
2268
2273
  """
@@ -43,7 +43,7 @@ def check_httpx_exceptions(response: Response) -> None:
43
43
  HttpErrorUtils.check_for_error(response)
44
44
 
45
45
 
46
- class APIKeyAuth(httpx.Auth):
46
+ class APIKeyAuth(httpx.Auth): # noqa: PLW1641
47
47
  """API key authentication method for luna platform."""
48
48
 
49
49
  def __init__(self, token: str) -> None:
@@ -49,9 +49,7 @@ class InfoRestClient(IInfoRestClient):
49
49
  for provider, solvers in json.items():
50
50
  to_return[provider] = {}
51
51
  for solver in solvers:
52
- to_return[provider][solver] = SolverInfo.model_validate(
53
- json[provider][solver]
54
- )
52
+ to_return[provider][solver] = SolverInfo.model_validate(solvers[solver])
55
53
 
56
54
  return to_return
57
55
 
@@ -1,6 +1,8 @@
1
1
  from __future__ import annotations
2
2
 
3
- from pydantic import BaseModel
3
+ from typing import Self
4
+
5
+ from pydantic import BaseModel, Field, model_validator
4
6
 
5
7
  from luna_quantum.client.schemas.wrappers import PydanticDatetimeWrapper
6
8
 
@@ -21,6 +23,13 @@ class QpuTokenTimeQuotaIn(BaseModel):
21
23
  If None, policy will be in effect until 365 days after the start date.
22
24
  """
23
25
 
24
- quota: int
26
+ quota: int = Field(ge=0)
25
27
  start: PydanticDatetimeWrapper | None
26
28
  end: PydanticDatetimeWrapper | None
29
+
30
+ @model_validator(mode="after")
31
+ def check_start_end_dates(self) -> Self:
32
+ """Cheks that start date is befor end date if both provided."""
33
+ if self.start is not None and self.end is not None and self.start > self.end:
34
+ raise ValueError("Start date cannot be after end date.") # noqa: TRY003
35
+ return self
@@ -1,4 +1,6 @@
1
- from pydantic import BaseModel, ConfigDict
1
+ from typing import Self
2
+
3
+ from pydantic import BaseModel, ConfigDict, Field, model_validator
2
4
 
3
5
  from luna_quantum.client.schemas.wrappers.datetime_wrapper import (
4
6
  PydanticDatetimeWrapper,
@@ -8,8 +10,15 @@ from luna_quantum.client.schemas.wrappers.datetime_wrapper import (
8
10
  class QpuTokenTimeQuotaUpdate(BaseModel):
9
11
  """Data structure to update the time quota of a qpu token."""
10
12
 
11
- quota: int | None = None
13
+ quota: int | None = Field(ge=0, default=None)
12
14
  start: PydanticDatetimeWrapper | None = None
13
15
  end: PydanticDatetimeWrapper | None = None
14
16
 
15
17
  model_config = ConfigDict(extra="forbid")
18
+
19
+ @model_validator(mode="after")
20
+ def check_start_end_dates(self) -> Self:
21
+ """Cheks that start date is befor end date if both provided."""
22
+ if self.start is not None and self.end is not None and self.start > self.end:
23
+ raise ValueError("Start date cannot be after end date.") # noqa: TRY003
24
+ return self
@@ -1,7 +1,9 @@
1
- from datetime import datetime
2
-
3
1
  from pydantic import BaseModel
4
2
 
3
+ from luna_quantum.client.schemas.wrappers.datetime_wrapper import (
4
+ PydanticDatetimeWrapper,
5
+ )
6
+
5
7
 
6
8
  class QpuTokenTimeQuotaOut(BaseModel):
7
9
  """
@@ -23,6 +25,6 @@ class QpuTokenTimeQuotaOut(BaseModel):
23
25
  """
24
26
 
25
27
  quota: int
26
- start: datetime
27
- end: datetime
28
+ start: PydanticDatetimeWrapper
29
+ end: PydanticDatetimeWrapper
28
30
  quota_used: int
@@ -133,7 +133,9 @@ class LunaAlgorithm(IAlgorithm[BACKEND_TYPE], Generic[BACKEND_TYPE]):
133
133
  SolveJob
134
134
  The job object containing the information about the solve process.
135
135
  """
136
- from luna_quantum.factories.usecase_factory import UseCaseFactory
136
+ from luna_quantum.factories.usecase_factory import ( # noqa: PLC0415
137
+ UseCaseFactory,
138
+ )
137
139
 
138
140
  b: BACKEND_TYPE
139
141
  if backend is not None:
@@ -45,7 +45,9 @@ class ModelMetadata(BaseModel):
45
45
  """
46
46
  c = LunaSolveClientFactory.get_client(client=client)
47
47
 
48
- from luna_quantum.factories.usecase_factory import UseCaseFactory
48
+ from luna_quantum.factories.usecase_factory import ( # noqa: PLC0415
49
+ UseCaseFactory,
50
+ )
49
51
 
50
52
  aq_model: Model = UseCaseFactory.model_load_by_metadata(client=c).__call__(
51
53
  model_metadata=self
@@ -73,7 +73,9 @@ class SolveJob(BaseModel):
73
73
  if status_source == "remote":
74
74
  c: ILunaSolve = LunaSolveClientFactory.get_client(client)
75
75
 
76
- from luna_quantum.factories.usecase_factory import UseCaseFactory
76
+ from luna_quantum.factories.usecase_factory import ( # noqa: PLC0415
77
+ UseCaseFactory,
78
+ )
77
79
 
78
80
  UseCaseFactory.solve_job_fetch_update(client=c).__call__(solve_job=self)
79
81
 
@@ -123,7 +125,9 @@ class SolveJob(BaseModel):
123
125
 
124
126
  c: ILunaSolve = LunaSolveClientFactory.get_client(client)
125
127
 
126
- from luna_quantum.factories.usecase_factory import UseCaseFactory
128
+ from luna_quantum.factories.usecase_factory import ( # noqa: PLC0415
129
+ UseCaseFactory,
130
+ )
127
131
 
128
132
  self._result = UseCaseFactory.solve_job_get_result(client=c).__call__(
129
133
  solve_job=self,
@@ -164,7 +168,9 @@ class SolveJob(BaseModel):
164
168
  """
165
169
  c: ILunaSolve = LunaSolveClientFactory.get_client(client)
166
170
 
167
- from luna_quantum.factories.usecase_factory import UseCaseFactory
171
+ from luna_quantum.factories.usecase_factory import ( # noqa: PLC0415
172
+ UseCaseFactory,
173
+ )
168
174
 
169
175
  UseCaseFactory.solve_job_cancel(client=c).__call__(self)
170
176
 
@@ -183,6 +189,8 @@ class SolveJob(BaseModel):
183
189
  """
184
190
  c: ILunaSolve = LunaSolveClientFactory.get_client(client)
185
191
 
186
- from luna_quantum.factories.usecase_factory import UseCaseFactory
192
+ from luna_quantum.factories.usecase_factory import ( # noqa: PLC0415
193
+ UseCaseFactory,
194
+ )
187
195
 
188
196
  UseCaseFactory.solve_job_delete(client=c).__call__(solve_job_id=self.id)
@@ -1,5 +1,6 @@
1
1
  from .flexible_parameter_algorithm import FlexibleParameterAlgorithm
2
2
  from .genetic_algorithms import QAGA, SAGA
3
+ from .lq_fda import FujitsuDA
3
4
  from .optimization_solvers import SCIP
4
5
  from .quantum_annealing import (
5
6
  Kerberos,
@@ -31,6 +32,7 @@ __all__ = [
31
32
  "DialecticSearch",
32
33
  "FlexQAOA",
33
34
  "FlexibleParameterAlgorithm",
35
+ "FujitsuDA",
34
36
  "Kerberos",
35
37
  "LeapHybridBqm",
36
38
  "LeapHybridCqm",
@@ -0,0 +1,3 @@
1
+ from .fujitsu_da_v3c import FujitsuDA
2
+
3
+ __all__ = ["FujitsuDA"]
@@ -0,0 +1,85 @@
1
+ from __future__ import annotations
2
+
3
+ from typing import Literal
4
+
5
+ from pydantic import Field
6
+
7
+ from luna_quantum.solve.domain.abstract import LunaAlgorithm
8
+ from luna_quantum.solve.parameters.backends import Fujitsu
9
+
10
+
11
+ class FujitsuDABase(LunaAlgorithm[Fujitsu]):
12
+ """Fujitsu Digital Annealer base parameters.
13
+
14
+ Parameters
15
+ ----------
16
+ scaling_action: Literal["NOTHING", "SCALING", "AUTO_SCALING"]
17
+ Method for scaling ``qubo`` and determining temperatures:
18
+ - "NOTHING": No action (use parameters exactly as specified)
19
+ - "SCALING": ``scaling_factor`` is multiplied to ``qubo``,
20
+ ``temperature_start``, ``temperature_end`` and ``offset_increase_rate``.
21
+ - "AUTO_SCALING": A maximum scaling factor w.r.t. ``scaling_bit_precision``
22
+ is multiplied to ``qubo``, ``temperature_start``, ``temperature_end`` and
23
+ ``offset_increase_rate``.
24
+ scaling_factor: int | float
25
+ Multiplicative factor applied to model coefficients, temperatures, and other
26
+ parameters: the ``scaling_factor`` for ``qubo``, ``temperature_start``,
27
+ ``temperature_end`` and ``offset_increase_rate``.
28
+ Higher values can improve numerical precision but may lead to overflow.
29
+ Default is 1.0 (no scaling).
30
+ scaling_bit_precision: int
31
+ Maximum bit precision to use when scaling. Determines the maximum allowable
32
+ coefficient magnitude. Default is 64, using full double precision.
33
+ random_seed: Union[int, None]
34
+ Seed for random number generation to ensure reproducible results.
35
+ Must be between 0 and 9_999. Default is None (random seed).
36
+ penalty_factor: float
37
+ Penalty factor used to scale the equality constraint penalty function,
38
+ default 1.0.
39
+ inequality_factor: int
40
+ Penalty factor used to scale the inequality constraints, default 1.
41
+ remove_ohg_from_penalty: bool
42
+ If equality constraints, identified to be One-Hot constraints are only
43
+ considered within one-hot groups (`remove_ohg_from_penalty=True`), i.e.,
44
+ identified one-hot constraints are not added to the penalty function,
45
+ default True.
46
+ """
47
+
48
+ scaling_action: Literal["NOTHING", "SCALING", "AUTO_SCALING"] = "NOTHING"
49
+ scaling_factor: int | float = 1.0
50
+ scaling_bit_precision: int = 64
51
+ random_seed: int | None = Field(default=None, ge=0, le=9_999)
52
+
53
+ penalty_factor: float = 1.0
54
+ inequality_factor: int = 1
55
+ remove_ohg_from_penalty: bool = True
56
+
57
+ @classmethod
58
+ def get_default_backend(cls) -> Fujitsu:
59
+ """
60
+ Return the default backend implementation.
61
+
62
+ This property must be implemented by subclasses to provide
63
+ the default backend instance to use when no specific backend
64
+ is specified.
65
+
66
+ Returns
67
+ -------
68
+ IBackend
69
+ An instance of a class implementing the IBackend interface that serves
70
+ as the default backend.
71
+ """
72
+ return Fujitsu()
73
+
74
+ @classmethod
75
+ def get_compatible_backends(cls) -> tuple[type[Fujitsu], ...]:
76
+ """
77
+ Check at runtime if the used backend is compatible with the solver.
78
+
79
+ Returns
80
+ -------
81
+ tuple[type[IBackend], ...]
82
+ True if the backend is compatible with the solver, False otherwise.
83
+
84
+ """
85
+ return (Fujitsu,)
@@ -0,0 +1,155 @@
1
+ from pydantic import Field
2
+
3
+ from .fujits_da_base import FujitsuDABase
4
+
5
+
6
+ class FujitsuDA(FujitsuDABase):
7
+ """
8
+ Parameters for the Fujitsu Digital Annealer (v3c).
9
+
10
+ Attributes
11
+ ----------
12
+ time_limit_sec: int | None
13
+ Maximum running time of DA in seconds. Specifies the upper limit of running
14
+ time of DA. Time_limit_sec should be selected according to problem hardness
15
+ and size (number of bits). Min: 1, Max: 3600
16
+ target_energy: int | None
17
+ Threshold energy for fast exit. This may not work correctly if the specified
18
+ value is larger than its max value or lower than its min value.
19
+ Min: -99_999_999_999, Max: 99_999_999_999
20
+ num_group: int
21
+ Number of independent optimization processes. Increasing the number of
22
+ independent optimization processes leads to better coverage of the search
23
+ space. Note: Increasing this number requires to also increase time_limit_sec
24
+ such that the search time for each process is sufficient.
25
+ Default: 1, Min: 1, Max: 16
26
+ num_solution: int
27
+ Number of solutions maintained and updated by each optimization process.
28
+ Default: 16, Min: 1, Max: 1024
29
+ num_output_solution: int
30
+ Maximal number of the best solutions returned by each optimization.
31
+ Total number of results is ``num_solution`` * ``num_group``.
32
+ Default: 5, Min: 1, Max: 1024
33
+ gs_num_iteration_factor: int
34
+ Maximal number of iterations in one epoch of the global search in each
35
+ optimization is ``gs_num_iteration_factor`` * *number of bits*.
36
+ Default: 5, Min: 0, Max: 100
37
+ gs_num_iteration_cl: int
38
+ Maximal number of iterations without improvement in one epoch of the global
39
+ search in each optimization before terminating and continuing with the next
40
+ epoch. For problems with very deep local minima having a very low value is
41
+ helpful. Default: 800, Min: 0, Max: 1000000
42
+ gs_ohs_xw1h_num_iteration_factor: int
43
+ Maximal number of iterations in one epoch of the global search in each
44
+ optimization is ``gs_ohs_xw1h_num_iteration_factor`` * *number of bits*.
45
+ Only used when 1Hot search is defined. Default: 3, Min: 0, Max: 100
46
+ gs_ohs_xw1h_num_iteration_cl: int
47
+ Maximal number of iterations without improvement in one epoch of the global
48
+ search in each optimization before terminating and continuing with the next
49
+ epoch. For problems with very deep local minima having a very low value is
50
+ helpful. Only used when 1Hot search is defined.
51
+ Default: 100, Min: 0, Max: 1000000
52
+ ohs_xw1h_internal_penalty: int | str
53
+ Mode of 1hot penalty constraint generation.
54
+ - 0: internal penalty generation off: 1hot constraint as part of penalty
55
+ polynomial required
56
+ - 1: internal penalty generation on: 1hot constraint not as part of penalty
57
+ polynomial required
58
+ If 1way 1hot constraint or a 2way 1hot constraint is specified,
59
+ ``ohs_xw1h_internal_penalty`` = 1 is recommended.
60
+ Default: 0, Min: 0, Max: 1
61
+ gs_penalty_auto_mode: int
62
+ Parameter to choose whether to automatically incrementally adapt
63
+ ``gs_penalty_coef`` to the optimal value.
64
+ - 0: Use ``gs_penalty_coef`` as the fixed factor to weight the penalty
65
+ polynomial during optimization.
66
+ - 1: Start with ``gs_penalty_coef`` as weight factor for penalty polynomial
67
+ and automatically and incrementally increase this factor during
68
+ optimization by multiplying ``gs_penalty_inc_rate`` / 100 repeatedly
69
+ until ``gs_max_penalty_coef`` is reached or the penalty energy iszero.
70
+ Default: 1, Min: 0, Max: 1
71
+ gs_penalty_coef: int
72
+ Factor to weight the penalty polynomial. If ``gs_penalty_auto_mode`` is 0,
73
+ this value does not change. If ``gs_penalty_auto_mode`` is 1, this initial
74
+ weight factor is repeatedly increased by ``gs_penalty_inc_rate`` until
75
+ ``gs_max_penalty_coef`` is reached or the penalty energy is zero.
76
+ Default: 1, Min: 1, Max: 9_223_372_036_854_775_807
77
+ gs_penalty_inc_rate: int
78
+ Only used if ``gs_penalty_auto_mode`` is 1. In this case, the initial weight
79
+ factor ``gs_penalty_coef`` for the penalty polynomial is repeatedly
80
+ increased by multiplying ``gs_penalty_inc_rate`` / 100 until
81
+ ``gs_max_penalty_coef`` is reached or the penalty energy is zero.
82
+ Default: 150, Min: 100, Max: 200
83
+ gs_max_penalty_coef: int
84
+ Maximal value for the penalty coefficient. If ``gs_penalty_auto_mode`` is 0,
85
+ this is the maximal value for ``gs_penalty_coef``.
86
+ If ``gs_penalty_auto_mode`` is 1, this is the maximal value to which
87
+ ``gs_penalty_coef`` can be increased during the automatic adjustment.
88
+ If ``gs_max_penalty_coef`` is set to 0, then the maximal penalty coefficient
89
+ is 2^63 - 1.
90
+ Default: 0, Min: 0, Max: 9_223_372_036_854_775_807
91
+
92
+
93
+ scaling_action: Literal["NOTHING", "SCALING", "AUTO_SCALING"]
94
+ Method for scaling ``qubo`` and determining temperatures:
95
+ - "NOTHING": No action (use parameters exactly as specified)
96
+ - "SCALING": ``scaling_factor`` is multiplied to ``qubo``,
97
+ ``temperature_start``, ``temperature_end`` and ``offset_increase_rate``.
98
+ - "AUTO_SCALING": A maximum scaling factor w.r.t. ``scaling_bit_precision``
99
+ is multiplied to ``qubo``, ``temperature_start``, ``temperature_end`` and
100
+ ``offset_increase_rate``.
101
+ scaling_factor: int | float
102
+ Multiplicative factor applied to model coefficients, temperatures, and other
103
+ parameters: the ``scaling_factor`` for ``qubo``, ``temperature_start``,
104
+ ``temperature_end`` and ``offset_increase_rate``.
105
+ Higher values can improve numerical precision but may lead to overflow.
106
+ Default is 1.0 (no scaling).
107
+ scaling_bit_precision: int
108
+ Maximum bit precision to use when scaling. Determines the maximum allowable
109
+ coefficient magnitude. Default is 64, using full double precision.
110
+ random_seed: Union[int, None]
111
+ Seed for random number generation to ensure reproducible results.
112
+ Must be between 0 and 9_999. Default is None (random seed).
113
+ penalty_factor: float
114
+ Penalty factor used to scale the equality constraint penalty function,
115
+ default 1.0.
116
+ inequality_factor: int
117
+ Penalty factor used to scale the inequality constraints, default 1.
118
+ remove_ohg_from_penalty: bool
119
+ If equality constraints, identified to be One-Hot constraints are only
120
+ considered within one-hot groups (`remove_ohg_from_penalty=True`),
121
+ i.e., identified one-hot constraints are not added to the penalty function,
122
+ default True.
123
+ """
124
+
125
+ time_limit_sec: int | None = Field(default=None, ge=1, le=3600)
126
+ target_energy: int | None = Field(
127
+ default=None, ge=-99_999_999_999, le=99_999_999_999
128
+ )
129
+ num_group: int = Field(default=1, ge=1, le=16)
130
+ num_solution: int = Field(default=16, ge=1, le=1024)
131
+ num_output_solution: int = Field(default=5, ge=1, le=1024)
132
+ gs_num_iteration_factor: int = Field(default=5, ge=0, le=100)
133
+ gs_num_iteration_cl: int = Field(default=800, ge=0, le=1_000_000)
134
+ gs_ohs_xw1h_num_iteration_factor: int = Field(default=3, ge=0, le=100)
135
+ gs_ohs_xw1h_num_iteration_cl: int = Field(default=100, ge=0, le=1_000_000)
136
+ ohs_xw1h_internal_penalty: int = Field(default=0, ge=0, le=1)
137
+ gs_penalty_auto_mode: int = Field(default=1, ge=0, le=1)
138
+ gs_penalty_coef: int = Field(default=1, ge=1, le=2**63 - 1)
139
+ gs_penalty_inc_rate: int = Field(default=150, ge=100, le=200)
140
+ gs_max_penalty_coef: int = Field(default=0, ge=0, le=2**63 - 1)
141
+
142
+ @property
143
+ def algorithm_name(self) -> str:
144
+ """
145
+ Returns the name of the algorithm.
146
+
147
+ This abstract property method is intended to be overridden by subclasses.
148
+ It should provide the name of the algorithm being implemented.
149
+
150
+ Returns
151
+ -------
152
+ str
153
+ The name of the algorithm.
154
+ """
155
+ return "FDAV3C"
@@ -2,6 +2,7 @@ from .aqarios import Aqarios
2
2
  from .aws import AWS, IQM, IonQ, Rigetti
3
3
  from .dwave import DWave
4
4
  from .dwave_qpu import DWaveQpu
5
+ from .fda import Fujitsu
5
6
  from .ibm import IBM
6
7
  from .qctrl import Qctrl
7
8
  from .zib import ZIB
@@ -14,6 +15,7 @@ __all__: list[str] = [
14
15
  "Aqarios",
15
16
  "DWave",
16
17
  "DWaveQpu",
18
+ "Fujitsu",
17
19
  "IonQ",
18
20
  "Qctrl",
19
21
  "Rigetti",
@@ -0,0 +1,17 @@
1
+ from luna_quantum.solve.interfaces.backend_i import IBackend
2
+
3
+
4
+ class Fujitsu(IBackend):
5
+ """Configuration class for the Fujitsu backend."""
6
+
7
+ @property
8
+ def provider(self) -> str:
9
+ """
10
+ Retrieve the name of the provider.
11
+
12
+ Returns
13
+ -------
14
+ str
15
+ The name of the provider.
16
+ """
17
+ return "fda"
@@ -62,6 +62,6 @@ class PrettyBase(BaseModel):
62
62
 
63
63
  data = self.model_dump()
64
64
 
65
- data_truncated, is_truncated = truncate(data, limit)
65
+ data_truncated, _ = truncate(data, limit)
66
66
 
67
67
  return self._pretty_print(data_truncated)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: luna-quantum
3
- Version: 1.0.5rc2
3
+ Version: 1.0.6
4
4
  Classifier: Programming Language :: Python :: 3
5
5
  Classifier: License :: OSI Approved :: Apache Software License
6
6
  Classifier: Operating System :: OS Independent
@@ -1,11 +1,11 @@
1
- luna_quantum-1.0.5rc2.dist-info/METADATA,sha256=omOGZhEsSxty6-LeXM-JIbbA9rayjvMjKBMUCnfhdvU,1585
2
- luna_quantum-1.0.5rc2.dist-info/WHEEL,sha256=K7foeVF-x_RZTycPKa1uE1HH2bAWe3AiJbihrXn5Hhc,96
3
- luna_quantum-1.0.5rc2.dist-info/licenses/LICENSE,sha256=bR2Wj7Il7KNny38LiDGrASo12StUfpReF--OewXD5cw,10349
4
- luna_quantum-1.0.5rc2.dist-info/licenses/NOTICE,sha256=GHZYA5H4QFAhbhXliAi2SjWWXLjxl4hrHdEPyUbC0r0,601
1
+ luna_quantum-1.0.6.dist-info/METADATA,sha256=8543uLV4QNdGnm8OkIKwWioDWQ-RGsWpECDhyDxVNsk,1582
2
+ luna_quantum-1.0.6.dist-info/WHEEL,sha256=K7foeVF-x_RZTycPKa1uE1HH2bAWe3AiJbihrXn5Hhc,96
3
+ luna_quantum-1.0.6.dist-info/licenses/LICENSE,sha256=bR2Wj7Il7KNny38LiDGrASo12StUfpReF--OewXD5cw,10349
4
+ luna_quantum-1.0.6.dist-info/licenses/NOTICE,sha256=GHZYA5H4QFAhbhXliAi2SjWWXLjxl4hrHdEPyUbC0r0,601
5
5
  luna_quantum/__init__.py,sha256=9Dpk-wfL5fR_R74c-JsFKZmUy7OUfe4hj4ZXEJaPAt4,3342
6
6
  luna_quantum/__init__.pyi,sha256=9Md6njbzsErrktv0GlRGYSunQIrIyw5r0kEJx1yMpkw,1746
7
- luna_quantum/_core.cp313-win_amd64.pyd,sha256=R4Ynxo7o0kTcQKUu8yQqwYZLyoeI2yFqAwZVXpiYELE,6075904
8
- luna_quantum/_core.pyi,sha256=E9y2BorJhpwVQ4EGAnb8J7PhBkCqhlFtwj_A9ftKUxs,118861
7
+ luna_quantum/_core.cp313-win_amd64.pyd,sha256=5UxlULB_CJP84ynNO_sn7LRyJXmARb5oSl_cpUeFmcg,6076928
8
+ luna_quantum/_core.pyi,sha256=GxmraQaMP0vc8A330OKlRxDgC1tCXhzMcJfqSLg_T-0,118979
9
9
  luna_quantum/algorithms/__init__.py,sha256=EoTNO0FXXjPrhpYfN7q9c_nUhmVHk2nEZsbhaVOBh_g,70
10
10
  luna_quantum/aqm_overwrites/__init__.py,sha256=ieIVhfslOwrznbvwqu3vNzU_nFIHS1hyeUgIV097WdQ,49
11
11
  luna_quantum/aqm_overwrites/model.py,sha256=stqMo97W0nzDLoWmTqwefdu7xgtPAWS46dsxOcJDHpU,6283
@@ -13,7 +13,7 @@ luna_quantum/backends/__init__.py,sha256=jBbtXn6u196zFHqOv-Yh1-S1otbYssGPPsEHTT3
13
13
  luna_quantum/client/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
14
  luna_quantum/client/controllers/__init__.py,sha256=0HavZV2mfk4Inuv5KnEZo5OmCtl6orm1flUfx9bnT4o,160
15
15
  luna_quantum/client/controllers/luna_http_client.py,sha256=bwBn_d-JWkEmy6JX-vMo8qFhRAu9eteqCD8rBFl5wKo,1094
16
- luna_quantum/client/controllers/luna_platform_client.py,sha256=hS6ZSfOR8EiyxC_h8LlagMrQ_0vf2U7CetS5EqqOjag,8269
16
+ luna_quantum/client/controllers/luna_platform_client.py,sha256=a0nuxcQ0ElfeVtHqDXLfUAKD0ylsZLHlYCWmeDbChDg,8286
17
17
  luna_quantum/client/controllers/luna_q.py,sha256=nHh33ooK6iichuidJln29ZsmNThlmNWIRc3iiKfrDng,2109
18
18
  luna_quantum/client/controllers/luna_solve.py,sha256=WInAX-1iqB-oNzSHW9idmokC1zVUF6oEDDdYTICvO5U,3628
19
19
  luna_quantum/client/error/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -40,7 +40,7 @@ luna_quantum/client/interfaces/services/luna_solve_i.py,sha256=IX7OUOuQyMwFhpHof
40
40
  luna_quantum/client/interfaces/services/service_i.py,sha256=zGXw33iC9dBheBI6Ks-_RMUdidPKzBxxzqkj1dSxQkM,1214
41
41
  luna_quantum/client/rest_client/__init__.py,sha256=SEBWHNoL9qrUO_FydsiXDR6oJ_RitItbNW8nIdeNEGY,567
42
42
  luna_quantum/client/rest_client/circuit_rest_client.py,sha256=ktqvCoRxC6TuMNRRtSqPvxdJ2Vb0BqozjbRO-rMFzRY,3395
43
- luna_quantum/client/rest_client/info_rest_client.py,sha256=-wGJZ5dNf_bKmdz4pWStVYCJp1j4hanZwYWuoVVC5_o,2298
43
+ luna_quantum/client/rest_client/info_rest_client.py,sha256=-jpWBTwgBpbt8aJPfWc0p8gkGYhozHRje9v5XDugqmU,2251
44
44
  luna_quantum/client/rest_client/model_rest_client.py,sha256=Umgn0t7a8VYzih4YvYKf1Wj06du7hQu05F7AyiKjXuQ,6688
45
45
  luna_quantum/client/rest_client/qpu_token_rest_client.py,sha256=tWbkUQoALNIJ9ozFjC-57-wwA689GfvXx9tCPD9_U94,17805
46
46
  luna_quantum/client/rest_client/solve_job_rest_client.py,sha256=BMjgUt5fx--WpwcuorGoT160wP4QviUU8Y4S1Xb-Z1w,9247
@@ -51,8 +51,8 @@ luna_quantum/client/schemas/create/__init__.py,sha256=5VhOfXnQbz5HQ9TnS3P5T1aZGW
51
51
  luna_quantum/client/schemas/create/circuit.py,sha256=lwQupZDyJfVMPeoBs5Iog7ledQbU3tRvMJP1PMSsoZE,716
52
52
  luna_quantum/client/schemas/create/optimization.py,sha256=PT20bbLDQrfxWOAMsUAbu0Pcne1IYvqS35Yx6xQ5Zic,1200
53
53
  luna_quantum/client/schemas/create/qpu_token.py,sha256=lvyRhYh92rzzZnz5cr2OPT6koKLzbPnfaYAh2qHtK0U,406
54
- luna_quantum/client/schemas/create/qpu_token_time_quota.py,sha256=Odk1TyJKy2zyxVka1zqvx5e1eia1_InCG5_UtMiWvU4,751
55
- luna_quantum/client/schemas/create/qpu_token_time_quota_update.py,sha256=-FBED4MOySSFGweUoaniJ8CufCkkZeX5ycWWUJVVhOc,441
54
+ luna_quantum/client/schemas/create/qpu_token_time_quota.py,sha256=XC56APJDYUo0WscmIYN7jF1rR7PFKdSm235YNL_ZKXQ,1167
55
+ luna_quantum/client/schemas/create/qpu_token_time_quota_update.py,sha256=w9ExOEIEYWrtSbmZ5daxme5EXTVaAHX3m_gOvUNIaH4,864
56
56
  luna_quantum/client/schemas/create/qubo.py,sha256=fvmQZPG_G7gVN_WUhQOVeaKkXM69sIpzyokKQ7eJ9IA,324
57
57
  luna_quantum/client/schemas/create/solve_job_create.py,sha256=taQpmUSKYg1_WonOH2KFVazWoJH01ox2Nj6i6J2wNnk,1136
58
58
  luna_quantum/client/schemas/enums/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -69,7 +69,7 @@ luna_quantum/client/schemas/model_metadata.py,sha256=mtXdzYtefqMS7dYHOEy6rmFLjN7
69
69
  luna_quantum/client/schemas/qpu_token/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
70
70
  luna_quantum/client/schemas/qpu_token/qpu_token.py,sha256=OFqBF8r_bvuy_RD_UJ-0SAZqr0rxXsJVd0jtvn5cH8A,4066
71
71
  luna_quantum/client/schemas/qpu_token/qpu_token_source.py,sha256=1V9WwxD2UAGFqlzN6hWx_qr_qtL-n7Pqfo4vv3a3ebA,623
72
- luna_quantum/client/schemas/qpu_token/qpu_token_time_quota.py,sha256=DmgBItoqGU8nKgC1wYgJOXN8AGgJNwYfFbE4i-6Nzmo,693
72
+ luna_quantum/client/schemas/qpu_token/qpu_token_time_quota.py,sha256=JrhdHYxcyIe_2-HXjOx5MCWnU3_kUeqeLchPtFU1oCQ,794
73
73
  luna_quantum/client/schemas/qpu_token/token_provider.py,sha256=K8lAs0X2IPHKFaayCPjRObSjbs5MzNJmnajRmvRl5L4,4727
74
74
  luna_quantum/client/schemas/representation.py,sha256=8N6JUEnnY7cicHvfSZfx-yDjN32sLQcDxaLpGz4yo7o,383
75
75
  luna_quantum/client/schemas/solution.py,sha256=jQ3HMZng2JhWzwhDm25P1KkKtMBxyb_7DttDRymbjtU,2551
@@ -95,10 +95,10 @@ luna_quantum/solve/__init__.py,sha256=j6K4QzAHU6mE6Hq0gWKJlSgkXo4MnPONMUBlpf890f
95
95
  luna_quantum/solve/default_token.py,sha256=dMyxO2BS2IrMZqja6aFTkGzkDDxt4mb3Jt3fAw3bqSo,8995
96
96
  luna_quantum/solve/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
97
97
  luna_quantum/solve/domain/abstract/__init__.py,sha256=QjmDfEn-Wil0xWC5YronLrtyHtYNKgzaojQMLsjUXVI,141
98
- luna_quantum/solve/domain/abstract/luna_algorithm.py,sha256=jl-70vfe51I67W7qNdd17ncssmpJWR3F5EkD_P3vBlg,7206
98
+ luna_quantum/solve/domain/abstract/luna_algorithm.py,sha256=5wMRpf176TJ529xsBt0ui9UHHPsSzP_t-a7MMKJ2otI,7250
99
99
  luna_quantum/solve/domain/abstract/qpu_token_backend.py,sha256=70FZ4RwRygee_ZR8qHmjFTSnlWSZjYSkxauP89jK5_M,1263
100
- luna_quantum/solve/domain/model_metadata.py,sha256=HSJ9HdIE7y10pjmkMeJHBon9q8hFUH6Lh0V7B3Zr-_I,1698
101
- luna_quantum/solve/domain/solve_job.py,sha256=xi6lesF0gvssik71K27dbf-QFN6kRSyM8hEif-R3pdo,6795
100
+ luna_quantum/solve/domain/model_metadata.py,sha256=vDrF21cSAXOBg3aLVHCejV9dWFugJYCpRiXKJaF5yjc,1742
101
+ luna_quantum/solve/domain/solve_job.py,sha256=ArZYANQ7S6X4esJB-TmVCQjchxCWBsIlXFCairL30lI,6979
102
102
  luna_quantum/solve/errors/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
103
103
  luna_quantum/solve/errors/incompatible_backend_error.py,sha256=k1qzt2gabHPSsgYjcD_vD8b5I1nB4CwyWYxwTbAnVtY,619
104
104
  luna_quantum/solve/errors/model_metadata_missing_error.py,sha256=BNSbjn0s0z6H4uAANl7r7c-uwOucNnknuAvhFNa3rZM,374
@@ -122,7 +122,7 @@ luna_quantum/solve/interfaces/usecases/solve_job_delete_usecase_i.py,sha256=qX0R
122
122
  luna_quantum/solve/interfaces/usecases/solve_job_fetch_updates_usecase_i.py,sha256=qKbiZ91LhXnNGqydTNSqpVzfodBaxEgI29w69rbjaV8,1116
123
123
  luna_quantum/solve/interfaces/usecases/solve_job_get_result_usecase_i.py,sha256=rmlf0ratcQsLgYfVC1-nKmsWbY6EFtlJv558LUfQI-g,2103
124
124
  luna_quantum/solve/parameters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
125
- luna_quantum/solve/parameters/algorithms/__init__.py,sha256=5pyzgraVCIF2hlnZIaC6x2IIDeFWsoPKOnPetz-3EaE,1300
125
+ luna_quantum/solve/parameters/algorithms/__init__.py,sha256=OkVSAdQXVxV0v-vs3YP5pXF6GocPnLQjVsQobDwZETM,1349
126
126
  luna_quantum/solve/parameters/algorithms/base_params/__init__.py,sha256=QjHyIVCpyLUM1WUdVqlq8tkj5LSF0rhWuBTU8AiZYAI,795
127
127
  luna_quantum/solve/parameters/algorithms/base_params/decomposer.py,sha256=D160b7TxqGNso9lXjV8HykNLcqEk9Ah9xFLnZTHiX_g,2369
128
128
  luna_quantum/solve/parameters/algorithms/base_params/qaoa_circuit_params.py,sha256=GYSEDdkkakQcjVa_xddvM23GiV8eV6Qq0AeSDC6gvC8,3033
@@ -135,6 +135,9 @@ luna_quantum/solve/parameters/algorithms/flexible_parameter_algorithm.py,sha256=
135
135
  luna_quantum/solve/parameters/algorithms/genetic_algorithms/__init__.py,sha256=9ErRajVOTWVYkLxeW9PpwQtBAbeEa1q3R_xg04qCfT8,78
136
136
  luna_quantum/solve/parameters/algorithms/genetic_algorithms/qaga.py,sha256=Ubb8_KgZgFzMpMTKEAmtfOcM_B9z4Z5p5JctCDYVsGM,5418
137
137
  luna_quantum/solve/parameters/algorithms/genetic_algorithms/saga.py,sha256=A_1-QsMgNIZnMQcnbiR0tfWKDlWIxY6mwwHhgKGRd60,5346
138
+ luna_quantum/solve/parameters/algorithms/lq_fda/__init__.py,sha256=Kc7qeugpiTltGdXFNvsgzsW10rWAZtxDkmyUvBwOwBo,66
139
+ luna_quantum/solve/parameters/algorithms/lq_fda/fujits_da_base.py,sha256=czlvkFrQFqoMveo58-LBLNs1sl7jhCbUtTelsptub6g,3435
140
+ luna_quantum/solve/parameters/algorithms/lq_fda/fujitsu_da_v3c.py,sha256=LGxWHc6QDdph0cMyU-DAXvKeJqxRVyU-RF-YSeSE5PA,8347
138
141
  luna_quantum/solve/parameters/algorithms/optimization_solvers/__init__.py,sha256=yg2K-1q3E0J3EDSVHGl2NDnCl3QVwF8F01QZMVrb3Yw,46
139
142
  luna_quantum/solve/parameters/algorithms/optimization_solvers/scip.py,sha256=uGxzuqQA6WswkY73un1-8QlH7PNMHSKg2MEDCn8vmBc,1518
140
143
  luna_quantum/solve/parameters/algorithms/quantum_annealing/__init__.py,sha256=modV3HJ_90iQzQnKDZCoVbJPnZoJ4_4buGvNUby76VE,640
@@ -165,7 +168,7 @@ luna_quantum/solve/parameters/algorithms/simulated_annealing/population_annealin
165
168
  luna_quantum/solve/parameters/algorithms/simulated_annealing/qbsolv_like_simulated_annealing.py,sha256=_Nlo0MeIyqSHVzmYPNFH_bNgY_GXo7PNwLAQyjm_s1I,6724
166
169
  luna_quantum/solve/parameters/algorithms/simulated_annealing/repeated_reverse_simulated_annealing.py,sha256=vrNYGwwEPhm2Ad-SXm7ynv3NL3-wPX0-VY92-4pdE4M,8392
167
170
  luna_quantum/solve/parameters/algorithms/simulated_annealing/simulated_annealing.py,sha256=EyvYWVDJiHTKJB0TiX8vcZvhRi2v551a5IKYgolSMzs,5786
168
- luna_quantum/solve/parameters/backends/__init__.py,sha256=9w9RQT8pbzt8fybFop9cZdFA4rvdXJMbJb0Vjrq2ddM,368
171
+ luna_quantum/solve/parameters/backends/__init__.py,sha256=i3BFA6zKpHZVPeTqbAHiqLPL2Vua-ZbJuIO6H85GdWI,410
169
172
  luna_quantum/solve/parameters/backends/aqarios.py,sha256=B13jMYYNSRMB90tHiSgef9xFUrc_fklsLfaJTGZj7PY,381
170
173
  luna_quantum/solve/parameters/backends/aws/__init__.py,sha256=PLCSdxAUF65wzV0GP5gRBfRT3Ev9UfoczOs5PGOR-v0,169
171
174
  luna_quantum/solve/parameters/backends/aws/aws.py,sha256=WPWX1ZZhbBYgJd52a6UuWxtX48NqVjpJLx1Ytdu82WY,1155
@@ -175,6 +178,7 @@ luna_quantum/solve/parameters/backends/aws/iqm.py,sha256=S9caahJbiTHpHbDqp-VBfdt
175
178
  luna_quantum/solve/parameters/backends/aws/rigetti.py,sha256=t4mZHr1cqrJ3dPdCg3tup1Z4_3QiEdw4jJofBaO4PHA,984
176
179
  luna_quantum/solve/parameters/backends/dwave.py,sha256=BjNlM2nKWeyaMfpBcBHaAOt7mzV-p-SjC6bUQ5ltaNk,375
177
180
  luna_quantum/solve/parameters/backends/dwave_qpu.py,sha256=JQucgjQEmvLWa7tAaasw5ZZ02fa83vOoxg1xdOIfSEw,7480
181
+ luna_quantum/solve/parameters/backends/fda.py,sha256=Qny-5Rga58STcFAxo1znRCi3l0_vT7_7pa1pg5zKbUM,377
178
182
  luna_quantum/solve/parameters/backends/ibm.py,sha256=4T7vNcyrG2IAAR-LuJMQZKdndhqkvPbWSotlayGJYHM,4369
179
183
  luna_quantum/solve/parameters/backends/qctrl.py,sha256=W0BzW6HqcuynQOsm1HP38PUMB2AYMz2FC5LvUa8DJ5U,3606
180
184
  luna_quantum/solve/parameters/backends/zib.py,sha256=_hqSR5RyVJ5TBIUTPUHoCf-h--THt2jP5hRJkggMUCw,369
@@ -253,8 +257,8 @@ luna_quantum/util/active_waiting.py,sha256=hmwUiav3woWy1q6KJckYmHTIIFPI4MnQ4QF1L
253
257
  luna_quantum/util/class_patcher.py,sha256=rQRjnUgAXq0NnFY7lvfNZu4r-4VWvke0sV18i67DfTI,5620
254
258
  luna_quantum/util/debug_info.py,sha256=--Ef5EIgo3oWdUc5vn8TKFHNmcflBmc5-bexTSUlBJQ,1807
255
259
  luna_quantum/util/log_utils.py,sha256=0-ARoGkp7xyTvw1i-pRJoq1ylDKNC4eDoVY2DG05DS8,5658
256
- luna_quantum/util/pretty_base.py,sha256=rJy28OKfNdB1j5xdzOmFrCdbw-Gb-JJ5Dcz3NvOpIcQ,2182
260
+ luna_quantum/util/pretty_base.py,sha256=tvl9_LeqllYv41RibDuF_gCtO8Z54P1S0DkdGZG5eEw,2171
257
261
  luna_quantum/util/pydantic_utils.py,sha256=KipyyVaajjFB-krdPl_j5BLogaiPqn0L8mrJuLwZtic,1301
258
262
  luna_quantum/utils.py,sha256=RlF0LFK0qXavL22BSjMuNcGBGJrEL8mde_rAPX66qhw,137
259
263
  luna_quantum/utils.pyi,sha256=TRV-THwZJdYDD5q3kn4W-p4dslim54xNJW0yFbXPFhs,2001
260
- luna_quantum-1.0.5rc2.dist-info/RECORD,,
264
+ luna_quantum-1.0.6.dist-info/RECORD,,