classiq 0.91.1__py3-none-any.whl → 0.93.0__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.
- classiq/__init__.py +13 -0
- classiq/_internals/config.py +1 -1
- classiq/analyzer/show_interactive_hack.py +1 -1
- classiq/applications/__init__.py +2 -6
- classiq/applications/qsp/__init__.py +7 -0
- classiq/applications/qsp/qsp.py +366 -0
- classiq/evaluators/parameter_types.py +13 -7
- classiq/execution/jobs.py +18 -8
- classiq/interface/_version.py +1 -1
- classiq/interface/backend/backend_preferences.py +8 -8
- classiq/interface/exceptions.py +4 -0
- classiq/interface/executor/result.py +4 -0
- classiq/interface/generator/functions/builtins/internal_operators.py +1 -0
- classiq/interface/generator/generated_circuit_data.py +5 -17
- classiq/interface/generator/transpiler_basis_gates.py +1 -1
- classiq/interface/helpers/versioned_model.py +0 -2
- classiq/interface/interface_version.py +1 -1
- classiq/interface/model/bind_operation.py +0 -12
- classiq/interface/model/handle_binding.py +3 -0
- classiq/interface/model/skip_control.py +11 -0
- classiq/interface/model/statement_block.py +3 -0
- classiq/interface/server/routes.py +0 -3
- classiq/model_expansions/interpreters/generative_interpreter.py +18 -1
- classiq/model_expansions/quantum_operations/assignment_result_processor.py +6 -0
- classiq/model_expansions/quantum_operations/bind.py +14 -0
- classiq/model_expansions/quantum_operations/skip_control_verifier.py +20 -0
- classiq/model_expansions/quantum_operations/variable_decleration.py +59 -27
- classiq/open_library/functions/__init__.py +2 -0
- classiq/open_library/functions/discrete_sine_cosine_transform.py +15 -10
- classiq/open_library/functions/qsvt.py +60 -6
- classiq/qmod/builtins/operations.py +24 -0
- classiq/qmod/classical_variable.py +4 -2
- classiq/qmod/native/pretty_printer.py +8 -0
- classiq/qmod/pretty_print/pretty_printer.py +5 -0
- classiq/qmod/quantum_expandable.py +31 -15
- classiq/qmod/symbolic_expr.py +12 -4
- classiq/synthesis.py +1 -1
- {classiq-0.91.1.dist-info → classiq-0.93.0.dist-info}/METADATA +39 -34
- {classiq-0.91.1.dist-info → classiq-0.93.0.dist-info}/RECORD +41 -37
- classiq-0.93.0.dist-info/WHEEL +4 -0
- classiq-0.93.0.dist-info/licenses/LICENSE.txt +27 -0
- classiq/interface/ide/ide_data.py +0 -102
- classiq-0.91.1.dist-info/WHEEL +0 -4
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
from enum import IntEnum
|
|
2
|
-
from typing import Optional, Union
|
|
3
|
-
|
|
4
|
-
import pydantic
|
|
5
|
-
|
|
6
|
-
from classiq.interface.generator.generated_circuit_data import GeneratedFunction
|
|
7
|
-
from classiq.interface.generator.hardware.hardware_data import SynthesisHardwareData
|
|
8
|
-
from classiq.interface.helpers.versioned_model import VersionedModel
|
|
9
|
-
from classiq.interface.ide.visual_model import CircuitMetrics
|
|
10
|
-
|
|
11
|
-
GateCount = dict[str, int]
|
|
12
|
-
Depth = int
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class IDEDataQubit(pydantic.BaseModel):
|
|
16
|
-
id: int
|
|
17
|
-
numChildren: Optional[int] = None
|
|
18
|
-
name: Optional[str] = None
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
class IDEQubitDef(pydantic.BaseModel):
|
|
22
|
-
qId: int
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
class RegisterType(IntEnum):
|
|
26
|
-
QUBIT = 0
|
|
27
|
-
CLASSICAL = 1
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
class IDEClassicalBitDef(pydantic.BaseModel):
|
|
31
|
-
type: RegisterType
|
|
32
|
-
qId: int
|
|
33
|
-
cId: int
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
class DataAttributes(pydantic.BaseModel):
|
|
37
|
-
tooltip: Optional[GeneratedFunction] = None
|
|
38
|
-
expanded: str = ""
|
|
39
|
-
controlStates: str = ""
|
|
40
|
-
id: str = ""
|
|
41
|
-
zoom_out: str = ""
|
|
42
|
-
zoom_in: str = ""
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
class ConditionalRender(IntEnum):
|
|
46
|
-
ALWAYS = 0
|
|
47
|
-
ON_ZERO = 1
|
|
48
|
-
ON_ONE = 2
|
|
49
|
-
AS_GROUP = 3
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
class IDEDataOperation(pydantic.BaseModel):
|
|
53
|
-
gate: str
|
|
54
|
-
displayName: str
|
|
55
|
-
children: list["IDEDataOperation"]
|
|
56
|
-
depth: Depth
|
|
57
|
-
width: int
|
|
58
|
-
gate_count: GateCount
|
|
59
|
-
_qubits: list = pydantic.PrivateAttr() # list[Qubit]
|
|
60
|
-
|
|
61
|
-
displayArgs: str = ""
|
|
62
|
-
targets: Union[list[IDEQubitDef], list[IDEClassicalBitDef]] = pydantic.Field( # type: ignore[assignment]
|
|
63
|
-
default_factory=list
|
|
64
|
-
)
|
|
65
|
-
controls: list[IDEQubitDef] = list()
|
|
66
|
-
dataAttributes: DataAttributes = pydantic.Field(default_factory=DataAttributes)
|
|
67
|
-
isControlled: bool = False
|
|
68
|
-
isMeasurement: bool = False
|
|
69
|
-
isConditional: bool = False
|
|
70
|
-
isAdjoint: bool = False
|
|
71
|
-
conditional_render: Optional[ConditionalRender] = None
|
|
72
|
-
|
|
73
|
-
@property
|
|
74
|
-
def qubits(self) -> list: # list[Qubit]
|
|
75
|
-
return self._qubits
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
class IDEDataProperties(pydantic.BaseModel):
|
|
79
|
-
color: Optional[str] = None
|
|
80
|
-
rightLabel: Optional[str] = None
|
|
81
|
-
leftLabel: Optional[str] = None
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
class RegisterData(pydantic.BaseModel):
|
|
85
|
-
segmentIds: list[str]
|
|
86
|
-
properties: IDEDataProperties
|
|
87
|
-
registerId: str
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
class InterfaceSegmentData(pydantic.BaseModel):
|
|
91
|
-
segmentId: str
|
|
92
|
-
properties: IDEDataProperties
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
class IDEData(VersionedModel):
|
|
96
|
-
qubits: list[IDEDataQubit]
|
|
97
|
-
operations: list[IDEDataOperation]
|
|
98
|
-
register_data: list[RegisterData]
|
|
99
|
-
segment_data: list[InterfaceSegmentData]
|
|
100
|
-
circuit_metrics: Optional[CircuitMetrics]
|
|
101
|
-
hardware_data: SynthesisHardwareData
|
|
102
|
-
creation_time: str
|
classiq-0.91.1.dist-info/WHEEL
DELETED