classiq 0.45.1__py3-none-any.whl → 0.46.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 +0 -1
- classiq/_internals/__init__.py +20 -0
- classiq/_internals/authentication/authentication.py +11 -0
- classiq/analyzer/analyzer.py +12 -10
- classiq/applications/combinatorial_helpers/combinatorial_problem_utils.py +1 -1
- classiq/applications/combinatorial_helpers/pauli_helpers/pauli_utils.py +1 -1
- classiq/applications/combinatorial_optimization/combinatorial_optimization_model_constructor.py +1 -1
- classiq/applications/libraries/qmci_library.py +4 -9
- classiq/execution/execution_session.py +68 -7
- classiq/executor.py +14 -2
- classiq/interface/_version.py +1 -1
- classiq/interface/backend/backend_preferences.py +189 -0
- classiq/interface/backend/quantum_backend_providers.py +38 -0
- classiq/interface/debug_info/debug_info.py +22 -2
- classiq/interface/exceptions.py +16 -1
- classiq/interface/executor/execution_preferences.py +18 -0
- classiq/interface/generator/application_apis/chemistry_declarations.py +1 -177
- classiq/interface/generator/application_apis/combinatorial_optimization_declarations.py +0 -12
- classiq/interface/generator/application_apis/finance_declarations.py +8 -43
- classiq/interface/generator/application_apis/qsvm_declarations.py +0 -78
- classiq/interface/generator/builtin_api_builder.py +0 -3
- classiq/interface/generator/functions/__init__.py +0 -2
- classiq/interface/generator/functions/builtins/__init__.py +0 -15
- classiq/interface/generator/generated_circuit_data.py +2 -0
- classiq/interface/generator/hardware/hardware_data.py +37 -0
- classiq/interface/generator/model/constraints.py +18 -1
- classiq/interface/generator/model/preferences/preferences.py +53 -1
- classiq/interface/generator/model/quantum_register.py +1 -1
- classiq/interface/generator/quantum_program.py +10 -2
- classiq/interface/generator/transpiler_basis_gates.py +4 -0
- classiq/interface/generator/types/builtin_enum_declarations.py +136 -21
- classiq/interface/generator/types/enum_declaration.py +1 -3
- classiq/interface/generator/types/struct_declaration.py +1 -3
- classiq/interface/hardware.py +5 -0
- classiq/interface/ide/visual_model.py +1 -1
- classiq/interface/model/classical_parameter_declaration.py +6 -0
- classiq/interface/model/inplace_binary_operation.py +0 -14
- classiq/interface/model/model.py +1 -18
- classiq/interface/model/port_declaration.py +4 -2
- classiq/interface/model/quantum_function_declaration.py +19 -6
- classiq/interface/model/quantum_lambda_function.py +11 -1
- classiq/interface/model/quantum_variable_declaration.py +1 -1
- classiq/model_expansions/__init__.py +0 -0
- classiq/model_expansions/atomic_expression_functions_defs.py +250 -0
- classiq/model_expansions/capturing/__init__.py +0 -0
- classiq/model_expansions/capturing/captured_var_manager.py +50 -0
- classiq/model_expansions/capturing/mangling_utils.py +17 -0
- classiq/model_expansions/capturing/propagated_var_stack.py +180 -0
- classiq/model_expansions/closure.py +160 -0
- classiq/model_expansions/debug_flag.py +3 -0
- classiq/model_expansions/evaluators/__init__.py +0 -0
- classiq/model_expansions/evaluators/arg_type_match.py +160 -0
- classiq/model_expansions/evaluators/argument_types.py +42 -0
- classiq/model_expansions/evaluators/classical_expression.py +36 -0
- classiq/model_expansions/evaluators/control.py +144 -0
- classiq/model_expansions/evaluators/parameter_types.py +227 -0
- classiq/model_expansions/evaluators/quantum_type_utils.py +235 -0
- classiq/model_expansions/evaluators/type_type_match.py +90 -0
- classiq/model_expansions/expression_evaluator.py +125 -0
- classiq/model_expansions/expression_renamer.py +76 -0
- classiq/model_expansions/function_builder.py +192 -0
- classiq/model_expansions/generative_functions.py +101 -0
- classiq/model_expansions/interpreter.py +365 -0
- classiq/model_expansions/model_tables.py +105 -0
- classiq/model_expansions/quantum_operations/__init__.py +19 -0
- classiq/model_expansions/quantum_operations/bind.py +64 -0
- classiq/model_expansions/quantum_operations/classicalif.py +39 -0
- classiq/model_expansions/quantum_operations/control.py +235 -0
- classiq/model_expansions/quantum_operations/emitter.py +215 -0
- classiq/model_expansions/quantum_operations/expression_operation.py +218 -0
- classiq/model_expansions/quantum_operations/inplace_binary_operation.py +250 -0
- classiq/model_expansions/quantum_operations/invert.py +38 -0
- classiq/model_expansions/quantum_operations/power.py +74 -0
- classiq/model_expansions/quantum_operations/quantum_assignment_operation.py +174 -0
- classiq/model_expansions/quantum_operations/quantum_function_call.py +15 -0
- classiq/model_expansions/quantum_operations/repeat.py +33 -0
- classiq/model_expansions/quantum_operations/variable_decleration.py +28 -0
- classiq/model_expansions/quantum_operations/within_apply.py +46 -0
- classiq/model_expansions/scope.py +226 -0
- classiq/model_expansions/scope_initialization.py +136 -0
- classiq/model_expansions/sympy_conversion/__init__.py +0 -0
- classiq/model_expansions/sympy_conversion/arithmetics.py +49 -0
- classiq/model_expansions/sympy_conversion/expression_to_sympy.py +150 -0
- classiq/model_expansions/sympy_conversion/sympy_to_python.py +113 -0
- classiq/model_expansions/utils/__init__.py +0 -0
- classiq/model_expansions/utils/counted_name_allocator.py +11 -0
- classiq/model_expansions/visitors/__init__.py +0 -0
- classiq/model_expansions/visitors/boolean_expression_transformers.py +214 -0
- classiq/model_expansions/visitors/variable_references.py +115 -0
- classiq/qmod/__init__.py +1 -3
- classiq/qmod/builtins/enums.py +33 -2
- classiq/qmod/builtins/functions/__init__.py +251 -0
- classiq/qmod/builtins/functions/amplitude_estimation.py +26 -0
- classiq/qmod/builtins/functions/arithmetic.py +68 -0
- classiq/qmod/builtins/functions/benchmarking.py +8 -0
- classiq/qmod/builtins/functions/chemistry.py +91 -0
- classiq/qmod/builtins/functions/discrete_sine_cosine_transform.py +105 -0
- classiq/qmod/builtins/functions/exponentiation.py +110 -0
- classiq/qmod/builtins/functions/finance.py +34 -0
- classiq/qmod/builtins/functions/grover.py +179 -0
- classiq/qmod/builtins/functions/hea.py +59 -0
- classiq/qmod/builtins/functions/linear_pauli_rotation.py +65 -0
- classiq/qmod/builtins/functions/modular_exponentiation.py +137 -0
- classiq/qmod/builtins/functions/operators.py +22 -0
- classiq/qmod/builtins/functions/qaoa_penalty.py +116 -0
- classiq/qmod/builtins/functions/qft.py +23 -0
- classiq/qmod/builtins/functions/qpe.py +39 -0
- classiq/qmod/builtins/functions/qsvm.py +24 -0
- classiq/qmod/builtins/functions/qsvt.py +136 -0
- classiq/qmod/builtins/functions/standard_gates.py +739 -0
- classiq/qmod/builtins/functions/state_preparation.py +356 -0
- classiq/qmod/builtins/functions/swap_test.py +25 -0
- classiq/qmod/builtins/structs.py +50 -28
- classiq/qmod/cparam.py +64 -0
- classiq/qmod/create_model_function.py +190 -0
- classiq/qmod/declaration_inferrer.py +52 -81
- classiq/qmod/expression_query.py +16 -0
- classiq/qmod/generative.py +48 -0
- classiq/qmod/model_state_container.py +1 -2
- classiq/qmod/native/pretty_printer.py +7 -11
- classiq/qmod/pretty_print/pretty_printer.py +7 -11
- classiq/qmod/python_classical_type.py +67 -0
- classiq/qmod/qfunc.py +19 -4
- classiq/qmod/qmod_parameter.py +15 -64
- classiq/qmod/qmod_variable.py +27 -45
- classiq/qmod/quantum_callable.py +1 -1
- classiq/qmod/quantum_expandable.py +10 -4
- classiq/qmod/quantum_function.py +22 -40
- classiq/qmod/semantics/error_manager.py +22 -10
- classiq/qmod/semantics/static_semantics_visitor.py +10 -12
- classiq/qmod/semantics/validation/types_validation.py +6 -7
- classiq/qmod/utilities.py +2 -2
- classiq/qmod/write_qmod.py +14 -0
- classiq/show.py +10 -0
- classiq/synthesis.py +46 -2
- {classiq-0.45.1.dist-info → classiq-0.46.0.dist-info}/METADATA +1 -1
- {classiq-0.45.1.dist-info → classiq-0.46.0.dist-info}/RECORD +138 -74
- classiq/interface/generator/functions/builtins/core_library/__init__.py +0 -16
- classiq/interface/generator/functions/builtins/core_library/atomic_quantum_functions.py +0 -710
- classiq/interface/generator/functions/builtins/core_library/exponentiation_functions.py +0 -105
- classiq/interface/generator/functions/builtins/open_lib_functions.py +0 -2489
- classiq/interface/generator/functions/builtins/quantum_operators.py +0 -24
- classiq/interface/generator/types/builtin_struct_declarations/__init__.py +0 -1
- classiq/interface/generator/types/builtin_struct_declarations/pauli_struct_declarations.py +0 -21
- classiq/qmod/builtins/functions.py +0 -1029
- {classiq-0.45.1.dist-info → classiq-0.46.0.dist-info}/WHEEL +0 -0
@@ -1,105 +0,0 @@
|
|
1
|
-
from classiq.interface.generator.expressions.expression import Expression
|
2
|
-
from classiq.interface.generator.functions.classical_type import (
|
3
|
-
ClassicalList,
|
4
|
-
Integer,
|
5
|
-
Real,
|
6
|
-
)
|
7
|
-
from classiq.interface.generator.functions.port_declaration import (
|
8
|
-
PortDeclarationDirection,
|
9
|
-
)
|
10
|
-
from classiq.interface.generator.functions.type_name import Enum
|
11
|
-
from classiq.interface.generator.types.builtin_struct_declarations.pauli_struct_declarations import (
|
12
|
-
Hamiltonian,
|
13
|
-
)
|
14
|
-
from classiq.interface.model.classical_parameter_declaration import (
|
15
|
-
ClassicalParameterDeclaration,
|
16
|
-
)
|
17
|
-
from classiq.interface.model.port_declaration import PortDeclaration
|
18
|
-
from classiq.interface.model.quantum_function_declaration import (
|
19
|
-
NamedParamsQuantumFunctionDeclaration,
|
20
|
-
)
|
21
|
-
|
22
|
-
SINGLE_PAULI_EXPONENT_FUNCTION = NamedParamsQuantumFunctionDeclaration(
|
23
|
-
name="single_pauli_exponent",
|
24
|
-
positional_arg_declarations=[
|
25
|
-
ClassicalParameterDeclaration(
|
26
|
-
name="pauli_string",
|
27
|
-
classical_type=ClassicalList(element_type=Enum(name="Pauli")),
|
28
|
-
),
|
29
|
-
ClassicalParameterDeclaration(name="coefficient", classical_type=Real()),
|
30
|
-
PortDeclaration(
|
31
|
-
name="qbv",
|
32
|
-
direction=PortDeclarationDirection.Inout,
|
33
|
-
size=Expression(expr="get_field(pauli_string, 'len')"),
|
34
|
-
),
|
35
|
-
],
|
36
|
-
)
|
37
|
-
|
38
|
-
|
39
|
-
SUZUKI_TROTTER_FUNCTION = NamedParamsQuantumFunctionDeclaration(
|
40
|
-
name="suzuki_trotter",
|
41
|
-
positional_arg_declarations=[
|
42
|
-
ClassicalParameterDeclaration(
|
43
|
-
name="pauli_operator", classical_type=Hamiltonian()
|
44
|
-
),
|
45
|
-
ClassicalParameterDeclaration(
|
46
|
-
name="evolution_coefficient", classical_type=Real()
|
47
|
-
),
|
48
|
-
ClassicalParameterDeclaration(name="order", classical_type=Integer()),
|
49
|
-
ClassicalParameterDeclaration(name="repetitions", classical_type=Integer()),
|
50
|
-
PortDeclaration(
|
51
|
-
name="qbv",
|
52
|
-
direction=PortDeclarationDirection.Inout,
|
53
|
-
size=Expression(
|
54
|
-
expr="get_field(get_field(pauli_operator[0], 'pauli'), 'len')"
|
55
|
-
),
|
56
|
-
),
|
57
|
-
],
|
58
|
-
)
|
59
|
-
|
60
|
-
QDRIFT_FUNCTION = NamedParamsQuantumFunctionDeclaration(
|
61
|
-
name="qdrift",
|
62
|
-
positional_arg_declarations=[
|
63
|
-
ClassicalParameterDeclaration(
|
64
|
-
name="pauli_operator", classical_type=Hamiltonian()
|
65
|
-
),
|
66
|
-
ClassicalParameterDeclaration(
|
67
|
-
name="evolution_coefficient", classical_type=Real()
|
68
|
-
),
|
69
|
-
ClassicalParameterDeclaration(name="num_qdrift", classical_type=Integer()),
|
70
|
-
PortDeclaration(
|
71
|
-
name="qbv",
|
72
|
-
direction=PortDeclarationDirection.Inout,
|
73
|
-
size=Expression(
|
74
|
-
expr="get_field(get_field(pauli_operator[0], 'pauli'), 'len')"
|
75
|
-
),
|
76
|
-
),
|
77
|
-
],
|
78
|
-
)
|
79
|
-
|
80
|
-
EXPONENTIATION_WITH_DEPTH_CONSTRAINT = NamedParamsQuantumFunctionDeclaration(
|
81
|
-
name="exponentiation_with_depth_constraint",
|
82
|
-
positional_arg_declarations=[
|
83
|
-
ClassicalParameterDeclaration(
|
84
|
-
name="pauli_operator", classical_type=Hamiltonian()
|
85
|
-
),
|
86
|
-
ClassicalParameterDeclaration(
|
87
|
-
name="evolution_coefficient", classical_type=Real()
|
88
|
-
),
|
89
|
-
ClassicalParameterDeclaration(name="max_depth", classical_type=Integer()),
|
90
|
-
PortDeclaration(
|
91
|
-
name="qbv",
|
92
|
-
direction=PortDeclarationDirection.Inout,
|
93
|
-
size=Expression(
|
94
|
-
expr="get_field(get_field(pauli_operator[0], 'pauli'), 'len')"
|
95
|
-
),
|
96
|
-
),
|
97
|
-
],
|
98
|
-
)
|
99
|
-
|
100
|
-
__all__ = [
|
101
|
-
"SINGLE_PAULI_EXPONENT_FUNCTION",
|
102
|
-
"SUZUKI_TROTTER_FUNCTION",
|
103
|
-
"QDRIFT_FUNCTION",
|
104
|
-
"EXPONENTIATION_WITH_DEPTH_CONSTRAINT",
|
105
|
-
]
|