eqc-models 0.13.0__py3-none-any.whl → 0.14.1__py3-none-any.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.
Files changed (71) hide show
  1. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/algorithms/penaltymultiplier.py +0 -1
  2. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/assignment/resource.py +1 -1
  3. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/polyeval.c +122 -122
  4. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/polyeval.cpython-310-darwin.so +0 -0
  5. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/results.py +18 -16
  6. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/classifierbase.py +0 -4
  7. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/classifierqboost.py +114 -72
  8. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/clustering.py +29 -1
  9. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/clusteringbase.py +29 -6
  10. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/decomposition.py +50 -10
  11. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/regressor.py +14 -0
  12. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/regressorbase.py +24 -5
  13. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/reservoir.py +17 -2
  14. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/solvers/__init__.py +1 -1
  15. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/solvers/eqcdirect.py +18 -2
  16. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/solvers/mip.py +4 -4
  17. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/utilities/__init__.py +2 -1
  18. eqc_models-0.14.1.data/platlib/eqc_models/utilities/general.py +83 -0
  19. {eqc_models-0.13.0.dist-info → eqc_models-0.14.1.dist-info}/METADATA +6 -4
  20. eqc_models-0.14.1.dist-info/RECORD +70 -0
  21. eqc_models-0.13.0.dist-info/RECORD +0 -69
  22. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/compile_extensions.py +0 -0
  23. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/__init__.py +0 -0
  24. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/algorithms/__init__.py +0 -0
  25. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/algorithms/base.py +0 -0
  26. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/allocation/__init__.py +0 -0
  27. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/allocation/allocation.py +0 -0
  28. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/allocation/portbase.py +0 -0
  29. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/allocation/portmomentum.py +0 -0
  30. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/assignment/__init__.py +0 -0
  31. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/assignment/qap.py +0 -0
  32. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/assignment/setpartition.py +0 -0
  33. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/__init__.py +0 -0
  34. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/base.py +0 -0
  35. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/binaries.py +0 -0
  36. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/constraints.py +0 -0
  37. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/operators.py +0 -0
  38. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/polyeval.pyx +0 -0
  39. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/polynomial.py +0 -0
  40. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/base/quadratic.py +0 -0
  41. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/combinatorics/__init__.py +0 -0
  42. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/combinatorics/setcover.py +0 -0
  43. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/combinatorics/setpartition.py +0 -0
  44. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/decoding.py +0 -0
  45. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/__init__.py +0 -0
  46. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/base.py +0 -0
  47. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/hypergraph.py +0 -0
  48. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/maxcut.py +0 -0
  49. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/maxkcut.py +0 -0
  50. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/partition.py +0 -0
  51. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/rcshortestpath.py +0 -0
  52. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/graph/shortestpath.py +0 -0
  53. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/__init__.py +0 -0
  54. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/classifierqsvm.py +0 -0
  55. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/cvqboost_hamiltonian.pyx +0 -0
  56. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/cvqboost_hamiltonian_c_func.c +0 -0
  57. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/cvqboost_hamiltonian_c_func.h +0 -0
  58. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/forecast.py +0 -0
  59. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/ml/forecastbase.py +0 -0
  60. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/process/base.py +0 -0
  61. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/process/mpc.py +0 -0
  62. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/sequence/__init__.py +0 -0
  63. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/sequence/tsp.py +0 -0
  64. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/solvers/qciclient.py +0 -0
  65. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/solvers/responselog.py +0 -0
  66. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/utilities/fileio.py +0 -0
  67. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/utilities/polynomial.py +0 -0
  68. {eqc_models-0.13.0.data → eqc_models-0.14.1.data}/platlib/eqc_models/utilities/qplib.py +0 -0
  69. {eqc_models-0.13.0.dist-info → eqc_models-0.14.1.dist-info}/WHEEL +0 -0
  70. {eqc_models-0.13.0.dist-info → eqc_models-0.14.1.dist-info}/licenses/LICENSE.txt +0 -0
  71. {eqc_models-0.13.0.dist-info → eqc_models-0.14.1.dist-info}/top_level.txt +0 -0
@@ -14,10 +14,8 @@ from qci_client import QciClient
14
14
  from eqc_models import QuadraticModel
15
15
  from eqc_models.solvers.qciclient import (
16
16
  Dirac3CloudSolver,
17
- Dirac3ContinuousCloudSolver,
18
- Dirac1CloudSolver,
19
17
  )
20
-
18
+ from eqc_models.solvers.eqcdirect import Dirac3DirectSolver
21
19
 
22
20
  class DecompBase(QuadraticModel):
23
21
  """An Base class for decomposition algorithms.
@@ -30,17 +28,30 @@ class DecompBase(QuadraticModel):
30
28
 
31
29
  num_samples: Number of samples used by Dirac-3; default: 1.
32
30
 
31
+ solver_access: Solver access type: cloud or direct; default: cloud.
32
+
33
+ ip_addr: IP address of the device when direct access is used; default: None.
34
+
35
+ port: Port number of the device when direct access is used; default: None.
33
36
  """
34
37
 
35
38
  def __init__(
36
39
  self,
37
40
  relaxation_schedule=2,
38
41
  num_samples=1,
42
+ solver_access="cloud",
43
+ ip_addr=None,
44
+ port=None,
39
45
  ):
40
46
  super(self).__init__(None, None, None)
41
47
 
48
+ assert solver_access in ["cloud", "direct"]
49
+
42
50
  self.relaxation_schedule = relaxation_schedule
43
51
  self.num_samples = num_samples
52
+ self.solver_access = solver_access
53
+ self.ip_addr = ip_addr
54
+ self.port = port
44
55
 
45
56
  def _get_hamiltonian(
46
57
  self,
@@ -62,15 +73,31 @@ class DecompBase(QuadraticModel):
62
73
  return
63
74
 
64
75
  def _solve(self):
65
- solver = Dirac3ContinuousCloudSolver()
76
+
77
+ if self.solver_access == "direct":
78
+ solver = Dirac3DirectSolver()
79
+ solver.connect(self.ip_addr, self.port)
80
+ else:
81
+ solver = Dirac3CloudSolver()
82
+
66
83
  response = solver.solve(
67
84
  self,
68
- relaxation_schedule=self.relaxation_schedule,
69
85
  sum_constraint=self._sum_constraint,
86
+ relaxation_schedule=self.relaxation_schedule,
70
87
  num_samples=self.num_samples,
71
88
  )
72
89
 
73
- sol = response["results"]["solutions"][0]
90
+ if self.solver_access == "cloud":
91
+ energies = response["results"]["energies"]
92
+ solutions = response["results"]["solutions"]
93
+ elif self.solver_access == "direct":
94
+ energies = response["energy"]
95
+ solutions = response["solution"]
96
+
97
+ min_id = np.argmin(energies)
98
+ sol = solutions[min_id]
99
+
100
+ print(response)
74
101
 
75
102
  return sol, response
76
103
 
@@ -180,6 +207,12 @@ class PCA(DecompBase):
180
207
 
181
208
  num_samples: Number of samples used by Dirac-3; default: 1.
182
209
 
210
+ solver_access: Solver access type: cloud or direct; default: cloud.
211
+
212
+ ip_addr: IP address of the device when direct access is used; default: None.
213
+
214
+ port: Port number of the device when direct access is used; default: None.
215
+
183
216
  mode: Compute the largest or smallest principal components,
184
217
  largest_components vs. smallest_components; default:
185
218
  largest_components.
@@ -212,16 +245,23 @@ class PCA(DecompBase):
212
245
  n_components=None,
213
246
  relaxation_schedule=2,
214
247
  num_samples=1,
248
+ solver_access="cloud",
249
+ ip_addr=None,
250
+ port=None,
215
251
  mode="largest_components",
216
252
  ):
217
- self.n_components = n_components
218
- self.relaxation_schedule = relaxation_schedule
219
- self.num_samples = num_samples
220
253
 
254
+ assert solver_access in ["cloud", "direct"]
221
255
  assert mode in ["largest_components", "smallest_components"], (
222
256
  "Invalid value of mode <%s>" % mode
223
257
  )
224
-
258
+
259
+ self.n_components = n_components
260
+ self.relaxation_schedule = relaxation_schedule
261
+ self.num_samples = num_samples
262
+ self.solver_access = solver_access
263
+ self.ip_addr = ip_addr
264
+ self.port = port
225
265
  self.mode = mode
226
266
  self.X = None
227
267
  self.X_pca = None
@@ -45,6 +45,12 @@ class LinearRegression(RegressorBase):
45
45
 
46
46
  num_samples: Number of samples used by Dirac-3; default: 1.
47
47
 
48
+ solver_access: Solver access type: cloud or direct; default: cloud.
49
+
50
+ ip_addr: IP address of the device when direct access is used; default: None.
51
+
52
+ port: Port number of the device when direct access is used; default: None.
53
+
48
54
  l2_reg_coef: L2 regularization penalty multiplier; default: 0.
49
55
 
50
56
  alpha: A penalty multiplier to ensure the correct sign of a
@@ -72,13 +78,21 @@ class LinearRegression(RegressorBase):
72
78
  self,
73
79
  relaxation_schedule=2,
74
80
  num_samples=1,
81
+ solver_access="cloud",
82
+ ip_addr=None,
83
+ port=None,
75
84
  l2_reg_coef=0,
76
85
  alpha=0,
77
86
  ):
78
87
  super(LinearRegression).__init__()
79
88
 
89
+ assert solver_access in ["cloud", "direct"]
90
+
80
91
  self.relaxation_schedule = relaxation_schedule
81
92
  self.num_samples = num_samples
93
+ self.solver_access = solver_access
94
+ self.ip_addr = ip_addr
95
+ self.port = port
82
96
  self.l2_reg_coef = l2_reg_coef
83
97
  self.alpha = alpha
84
98
  self.params = None
@@ -11,19 +11,27 @@ import numpy as np
11
11
 
12
12
  from eqc_models import QuadraticModel
13
13
  from eqc_models.solvers.qciclient import Dirac3CloudSolver
14
-
14
+ from eqc_models.solvers.eqcdirect import Dirac3DirectSolver
15
15
 
16
16
  class RegressorBase(QuadraticModel):
17
17
  def __init__(
18
18
  self,
19
19
  relaxation_schedule=2,
20
20
  num_samples=1,
21
+ solver_access="cloud",
22
+ ip_addr=None,
23
+ port=None,
21
24
  ):
22
25
 
23
26
  super(self).__init__(None, None, None)
27
+
28
+ assert solver_access in ["cloud", "direct"]
24
29
 
25
30
  self.relaxation_schedule = relaxation_schedule
26
31
  self.num_samples = num_samples
32
+ self.solver_access = solver_access
33
+ self.ip_addr = ip_addr
34
+ self.port = port
27
35
  self.params = None
28
36
 
29
37
  def predict(self, X: np.array):
@@ -51,7 +59,12 @@ class RegressorBase(QuadraticModel):
51
59
  return
52
60
 
53
61
  def solve(self):
54
- solver = Dirac3CloudSolver()
62
+ if self.solver_access == "direct":
63
+ solver = Dirac3DirectSolver()
64
+ solver.connect(self.ip_addr, self.port)
65
+ else:
66
+ solver = Dirac3CloudSolver()
67
+
55
68
  response = solver.solve(
56
69
  self,
57
70
  sum_constraint=self._sum_constraint,
@@ -59,9 +72,15 @@ class RegressorBase(QuadraticModel):
59
72
  num_samples=self.num_samples,
60
73
  )
61
74
 
62
- min_id = np.argmin(response["results"]["energies"])
63
-
64
- sol = response["results"]["solutions"][min_id]
75
+ if self.solver_access == "cloud":
76
+ energies = response["results"]["energies"]
77
+ solutions = response["results"]["solutions"]
78
+ elif self.solver_access == "direct":
79
+ energies = response["energy"]
80
+ solutions = response["solution"]
81
+
82
+ min_id = np.argmin(energies)
83
+ sol = solutions[min_id]
65
84
 
66
85
  print(response)
67
86
 
@@ -1,5 +1,20 @@
1
- import numpy as np
2
- from emucore_direct.client import EmuCoreClient
1
+ # (C) Quantum Computing Inc., 2025.
2
+ import logging
3
+
4
+ try:
5
+ from emucore_direct.client import EmuCoreClient
6
+ except ModuleNotFoundError:
7
+ # Only warn here to try to disrupt package behavior as least as possible.
8
+ logging.warning("emucore-direct package not available")
9
+
10
+ class EmuCoreClient:
11
+ """This is a stub for unsupported EmuCoreClient."""
12
+
13
+ def __init__(*_, **__) -> None:
14
+ """Raise exception when client cannot be created."""
15
+ raise ModuleNotFoundError(
16
+ "emucore-direct package not available, likely because Python version is 3.11+"
17
+ )
3
18
 
4
19
  # Parameters
5
20
  VBIAS = 0.31
@@ -12,5 +12,5 @@ class Dirac3MIPDirectSolver(MIPMixin, Dirac3DirectSolver):
12
12
 
13
13
  __all__ = ["Dirac3DirectSolver", "Dirac1CloudSolver", "Dirac3CloudSolver",
14
14
  "EqcDirectSolver", "QciClientSolver", "Dirac3IntegerCloudSolver",
15
- "Dirac3ContinuousCloudSolver", "MILPMixin",
15
+ "Dirac3ContinuousCloudSolver", "MIPMixin",
16
16
  "Dirac3MIPCloudSolver", "Dirac3MIPDirectSolver"]
@@ -1,8 +1,22 @@
1
1
  # (C) Quantum Computing Inc., 2025.
2
2
  import logging
3
- import numpy as np
4
3
  from typing import Dict
5
- from eqc_direct.client import EqcClient
4
+
5
+ try:
6
+ from eqc_direct.client import EqcClient
7
+ except ModuleNotFoundError:
8
+ # Only warn here to try to disrupt package behavior as least as possible.
9
+ logging.warning("eqc-direct package not available")
10
+
11
+ class EqcClient:
12
+ """This is a stub for unsupported EqcClient."""
13
+
14
+ def __init__(*_, **__) -> None:
15
+ """Raise exception when client cannot be created."""
16
+ raise ModuleNotFoundError(
17
+ "eqc-direct package not available, likely because Python version is 3.11+"
18
+ )
19
+
6
20
  from eqc_models.base.base import EqcModel, ModelSolver
7
21
  from eqc_models.base.results import SolutionResults
8
22
 
@@ -68,6 +82,8 @@ class Dirac3DirectSolver(ModelSolver):
68
82
 
69
83
  @property
70
84
  def client(self) -> EqcClient:
85
+ """Return a new client from eqc-direct based on class config."""
86
+
71
87
  return EqcClient(self.ip_addr, self.port, cert_file=self.cert_file)
72
88
 
73
89
  def makeResults(self, model : EqcModel, response : Dict):
@@ -77,11 +77,11 @@ class MIPMixin:
77
77
  for i in range(len(solutions)):
78
78
  log.debug("SolutionResults solution: %s", solutions[i])
79
79
  if hasattr(model, "evaluateObjective"):
80
- new_objectives = []
80
+ new_objectives = np.zeros((len(solutions),), dtype=np.float32)
81
81
  else:
82
82
  new_objectives = None
83
83
  if hasattr(model, "evaluatePenalties"):
84
- new_penalties = []
84
+ new_penalties = np.zeros((len(solutions),), dtype=np.float32)
85
85
  else:
86
86
  new_penalties = None
87
87
  new_solutions = []
@@ -98,12 +98,12 @@ class MIPMixin:
98
98
  log.debug("%d - New solution %s", i, new_sol)
99
99
  if new_objectives is not None:
100
100
  try:
101
- new_objectives.append(model.evaluateObjective(new_sol))
101
+ new_objectives[i:i+1] = model.evaluateObjective(new_sol)
102
102
  except NotImplementedError as err:
103
103
  pass
104
104
  if new_penalties is not None:
105
105
  try:
106
- new_penalties.append(model.evaluatePenalties(new_sol))
106
+ new_penalties[i:i+1] = model.evaluatePenalties(new_sol)
107
107
  except NotImplementedError as err:
108
108
  pass
109
109
  new_solutions.append(new_sol)
@@ -1,6 +1,7 @@
1
1
  # (C) Quantum Computing Inc., 2024.
2
2
  from .polynomial import evaluate_polynomial, convert_hamiltonian_to_polynomial
3
3
  from .fileio import read_coefficient_file, read_config_file, read_index_file
4
+ from .general import create_json_problem
4
5
 
5
6
  __all__ = ["evaluate_polynomial",
6
- "read_coefficient_file", "read_index_file", "read_config_file", "convert_hamiltonian_to_polynomial"]
7
+ "read_coefficient_file", "read_index_file", "read_config_file", "convert_hamiltonian_to_polynomial", "create_json_problem"]
@@ -0,0 +1,83 @@
1
+ # (C) Quantum Computing Inc., 2024.
2
+ import numpy as np
3
+ from eqc_models.utilities.polynomial import convert_hamiltonian_to_polynomial
4
+
5
+ def create_json_problem(
6
+ A: np.array,
7
+ B: np.array,
8
+ C: np.array,
9
+ D: np.array,
10
+ num_vars: int,
11
+ sum_constraint: float = None,
12
+ num_levels: int = None,
13
+ ):
14
+
15
+ """Converts a hamiltonian of up to fourth order to a polynomial.
16
+
17
+ D_{ijkl} x_i x_j x_k x_l + C_{ijk} x_i x_j x_k + B_{ij} x_i x_j
18
+ + A_i x_i
19
+
20
+ Input:
21
+
22
+ A: First order hamiltonian.
23
+ B: Second order hamiltonian.
24
+ C: Third order hamiltonian.
25
+ D: Fourth order hamiltonian.
26
+ num_vars: Number of variables.
27
+
28
+ Output:
29
+
30
+ Problem in json format.
31
+
32
+ """
33
+
34
+ if D is not None:
35
+ assert len(D.shape) == 4, "Incorrect shape!"
36
+ assert D.shape[0] == num_vars, "Inconsistent dimensions!"
37
+ assert D.shape[1] == num_vars, "Inconsistent dimensions!"
38
+ assert D.shape[2] == num_vars, "Inconsistent dimensions!"
39
+ assert D.shape[3] == num_vars, "Inconsistent dimensions!"
40
+ degree = 4
41
+ elif C is not None:
42
+ assert len(C.shape) == 3, "Incorrect shape!"
43
+ assert C.shape[0] == num_vars, "Inconsistent dimensions!"
44
+ assert C.shape[1] == num_vars, "Inconsistent dimensions!"
45
+ assert C.shape[2] == num_vars, "Inconsistent dimensions!"
46
+ degree = 3
47
+ elif B is not None:
48
+ assert len(B.shape) == 2, "Incorrect shape!"
49
+ assert B.shape[0] == num_vars, "Inconsistent dimensions!"
50
+ assert B.shape[1] == num_vars, "Inconsistent dimensions!"
51
+ degree = 2
52
+ elif A is not None:
53
+ assert len(A.shape) in [1, 2], "Incorrect shape!"
54
+ if len(A.shape) == 2:
55
+ if A.shape[1] == 1:
56
+ A = A.reshape((A.shape[0]))
57
+ else:
58
+ assert False, "Incorrect shape!"
59
+
60
+ assert A.shape[0] == num_vars, "Inconsistent dimensions!"
61
+
62
+ degree = 1
63
+ else:
64
+ assert False, "No hamiltonian provided!"
65
+
66
+ poly_indices, poly_coefs = convert_hamiltonian_to_polynomial(
67
+ A, B, C, D, num_vars,
68
+ )
69
+
70
+ json_object = {
71
+ "degree": degree,
72
+ "num_variables": num_vars,
73
+ "poly_indices": poly_indices,
74
+ "poly_coefficients": poly_coefs,
75
+ }
76
+
77
+ if num_levels is not None:
78
+ json_object["levels"] = [num_levels] * num_vars
79
+
80
+ if sum_constraint is not None:
81
+ json_object["sum_constraint"] = sum_constraint
82
+
83
+ return json_object
@@ -1,21 +1,23 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: eqc-models
3
- Version: 0.13.0
3
+ Version: 0.14.1
4
4
  Summary: Optimization and ML modeling package targeting EQC devices
5
5
  Author-email: "Quantum Computing Inc." <support@quantumcomputinginc.com>
6
6
  Project-URL: Homepage, https://quantumcomputinginc.com
7
7
  Project-URL: Documentation, https://quantumcomputinginc.com/learn/support/software-packages/
8
8
  Project-URL: Issues, https://support.quantumcomputinginc.com/
9
- Requires-Python: <3.11,>=3.9
9
+ Requires-Python: <3.14,>=3.9
10
10
  Description-Content-Type: text/markdown
11
11
  License-File: LICENSE.txt
12
+ Requires-Dist: emucore-direct==1.0.7; python_version < "3.11"
13
+ Requires-Dist: eqc-direct==2.0.2; python_version < "3.11"
12
14
  Requires-Dist: numpy<2,>=1.22.1
13
15
  Requires-Dist: networkx<3,>=2.6.3
14
16
  Requires-Dist: pandas<3,>=2.1.0
15
17
  Requires-Dist: scikit-learn<2,>=1.2.1
18
+ Requires-Dist: lightgbm<5,>=4.6.0
19
+ Requires-Dist: xgboost<2,>=1.7.4
16
20
  Requires-Dist: qci-client<6,>=5
17
- Requires-Dist: emucore-direct==1.0.7
18
- Requires-Dist: eqc-direct==2.0.2
19
21
  Provides-Extra: dev
20
22
  Requires-Dist: pytest<8,>=7.1.0; extra == "dev"
21
23
  Requires-Dist: pytest-cov; extra == "dev"
@@ -0,0 +1,70 @@
1
+ eqc_models-0.14.1.data/platlib/compile_extensions.py,sha256=ivFZ87WFzBITU7IwK_72C41MDNMortJIF8tKevm2aW4,1946
2
+ eqc_models-0.14.1.data/platlib/eqc_models/__init__.py,sha256=WPUijJz2-4UZU-ZTqBofDc-Yaah24geHdmF16SkwIj4,683
3
+ eqc_models-0.14.1.data/platlib/eqc_models/decoding.py,sha256=G3JgbIFzvZ3DIKW0kZ1JeTMIZmrc8hy9kzdbX2Xv5Og,637
4
+ eqc_models-0.14.1.data/platlib/eqc_models/algorithms/__init__.py,sha256=lzQoMMSs2QTqp5suEYNvcQaSEN16d0LwIsZ1mRstumU,135
5
+ eqc_models-0.14.1.data/platlib/eqc_models/algorithms/base.py,sha256=qfQQTwuVyewn7Qpg1_SVoD_7TsdA8vdwSKGqOeZSmNI,204
6
+ eqc_models-0.14.1.data/platlib/eqc_models/algorithms/penaltymultiplier.py,sha256=8mXF-Gbz9CfLEmZ_jSGVLE8dd0c8ce8fWXfajUllU7I,7844
7
+ eqc_models-0.14.1.data/platlib/eqc_models/allocation/__init__.py,sha256=op_udrapTlWrakTuQId3M0ggo-Y1w4nGJLPcYKOQ-8I,239
8
+ eqc_models-0.14.1.data/platlib/eqc_models/allocation/allocation.py,sha256=PAQn4M75Zegeoy0i6r3hycWs4TKeRglHk05TvwZOoLk,15506
9
+ eqc_models-0.14.1.data/platlib/eqc_models/allocation/portbase.py,sha256=BTnYYduHydPbrE2yQr_Sgv3XJACH_GpIJstuMrfGqCU,3269
10
+ eqc_models-0.14.1.data/platlib/eqc_models/allocation/portmomentum.py,sha256=oMod63rNDC-01dLZjmhUb24SN3_GVgfc6CItgQL_obI,3756
11
+ eqc_models-0.14.1.data/platlib/eqc_models/assignment/__init__.py,sha256=WDlTjWGu75UTxuNUPGNVGoMaYvYILWzZOuS-o72n054,160
12
+ eqc_models-0.14.1.data/platlib/eqc_models/assignment/qap.py,sha256=WMiQQmTORsgi2w7kbmMA1xo-93dESLECWqYTF-zkmTs,2963
13
+ eqc_models-0.14.1.data/platlib/eqc_models/assignment/resource.py,sha256=I0yAKjap2yQNpqDE9k7YoKbzVtsv_PVVpZzkUQuhbAE,6887
14
+ eqc_models-0.14.1.data/platlib/eqc_models/assignment/setpartition.py,sha256=5SQxF_ZlQk4ubWf5_3TgL83k01hAakUP-5AydlD-BvE,161
15
+ eqc_models-0.14.1.data/platlib/eqc_models/base/__init__.py,sha256=wKBppDk1lBiDvGOFnNpzu4lh7n4dQiyd_x3lNQJumTw,2952
16
+ eqc_models-0.14.1.data/platlib/eqc_models/base/base.py,sha256=3ESnRDa9KrOmyGFtDHP10X-TNBnOaDnBQ549uVcSB34,6721
17
+ eqc_models-0.14.1.data/platlib/eqc_models/base/binaries.py,sha256=rS-EUl2vzlDRTvHQ9Qn6SkyXfpyLMik50wh-h_bX5Qs,726
18
+ eqc_models-0.14.1.data/platlib/eqc_models/base/constraints.py,sha256=BKTQlkITRE8C-_ix6pVWbIK42RxrLsmzS3e8faD5Y7U,9540
19
+ eqc_models-0.14.1.data/platlib/eqc_models/base/operators.py,sha256=9nCeN6fRP-_YBfs-Gm57D-O_376qcOQiqGDuVlSlf00,7392
20
+ eqc_models-0.14.1.data/platlib/eqc_models/base/polyeval.c,sha256=qoXN_4c7J2ynbD6TGs66vFkgltuJH2dCHnKsBpS85Ug,483061
21
+ eqc_models-0.14.1.data/platlib/eqc_models/base/polyeval.cpython-310-darwin.so,sha256=RcREMUT8bGC-0c50WRJeNhp5VZ2BkXVykv4s7aIBIlM,109312
22
+ eqc_models-0.14.1.data/platlib/eqc_models/base/polyeval.pyx,sha256=76Bf99Jt1_rLh5byrZxAjavE2F4_yCysirViqOBFIXw,2547
23
+ eqc_models-0.14.1.data/platlib/eqc_models/base/polynomial.py,sha256=dkRs05mkItOwvWQgZjdAPG93OP3Pkd8jnJ0a2e1t-lU,13846
24
+ eqc_models-0.14.1.data/platlib/eqc_models/base/quadratic.py,sha256=IKjd-tL6pQosl217knS_ul2BXpk5a8ZZiSUzvKPg8S8,8082
25
+ eqc_models-0.14.1.data/platlib/eqc_models/base/results.py,sha256=pOX9AuVDRWuinzyw6YMqETmvKlA0-LdYbiEKwX9dYSA,8970
26
+ eqc_models-0.14.1.data/platlib/eqc_models/combinatorics/__init__.py,sha256=BhzcVxwpWu2b4jIe0bmPzD5VmSyzwp0oW2q9iYx2IUs,167
27
+ eqc_models-0.14.1.data/platlib/eqc_models/combinatorics/setcover.py,sha256=T5hXoE9Ecw3mTHPLmifBwTzpF_4MhoCUgo2rkSOWt5s,3396
28
+ eqc_models-0.14.1.data/platlib/eqc_models/combinatorics/setpartition.py,sha256=ZD69kgEYSU3KWnx0b4MVCP8XSxbA_VCXOW22_Yssl_M,6254
29
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/__init__.py,sha256=mpueOOcKklmtw1A3yUsjFNXU5DJ5XnItmGJKapaBLPg,392
30
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/base.py,sha256=K9d7hLgLuBtywEdK9Rz1dUV70Xtf-oVrwqtHyzXK7k4,2117
31
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/hypergraph.py,sha256=ABvutT0NOdIEpUF4TjUzboE4Y_J5iUZyj6-AzKr4R28,13268
32
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/maxcut.py,sha256=o8xVsAwTa9jcpmsIoCQ5z7HSstVdraT8TENomdT519o,4132
33
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/maxkcut.py,sha256=rEDBjto2MbuPh4c0RwTOZoVffKgcriqHNOZAIuBlclQ,4654
34
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/partition.py,sha256=HMpRRipLp14x8pHucY-g6fU7v0PGoy1pf_KpzbanfD0,5800
35
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/rcshortestpath.py,sha256=g5sy8pRk6c5x4nHVrs9vd0DjDxqlaLDkSytsiIp1hRw,3127
36
+ eqc_models-0.14.1.data/platlib/eqc_models/graph/shortestpath.py,sha256=p0NMGQt9pGbRQwu2pSIXXetSJfHB9K7K0rXP5JvDpQE,6443
37
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/__init__.py,sha256=CLfraacr0FrD5ynxlNB6cyNy0lpbavcQT45TvkDrNvY,369
38
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/classifierbase.py,sha256=IJxHMVnF7L2ClYI5b-gshs1q1t0apz5yWQtmEFSbR8E,2856
39
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/classifierqboost.py,sha256=YxUpzz2wpfT2M9cX6ZUuzDK3g6Jgv7BIgSdpDYnfahc,20692
40
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/classifierqsvm.py,sha256=ELKAdOMExeNjJIJCHd28bf7xQYBI2TpQDGkifldThkU,12120
41
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/clustering.py,sha256=wdzJVZwXKoK1L2QHhF0WiAjGDzDNfuoqcmNd46x7qqY,10503
42
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/clusteringbase.py,sha256=BbhyJfUpe5EgcCquz64qahK3HISsaQcEI2N6G64FJQU,3514
43
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/cvqboost_hamiltonian.pyx,sha256=3PMmEJ_xfmmWXGfire0t-WASnmKj6-CblufgQ2NTARo,2111
44
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/cvqboost_hamiltonian_c_func.c,sha256=ZoKgm_uGjTewhk4W6s-x8QoFuZO0KVkxILIFh6JKsoI,1851
45
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/cvqboost_hamiltonian_c_func.h,sha256=aOImMG5pziUnZxGpDXyWjLrvcY7ZdsczwwSQ2ay4T88,272
46
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/decomposition.py,sha256=sDvJmHMqHbdRKnfIN1DV3h9qmiH38NMAdJW3SZP7xEg,10992
47
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/forecast.py,sha256=fFcBxQK9ZryfEuyvlr9HXicHoZRzLFybimYYttzhI9E,7403
48
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/forecastbase.py,sha256=s-6nUMvtYqG07r7MmmkFVj8_QqgeGkD-HVoEEDTE2bk,3654
49
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/regressor.py,sha256=cF9L5MjoFKkdcKs3bCm6qaSzvSDiSIi1JtJeZE974hw,6174
50
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/regressorbase.py,sha256=a5PMOEOxIOkpYwvrkReh_edgAcjBm6e3lR6petNkqTg,2798
51
+ eqc_models-0.14.1.data/platlib/eqc_models/ml/reservoir.py,sha256=HDY-diloMevbtNDjKPoDJmx37NGxwBOI7d8Y-8KeGfA,3375
52
+ eqc_models-0.14.1.data/platlib/eqc_models/process/base.py,sha256=QmwbPRc9w9Yr7cwPvdnV6LBdgajif_8WGYGfwApvO34,443
53
+ eqc_models-0.14.1.data/platlib/eqc_models/process/mpc.py,sha256=V7RlA6t08IayV-VKkpK4mC01Lvk3ZTD-HlFYk60snks,645
54
+ eqc_models-0.14.1.data/platlib/eqc_models/sequence/__init__.py,sha256=VXlYufO3GYFsM00oii9Cite2WsQEF8XTwRcjLPH_Zlg,92
55
+ eqc_models-0.14.1.data/platlib/eqc_models/sequence/tsp.py,sha256=YM641FTyK5NkgRGxHrU1QmMkEU0gf77nEmIElTqa6Qw,7680
56
+ eqc_models-0.14.1.data/platlib/eqc_models/solvers/__init__.py,sha256=uC1fL2y-S_XwxnuN_ln-Tk3UvF4PGUKN_YolqnQZWDs,676
57
+ eqc_models-0.14.1.data/platlib/eqc_models/solvers/eqcdirect.py,sha256=dq0QjJhQcljCZr8FKTfPpheOfsb7ly3E28fXT-KYLE8,2875
58
+ eqc_models-0.14.1.data/platlib/eqc_models/solvers/mip.py,sha256=SvET_HzspqY3JoH_fnZSoU-wtBS0YXE9C9kpvE9TJHs,5358
59
+ eqc_models-0.14.1.data/platlib/eqc_models/solvers/qciclient.py,sha256=ore3YcZ9GAoLfdkYQUgo7XLU1WKvobHzl22DuwINWj8,26677
60
+ eqc_models-0.14.1.data/platlib/eqc_models/solvers/responselog.py,sha256=Vl0ZDYixwH2OnuCECP-TRwJ6PGfvPodWUgpvYOvYzRk,1735
61
+ eqc_models-0.14.1.data/platlib/eqc_models/utilities/__init__.py,sha256=6CpihFOS9_TVoR-9DBARUCb7aCwBTgA7hs3aW38rFkg,404
62
+ eqc_models-0.14.1.data/platlib/eqc_models/utilities/fileio.py,sha256=alWPTfjGFx6Iio9HZAAWtYcLmZsBBifg6S6_YbFMQhk,1088
63
+ eqc_models-0.14.1.data/platlib/eqc_models/utilities/general.py,sha256=mHOG0rSxk8icd4ij5DWKxlZuki4mBggZyEA94P-bSlo,2564
64
+ eqc_models-0.14.1.data/platlib/eqc_models/utilities/polynomial.py,sha256=blXfu7Ehz9lT4nEmIinRzJOL27_qUHSbQ57zxmwDJCA,4735
65
+ eqc_models-0.14.1.data/platlib/eqc_models/utilities/qplib.py,sha256=Do-MjmCFdI5HyDOAjfoz4_5lugySLMBlMAWDLUWx2OA,15796
66
+ eqc_models-0.14.1.dist-info/licenses/LICENSE.txt,sha256=8eh0oqsNNVR1Jk-13gkqRRSo2axtUU5kp2KzH4f9u3U,11354
67
+ eqc_models-0.14.1.dist-info/METADATA,sha256=XHaLkqfVnK3McL3ddtfJpKsLc0w1qP2qTb8bb-kGY_A,7199
68
+ eqc_models-0.14.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
69
+ eqc_models-0.14.1.dist-info/top_level.txt,sha256=9ZfFeKNEvkRlKWoUnfcZ9TzmTdgdsuPEnTPy11Hqf4Q,30
70
+ eqc_models-0.14.1.dist-info/RECORD,,
@@ -1,69 +0,0 @@
1
- eqc_models-0.13.0.data/platlib/compile_extensions.py,sha256=ivFZ87WFzBITU7IwK_72C41MDNMortJIF8tKevm2aW4,1946
2
- eqc_models-0.13.0.data/platlib/eqc_models/__init__.py,sha256=WPUijJz2-4UZU-ZTqBofDc-Yaah24geHdmF16SkwIj4,683
3
- eqc_models-0.13.0.data/platlib/eqc_models/decoding.py,sha256=G3JgbIFzvZ3DIKW0kZ1JeTMIZmrc8hy9kzdbX2Xv5Og,637
4
- eqc_models-0.13.0.data/platlib/eqc_models/algorithms/__init__.py,sha256=lzQoMMSs2QTqp5suEYNvcQaSEN16d0LwIsZ1mRstumU,135
5
- eqc_models-0.13.0.data/platlib/eqc_models/algorithms/base.py,sha256=qfQQTwuVyewn7Qpg1_SVoD_7TsdA8vdwSKGqOeZSmNI,204
6
- eqc_models-0.13.0.data/platlib/eqc_models/algorithms/penaltymultiplier.py,sha256=SndGxCZDS3JTaxFOPJpTBumFdIKcB0dKwSHwfl_BI6o,7845
7
- eqc_models-0.13.0.data/platlib/eqc_models/allocation/__init__.py,sha256=op_udrapTlWrakTuQId3M0ggo-Y1w4nGJLPcYKOQ-8I,239
8
- eqc_models-0.13.0.data/platlib/eqc_models/allocation/allocation.py,sha256=PAQn4M75Zegeoy0i6r3hycWs4TKeRglHk05TvwZOoLk,15506
9
- eqc_models-0.13.0.data/platlib/eqc_models/allocation/portbase.py,sha256=BTnYYduHydPbrE2yQr_Sgv3XJACH_GpIJstuMrfGqCU,3269
10
- eqc_models-0.13.0.data/platlib/eqc_models/allocation/portmomentum.py,sha256=oMod63rNDC-01dLZjmhUb24SN3_GVgfc6CItgQL_obI,3756
11
- eqc_models-0.13.0.data/platlib/eqc_models/assignment/__init__.py,sha256=WDlTjWGu75UTxuNUPGNVGoMaYvYILWzZOuS-o72n054,160
12
- eqc_models-0.13.0.data/platlib/eqc_models/assignment/qap.py,sha256=WMiQQmTORsgi2w7kbmMA1xo-93dESLECWqYTF-zkmTs,2963
13
- eqc_models-0.13.0.data/platlib/eqc_models/assignment/resource.py,sha256=Ux9e3Badty6bFMqRaLKAGbVRUtb1k1r1_E_2ajOhgb4,6883
14
- eqc_models-0.13.0.data/platlib/eqc_models/assignment/setpartition.py,sha256=5SQxF_ZlQk4ubWf5_3TgL83k01hAakUP-5AydlD-BvE,161
15
- eqc_models-0.13.0.data/platlib/eqc_models/base/__init__.py,sha256=wKBppDk1lBiDvGOFnNpzu4lh7n4dQiyd_x3lNQJumTw,2952
16
- eqc_models-0.13.0.data/platlib/eqc_models/base/base.py,sha256=3ESnRDa9KrOmyGFtDHP10X-TNBnOaDnBQ549uVcSB34,6721
17
- eqc_models-0.13.0.data/platlib/eqc_models/base/binaries.py,sha256=rS-EUl2vzlDRTvHQ9Qn6SkyXfpyLMik50wh-h_bX5Qs,726
18
- eqc_models-0.13.0.data/platlib/eqc_models/base/constraints.py,sha256=BKTQlkITRE8C-_ix6pVWbIK42RxrLsmzS3e8faD5Y7U,9540
19
- eqc_models-0.13.0.data/platlib/eqc_models/base/operators.py,sha256=9nCeN6fRP-_YBfs-Gm57D-O_376qcOQiqGDuVlSlf00,7392
20
- eqc_models-0.13.0.data/platlib/eqc_models/base/polyeval.c,sha256=wu3gWbakYpq0kWgmJfj5XiEhPpk3Dc54xHNMGwKdXUE,483061
21
- eqc_models-0.13.0.data/platlib/eqc_models/base/polyeval.cpython-310-darwin.so,sha256=MvVkAT8p-rYhwEo7-rWGqgPyi-tb_S97PvX4cWXroTs,109312
22
- eqc_models-0.13.0.data/platlib/eqc_models/base/polyeval.pyx,sha256=76Bf99Jt1_rLh5byrZxAjavE2F4_yCysirViqOBFIXw,2547
23
- eqc_models-0.13.0.data/platlib/eqc_models/base/polynomial.py,sha256=dkRs05mkItOwvWQgZjdAPG93OP3Pkd8jnJ0a2e1t-lU,13846
24
- eqc_models-0.13.0.data/platlib/eqc_models/base/quadratic.py,sha256=IKjd-tL6pQosl217knS_ul2BXpk5a8ZZiSUzvKPg8S8,8082
25
- eqc_models-0.13.0.data/platlib/eqc_models/base/results.py,sha256=P_tetLKJm-xWl6k00C0TFSTinq8jEeolwGsRTwsc-Zo,8777
26
- eqc_models-0.13.0.data/platlib/eqc_models/combinatorics/__init__.py,sha256=BhzcVxwpWu2b4jIe0bmPzD5VmSyzwp0oW2q9iYx2IUs,167
27
- eqc_models-0.13.0.data/platlib/eqc_models/combinatorics/setcover.py,sha256=T5hXoE9Ecw3mTHPLmifBwTzpF_4MhoCUgo2rkSOWt5s,3396
28
- eqc_models-0.13.0.data/platlib/eqc_models/combinatorics/setpartition.py,sha256=ZD69kgEYSU3KWnx0b4MVCP8XSxbA_VCXOW22_Yssl_M,6254
29
- eqc_models-0.13.0.data/platlib/eqc_models/graph/__init__.py,sha256=mpueOOcKklmtw1A3yUsjFNXU5DJ5XnItmGJKapaBLPg,392
30
- eqc_models-0.13.0.data/platlib/eqc_models/graph/base.py,sha256=K9d7hLgLuBtywEdK9Rz1dUV70Xtf-oVrwqtHyzXK7k4,2117
31
- eqc_models-0.13.0.data/platlib/eqc_models/graph/hypergraph.py,sha256=ABvutT0NOdIEpUF4TjUzboE4Y_J5iUZyj6-AzKr4R28,13268
32
- eqc_models-0.13.0.data/platlib/eqc_models/graph/maxcut.py,sha256=o8xVsAwTa9jcpmsIoCQ5z7HSstVdraT8TENomdT519o,4132
33
- eqc_models-0.13.0.data/platlib/eqc_models/graph/maxkcut.py,sha256=rEDBjto2MbuPh4c0RwTOZoVffKgcriqHNOZAIuBlclQ,4654
34
- eqc_models-0.13.0.data/platlib/eqc_models/graph/partition.py,sha256=HMpRRipLp14x8pHucY-g6fU7v0PGoy1pf_KpzbanfD0,5800
35
- eqc_models-0.13.0.data/platlib/eqc_models/graph/rcshortestpath.py,sha256=g5sy8pRk6c5x4nHVrs9vd0DjDxqlaLDkSytsiIp1hRw,3127
36
- eqc_models-0.13.0.data/platlib/eqc_models/graph/shortestpath.py,sha256=p0NMGQt9pGbRQwu2pSIXXetSJfHB9K7K0rXP5JvDpQE,6443
37
- eqc_models-0.13.0.data/platlib/eqc_models/ml/__init__.py,sha256=CLfraacr0FrD5ynxlNB6cyNy0lpbavcQT45TvkDrNvY,369
38
- eqc_models-0.13.0.data/platlib/eqc_models/ml/classifierbase.py,sha256=1D6EYgiEqbtoXpBHnCaBqPDXKEjsIpJpM5UTIGxumfk,3080
39
- eqc_models-0.13.0.data/platlib/eqc_models/ml/classifierqboost.py,sha256=oxYnex7Z_iXglupqmMN9bK6gU1DxKcHOo03fLCmELfQ,19456
40
- eqc_models-0.13.0.data/platlib/eqc_models/ml/classifierqsvm.py,sha256=ELKAdOMExeNjJIJCHd28bf7xQYBI2TpQDGkifldThkU,12120
41
- eqc_models-0.13.0.data/platlib/eqc_models/ml/clustering.py,sha256=KD8mv_xY9-pRGKDRgeLDO3e38cjftzca4SUBvN4__-I,9522
42
- eqc_models-0.13.0.data/platlib/eqc_models/ml/clusteringbase.py,sha256=mBlNe72QJmiGUhgq_jepHauNvANWhG0hEZQY2EHWKtA,2604
43
- eqc_models-0.13.0.data/platlib/eqc_models/ml/cvqboost_hamiltonian.pyx,sha256=3PMmEJ_xfmmWXGfire0t-WASnmKj6-CblufgQ2NTARo,2111
44
- eqc_models-0.13.0.data/platlib/eqc_models/ml/cvqboost_hamiltonian_c_func.c,sha256=ZoKgm_uGjTewhk4W6s-x8QoFuZO0KVkxILIFh6JKsoI,1851
45
- eqc_models-0.13.0.data/platlib/eqc_models/ml/cvqboost_hamiltonian_c_func.h,sha256=aOImMG5pziUnZxGpDXyWjLrvcY7ZdsczwwSQ2ay4T88,272
46
- eqc_models-0.13.0.data/platlib/eqc_models/ml/decomposition.py,sha256=VbYAM6tJ0FSwvSezhHDrhpQjqbChVED9DAJPJd98I4A,9475
47
- eqc_models-0.13.0.data/platlib/eqc_models/ml/forecast.py,sha256=fFcBxQK9ZryfEuyvlr9HXicHoZRzLFybimYYttzhI9E,7403
48
- eqc_models-0.13.0.data/platlib/eqc_models/ml/forecastbase.py,sha256=s-6nUMvtYqG07r7MmmkFVj8_QqgeGkD-HVoEEDTE2bk,3654
49
- eqc_models-0.13.0.data/platlib/eqc_models/ml/regressor.py,sha256=LA1woXCnefG0wfoOxilX1kszgCUmfNcbQgs_WZ4Ai0o,5683
50
- eqc_models-0.13.0.data/platlib/eqc_models/ml/regressorbase.py,sha256=ZG1lCek3VEH8iONa5N-sNxRa_7X9gO3Tg_-uX2ItLnc,2075
51
- eqc_models-0.13.0.data/platlib/eqc_models/ml/reservoir.py,sha256=cPRvpCaWLYTBkui35jCssHcOPQgSQZallrG6Ac9djVI,2827
52
- eqc_models-0.13.0.data/platlib/eqc_models/process/base.py,sha256=QmwbPRc9w9Yr7cwPvdnV6LBdgajif_8WGYGfwApvO34,443
53
- eqc_models-0.13.0.data/platlib/eqc_models/process/mpc.py,sha256=V7RlA6t08IayV-VKkpK4mC01Lvk3ZTD-HlFYk60snks,645
54
- eqc_models-0.13.0.data/platlib/eqc_models/sequence/__init__.py,sha256=VXlYufO3GYFsM00oii9Cite2WsQEF8XTwRcjLPH_Zlg,92
55
- eqc_models-0.13.0.data/platlib/eqc_models/sequence/tsp.py,sha256=YM641FTyK5NkgRGxHrU1QmMkEU0gf77nEmIElTqa6Qw,7680
56
- eqc_models-0.13.0.data/platlib/eqc_models/solvers/__init__.py,sha256=Q6QZkkeji_QyeBmgMT5qUs7mzdjK8hPUxw3zLqPxq00,677
57
- eqc_models-0.13.0.data/platlib/eqc_models/solvers/eqcdirect.py,sha256=CUchx3GH0VqNaE6SlZN75tH6CoztwGdGbLuhLdUr85s,2319
58
- eqc_models-0.13.0.data/platlib/eqc_models/solvers/mip.py,sha256=jdH2nHUZ5FZ2LCW2Tm08PjWfh5LM_SM0x5tLvlWNM_w,5270
59
- eqc_models-0.13.0.data/platlib/eqc_models/solvers/qciclient.py,sha256=ore3YcZ9GAoLfdkYQUgo7XLU1WKvobHzl22DuwINWj8,26677
60
- eqc_models-0.13.0.data/platlib/eqc_models/solvers/responselog.py,sha256=Vl0ZDYixwH2OnuCECP-TRwJ6PGfvPodWUgpvYOvYzRk,1735
61
- eqc_models-0.13.0.data/platlib/eqc_models/utilities/__init__.py,sha256=SI2U7JKmPWSiq-F1WcSyfd7l9V6nbOZv_p8quMAZaT0,340
62
- eqc_models-0.13.0.data/platlib/eqc_models/utilities/fileio.py,sha256=alWPTfjGFx6Iio9HZAAWtYcLmZsBBifg6S6_YbFMQhk,1088
63
- eqc_models-0.13.0.data/platlib/eqc_models/utilities/polynomial.py,sha256=blXfu7Ehz9lT4nEmIinRzJOL27_qUHSbQ57zxmwDJCA,4735
64
- eqc_models-0.13.0.data/platlib/eqc_models/utilities/qplib.py,sha256=Do-MjmCFdI5HyDOAjfoz4_5lugySLMBlMAWDLUWx2OA,15796
65
- eqc_models-0.13.0.dist-info/licenses/LICENSE.txt,sha256=8eh0oqsNNVR1Jk-13gkqRRSo2axtUU5kp2KzH4f9u3U,11354
66
- eqc_models-0.13.0.dist-info/METADATA,sha256=KOi9xU2l9f1w678joAy7798-Z08D0CAXIF4-IkUtWcg,7082
67
- eqc_models-0.13.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
68
- eqc_models-0.13.0.dist-info/top_level.txt,sha256=9ZfFeKNEvkRlKWoUnfcZ9TzmTdgdsuPEnTPy11Hqf4Q,30
69
- eqc_models-0.13.0.dist-info/RECORD,,