classiq 0.39.0__py3-none-any.whl → 0.40.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.
Files changed (51) hide show
  1. classiq/__init__.py +1 -0
  2. classiq/applications/chemistry/chemistry_model_constructor.py +1 -1
  3. classiq/applications/combinatorial_helpers/combinatorial_problem_utils.py +5 -6
  4. classiq/applications/combinatorial_helpers/optimization_model.py +7 -6
  5. classiq/applications/combinatorial_helpers/pauli_helpers/pauli_utils.py +0 -10
  6. classiq/applications/combinatorial_optimization/__init__.py +2 -0
  7. classiq/applications/combinatorial_optimization/combinatorial_optimization_model_constructor.py +2 -2
  8. classiq/interface/_version.py +1 -1
  9. classiq/interface/backend/backend_preferences.py +5 -5
  10. classiq/interface/backend/quantum_backend_providers.py +7 -7
  11. classiq/interface/executor/execution_preferences.py +4 -9
  12. classiq/interface/generator/application_apis/chemistry_declarations.py +2 -4
  13. classiq/interface/generator/application_apis/finance_declarations.py +1 -1
  14. classiq/interface/generator/arith/arithmetic_expression_validator.py +2 -0
  15. classiq/interface/generator/expressions/qmod_qarray_proxy.py +82 -0
  16. classiq/interface/generator/expressions/qmod_qscalar_proxy.py +21 -0
  17. classiq/interface/generator/expressions/qmod_sized_proxy.py +22 -0
  18. classiq/interface/generator/functions/builtins/core_library/atomic_quantum_functions.py +8 -6
  19. classiq/interface/generator/functions/builtins/core_library/exponentiation_functions.py +10 -4
  20. classiq/interface/generator/functions/builtins/open_lib_functions.py +624 -76
  21. classiq/interface/generator/functions/classical_type.py +29 -17
  22. classiq/interface/generator/model/preferences/preferences.py +4 -2
  23. classiq/interface/model/control.py +104 -8
  24. classiq/interface/model/quantum_type.py +6 -5
  25. classiq/interface/model/resolvers/function_call_resolver.py +0 -5
  26. classiq/interface/model/statement_block.py +1 -4
  27. classiq/qmod/__init__.py +6 -2
  28. classiq/qmod/builtins/classical_functions.py +30 -35
  29. classiq/qmod/builtins/functions.py +213 -153
  30. classiq/qmod/builtins/operations.py +78 -24
  31. classiq/qmod/builtins/structs.py +50 -48
  32. classiq/qmod/declaration_inferrer.py +30 -18
  33. classiq/qmod/native/expression_to_qmod.py +5 -4
  34. classiq/qmod/native/pretty_printer.py +7 -14
  35. classiq/qmod/qmod_constant.py +7 -7
  36. classiq/qmod/qmod_parameter.py +54 -33
  37. classiq/qmod/qmod_struct.py +2 -2
  38. classiq/qmod/qmod_variable.py +40 -29
  39. classiq/qmod/quantum_callable.py +7 -4
  40. classiq/qmod/quantum_expandable.py +19 -13
  41. classiq/qmod/quantum_function.py +25 -2
  42. classiq/qmod/symbolic.py +78 -68
  43. classiq/qmod/symbolic_expr.py +1 -1
  44. classiq/qmod/symbolic_type.py +1 -4
  45. classiq/qmod/utilities.py +29 -0
  46. {classiq-0.39.0.dist-info → classiq-0.40.0.dist-info}/METADATA +1 -1
  47. {classiq-0.39.0.dist-info → classiq-0.40.0.dist-info}/RECORD +48 -50
  48. classiq/interface/executor/error_mitigation.py +0 -6
  49. classiq/interface/generator/functions/builtins/core_library/chemistry_functions.py +0 -0
  50. classiq/interface/model/quantum_if_operation.py +0 -94
  51. {classiq-0.39.0.dist-info → classiq-0.40.0.dist-info}/WHEEL +0 -0
@@ -1,4 +1,4 @@
1
- classiq/__init__.py,sha256=i7BN1WZhiaGOYkFZlMHfqMoCGUfx6tmfx4-12cMJAF0,3109
1
+ classiq/__init__.py,sha256=_4s6Mx7iZuneeqsIFBT7G93tgrQRDhVO0A_00NkvS38,3139
2
2
  classiq/_analyzer_extras/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
3
  classiq/_analyzer_extras/_ipywidgets_async_extension.py,sha256=DF-G1Dhp51P6qlxTJT-kxPMJiYy9tyNoCvqbPQOeJd0,2163
4
4
  classiq/_analyzer_extras/interactive_hardware.py,sha256=f7ad2HeFq1f-2dJtPpgOE_w2IFzm49W6P_c-MzqJ5qE,3257
@@ -30,21 +30,21 @@ classiq/applications/__init__.py,sha256=ANRW68--0PJMxA2Z5XuhGrDKLilkTdj3U5y9EAmP
30
30
  classiq/applications/chemistry/__init__.py,sha256=JwKGDR6NiKoykoNdOSovbZges6i40N2xkxYbAMHOS2A,1119
31
31
  classiq/applications/chemistry/ansatz_parameters.py,sha256=548erjkahfpWds6l0wJ_ddskzONaaHa441uySj0qVAo,686
32
32
  classiq/applications/chemistry/chemistry_execution_parameters.py,sha256=bqzXBwEl56a7OGKNk_aV2MGPxdMebwG7bIUqVJQyJQ0,505
33
- classiq/applications/chemistry/chemistry_model_constructor.py,sha256=Epe9AttA_AsX5LcX5W8Ty-WI1TjOTBWQ2UyDvqJWvXQ,16267
33
+ classiq/applications/chemistry/chemistry_model_constructor.py,sha256=UIFjcyUA1lHzFd0dmD6dCR-xUKvUH4GMc4fL2aB44VY,16280
34
34
  classiq/applications/chemistry/ground_state_problem.py,sha256=Ekkb4eDJkVXeTe4_hsoUUDaNZA83lJi2C0VwXf6haLk,1634
35
35
  classiq/applications/combinatorial_helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
36
  classiq/applications/combinatorial_helpers/allowed_constraints.py,sha256=UmrHXO6ArJgN9kKr-aMDtz5kA75enHaIEgUW05F4h9M,626
37
37
  classiq/applications/combinatorial_helpers/arithmetic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
38
38
  classiq/applications/combinatorial_helpers/arithmetic/arithmetic_expression.py,sha256=8K0rCq5MP8xBa6E3sbfsn7VYROqd8PM-Nyakbj1Pe2U,1206
39
39
  classiq/applications/combinatorial_helpers/arithmetic/isolation.py,sha256=nxKCB4v5NB2ISJ1qg2xfQDszh8LzLNvtLYgH_FPvUWY,1536
40
- classiq/applications/combinatorial_helpers/combinatorial_problem_utils.py,sha256=XwLhzYydTZ-K8Ultr9xiOm44hp2UNPF-u9h2G6B7c1o,5025
40
+ classiq/applications/combinatorial_helpers/combinatorial_problem_utils.py,sha256=Doca9ucewwRG5A6p3b327T1Sr7StpC_0zn1hJkD1WSY,5062
41
41
  classiq/applications/combinatorial_helpers/encoding_mapping.py,sha256=6J2oKGab2avhSYv2DC3sg07aRtSoHFddUkjSRS_MR28,3654
42
42
  classiq/applications/combinatorial_helpers/encoding_utils.py,sha256=sXzrHqVWXotoqWu82syUxLOE2kj5uEbHFJflNKQkaXI,3796
43
43
  classiq/applications/combinatorial_helpers/memory.py,sha256=Z-ieb02VqmCU3cKjdzVL5Cdqzck20290NKLoNN4l71Q,2321
44
- classiq/applications/combinatorial_helpers/optimization_model.py,sha256=_JxZuh3Yin5TQcGdIqYJLJek5XoVj9WBY9KrKS2yumY,5818
44
+ classiq/applications/combinatorial_helpers/optimization_model.py,sha256=MM6C0JMXZlzIBgwIVP-55KqC_Df6JTTYVYu7-HrqMDk,5870
45
45
  classiq/applications/combinatorial_helpers/pauli_helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
46
  classiq/applications/combinatorial_helpers/pauli_helpers/pauli_sparsing.py,sha256=-vsJgA4Th3wrIxjNrG7Vv6ME8iZbw8rLuFZ99-tRpEc,1263
47
- classiq/applications/combinatorial_helpers/pauli_helpers/pauli_utils.py,sha256=QkKFCmArBjwdw1SZgbR_xddENLmwF-y9fogGTsd7C-I,2388
47
+ classiq/applications/combinatorial_helpers/pauli_helpers/pauli_utils.py,sha256=mN8Bttki6lFHtb0Pzkw39hru3h-FcGVchv0AAVIBp40,2169
48
48
  classiq/applications/combinatorial_helpers/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
49
49
  classiq/applications/combinatorial_helpers/pyomo_utils.py,sha256=qsftJpLrZ4oe1f8ovEk2zzFN4x5KNUznj6RBN0FLSQ8,8336
50
50
  classiq/applications/combinatorial_helpers/solvers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -57,9 +57,9 @@ classiq/applications/combinatorial_helpers/transformations/penalty.py,sha256=7qK
57
57
  classiq/applications/combinatorial_helpers/transformations/penalty_support.py,sha256=fyn8_KgfFAU-zqANwBhjCANLmSzIVgfAq5sYMNIzqM0,1371
58
58
  classiq/applications/combinatorial_helpers/transformations/sign_seperation.py,sha256=UgTZFHyDeTZHU09z528oH2lkuC2VmcpdVHYIk2WyB3Y,1919
59
59
  classiq/applications/combinatorial_helpers/transformations/slack_variables.py,sha256=iG38BpqW4mQflDHZnKj5IyBa5i2F0d_WY55AfL0OzLY,3108
60
- classiq/applications/combinatorial_optimization/__init__.py,sha256=iaoYwfOOH0Qv2PqEOSw8rfJXIpznE8gnikmYL5lyoAo,816
60
+ classiq/applications/combinatorial_optimization/__init__.py,sha256=1pNjlmHuxJNEVr4XsBUFkgIHFxyCtbifqShQBb2lmC0,878
61
61
  classiq/applications/combinatorial_optimization/combinatorial_optimization_config.py,sha256=M8tBJ-mIQNuM0EWp7lIDQAfvKDjTZPFGoZo4rXoJXl0,624
62
- classiq/applications/combinatorial_optimization/combinatorial_optimization_model_constructor.py,sha256=M8xz6ct3wE1neeDThWRavIGKYa0oLdX3pjtjkv0i7tg,4879
62
+ classiq/applications/combinatorial_optimization/combinatorial_optimization_model_constructor.py,sha256=vBA7zkkdEIeBI7k1n9jzXNf6b7T7V5lD5LBumZ-cjNs,4877
63
63
  classiq/applications/combinatorial_optimization/examples/__init__.py,sha256=8KwhYLGMJLGZbndSK8VM4y7A4D6IoT3cS5cxiooxCI0,1750
64
64
  classiq/applications/finance/__init__.py,sha256=ikPvV7k4qjRkG5fa_MdDVvohXKB1w22sO-NsMx8vtQw,380
65
65
  classiq/applications/finance/finance_model_constructor.py,sha256=_cCTwXXQ3_3sS4CbJ74rdraHPtUzmlgQzDAb5JTvjbs,6513
@@ -93,7 +93,7 @@ classiq/execution/all_hardware_devices.py,sha256=J7LilVskLZFDSqNnIcaqN3_esbs9JgK
93
93
  classiq/execution/jobs.py,sha256=feJy2_UvGHEvVAFwL8bgxHwhXfkRKHgKwP7egTSfJSg,4937
94
94
  classiq/executor.py,sha256=IgBkF2VdvpsUwcZE1VODBTvfw3MY-uKBIWTsp2PSV-M,5405
95
95
  classiq/interface/__init__.py,sha256=cg7hD_XVu1_jJ1fgwmT0rMIoZHopNVeB8xtlmMx-E_A,83
96
- classiq/interface/_version.py,sha256=fSFeln7HR3gBwfdkhanE5mRcEwOF7weNkxuJ9aTI73g,197
96
+ classiq/interface/_version.py,sha256=CfVTf58ZA1AAPtgbqtm_mqx-oatME1xVJUBJaJ_Lfl4,197
97
97
  classiq/interface/analyzer/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
98
98
  classiq/interface/analyzer/analysis_params.py,sha256=87iaeFKDPuLc3VUQh_FGDRFMFtITU4OuULbuOfyHXJI,3051
99
99
  classiq/interface/analyzer/cytoscape_graph.py,sha256=xcGMwxwrRvBjZ_JXMwmahBOmRQ7ryR1zpW_zppUvMos,2118
@@ -102,11 +102,11 @@ classiq/interface/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5
102
102
  classiq/interface/applications/qsvm.py,sha256=auVnbGNM9XEjnZ3MZIzqQLYMTsTb7j0XiYMIhY7odPU,3642
103
103
  classiq/interface/ast_node.py,sha256=FrV8ssBt2oGj_cby9Txn8fT4VUa5m7byvOWb1dHr5xA,513
104
104
  classiq/interface/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
105
- classiq/interface/backend/backend_preferences.py,sha256=UiI8rPInDDesFFGX8NV1wFR0bDDazXGgej21yZyMAz0,9852
105
+ classiq/interface/backend/backend_preferences.py,sha256=dqCFwXlqbzT55JVjAaL6zSQBp2U_235cax3680ohFII,9870
106
106
  classiq/interface/backend/ionq/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
107
  classiq/interface/backend/ionq/ionq_quantum_program.py,sha256=6AmVz8u5LOUgGAWWx1LypkYQT_uVKZBYfcanFMmzOds,1584
108
108
  classiq/interface/backend/pydantic_backend.py,sha256=_mOuvRw92GtInfBjE9MJxzdSoAnKQtsGBn96jZXAS5o,1713
109
- classiq/interface/backend/quantum_backend_providers.py,sha256=Q2LXD8t6W73BNmHyq7HPwQZItWZRluBr_0plF6Q8fQg,5618
109
+ classiq/interface/backend/quantum_backend_providers.py,sha256=FgEl3xWXWOvEvVb9JC-RWfvBPB7DRJd83z-2sPvXfZw,5604
110
110
  classiq/interface/chemistry/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
111
  classiq/interface/chemistry/ansatz_library.py,sha256=3ki3uaV77cUxUxUzDbn3mVhjvMoKejJ5bIR1kXpBT1k,360
112
112
  classiq/interface/chemistry/elements.py,sha256=Yy8L80SBVgmuKQyW-GlZKzwTqnP1O9po-FGFmKMJLRA,1181
@@ -144,9 +144,8 @@ classiq/interface/execution/resource_estimator.py,sha256=YJRuk9lAkhpwqegjyOrxvEY
144
144
  classiq/interface/execution/result.py,sha256=6TduBhKFw8j7Yxcgn9d2MA0lm82sEcfY1yWIKUOdHro,139
145
145
  classiq/interface/executor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
146
146
  classiq/interface/executor/aws_execution_cost.py,sha256=OM-TI2oT7V6EafrwzpmlgJHfXCg0yIPff_UtYRh4GOE,2017
147
- classiq/interface/executor/error_mitigation.py,sha256=PjTfCddewZxVcZAnbGBrjpcslpgBgsc8I48PSVGc6iw,190
148
147
  classiq/interface/executor/estimation.py,sha256=lJEmN3Uj9bW0EY7JEZvzItwEybbBHSn7zYFz89L8fqo,389
149
- classiq/interface/executor/execution_preferences.py,sha256=EalKW3ehNvptQ_oyU1k_6zN2Q-iQqYB7Zu-eY1wzlhI,5643
148
+ classiq/interface/executor/execution_preferences.py,sha256=G1LCKh6eSkVSLTUGDX0MmQdTfGeEfk8IRbi8muL9B98,5321
150
149
  classiq/interface/executor/execution_request.py,sha256=SPJlQSBQ-DPQrd79z351Gsr8g1bVcqve5lRw5fZJES4,1935
151
150
  classiq/interface/executor/execution_result.py,sha256=nTFRaYJa2Y_0GZ0JPvaveCiCUlMuqXM0fKYsETeA4CI,2245
152
151
  classiq/interface/executor/iqae_result.py,sha256=zJKLeRmcVqbOmR5wHJYZ8EbIHXXQhOMa52wFtXqoOmA,562
@@ -169,10 +168,10 @@ classiq/interface/generator/amplitude_loading.py,sha256=QzMTI64fgLgsgxadMCXxyAwD
169
168
  classiq/interface/generator/ansatz_library.py,sha256=TR-UwyCliMMozfLVANWbB8aMcZ0tr_tFk4XhObCPwcc,1368
170
169
  classiq/interface/generator/application_apis/__init__.py,sha256=2SkP8lW7-ktcTUh1R-Zjl_Mrjm_MbGwWih-wt_fqsRQ,471
171
170
  classiq/interface/generator/application_apis/arithmetic_declarations.py,sha256=G-eNPwmzPkmT-gkNJcHaVHKP9HF8xXbYBQRyGST0oto,428
172
- classiq/interface/generator/application_apis/chemistry_declarations.py,sha256=X_Aka4jvr2o6hx-6A-kFPpSECv-fiKYIxo3m7qEBzUQ,6263
171
+ classiq/interface/generator/application_apis/chemistry_declarations.py,sha256=8YIfsk6a5lg5WhuFz9z7_DVEaU1j2IyAs7OZZuNDD3o,6281
173
172
  classiq/interface/generator/application_apis/combinatorial_optimization_declarations.py,sha256=E7gG2aPtArAi-C6WzK9m4wm5Baxm9kQdwrMCF4yurIc,1271
174
173
  classiq/interface/generator/application_apis/entangler_declarations.py,sha256=_wPWp0XPrADqAzXYXtsbozLdcIfZ6LehSOJjY8ucKOA,758
175
- classiq/interface/generator/application_apis/finance_declarations.py,sha256=y-khyNJRc8_M5SVHCe4RyfJrVMh_RRalWxRIlBz_pVs,3890
174
+ classiq/interface/generator/application_apis/finance_declarations.py,sha256=mNFXiWmL_U8CwAd3SXO_1e_H0OpOmtcx3YLgs8EIcZw,3903
176
175
  classiq/interface/generator/application_apis/qsvm_declarations.py,sha256=DejjQF8DZ1IJl0E0ZDaxjApEcJvHrkniCFJUru6wHYY,2167
177
176
  classiq/interface/generator/arith/__init__.py,sha256=3_jBZcaL8gQOiWx9lDj84K6rmJG2p_8MGCBw1aMtddg,135
178
177
  classiq/interface/generator/arith/argument_utils.py,sha256=-H0_YVxkXmpBgnVHkBYQs9Wu8P2qGSMGW5zMi89oO5M,1812
@@ -180,7 +179,7 @@ classiq/interface/generator/arith/arithmetic.py,sha256=jMr9ySgntc94jywWuckNQsumB
180
179
  classiq/interface/generator/arith/arithmetic_arg_type_validator.py,sha256=EEc87w42y9gkmGM7B5EOp05-z_1Jzudg2h0psIB5o3g,1180
181
180
  classiq/interface/generator/arith/arithmetic_expression_abc.py,sha256=Naj1AXHSkUWKpubu9IbTrD0B43zkFAJSu2E6R5Zzyzc,5412
182
181
  classiq/interface/generator/arith/arithmetic_expression_parser.py,sha256=nFRqEVo0I2rLT2MiVFiQ1asleRbfW9Nl0wq3v7Fvc9Q,5358
183
- classiq/interface/generator/arith/arithmetic_expression_validator.py,sha256=LNkh9f5Frpb-6XhrkSiy0wds7c1MdKGxvBxOD1kbznI,7376
182
+ classiq/interface/generator/arith/arithmetic_expression_validator.py,sha256=LpbU-mz7Eui6lM4O0b8TZt4kfTdnm4Dosua4FD27qpY,7518
184
183
  classiq/interface/generator/arith/arithmetic_operations.py,sha256=m9VFSQdC4Fda64USB51ELELOqRaMhXM5TUPycnoZddQ,1599
185
184
  classiq/interface/generator/arith/arithmetic_param_getters.py,sha256=uzCv2M5RvrpRReEykCZ6mP_MVbHAqCoiDcIB3C9u95c,13381
186
185
  classiq/interface/generator/arith/arithmetic_result_builder.py,sha256=qYfVIlMG6bnr8cq_qwrfRsbETBfnRrNWCLN-Dlav2LY,3957
@@ -228,8 +227,9 @@ classiq/interface/generator/expressions/expression.py,sha256=I6CJS2tHkeSjbbg5jpd
228
227
  classiq/interface/generator/expressions/expression_constants.py,sha256=edBxAdg-EE4IpPD7g6DnV-xulda8hhtH-7NgpnH4Kz8,590
229
228
  classiq/interface/generator/expressions/expression_types.py,sha256=BcqLJ_v0Rwm7gPLhdAnsZxPauFxdE6WHdiOGBVdpXtw,685
230
229
  classiq/interface/generator/expressions/handle_identifier.py,sha256=Vf1EsfzkW3tBk9S6QOLPn5yuLW1EChQ4Ja6OpLWPLFw,93
231
- classiq/interface/generator/expressions/qmod_qscalar_proxy.py,sha256=nT-BYkvPs1D-i3c-Ibsn-f2T5W4L8wlwF-pBTd08w1w,868
232
- classiq/interface/generator/expressions/qmod_sized_proxy.py,sha256=zI59YZx3TMwK4IXxE7t91KOBwDnyfLNA9_jXUbX83fM,148
230
+ classiq/interface/generator/expressions/qmod_qarray_proxy.py,sha256=6rujtgOqHkBkCtiwINnT63efYrE5uiWzgU0RRZiM7xo,2664
231
+ classiq/interface/generator/expressions/qmod_qscalar_proxy.py,sha256=Uvce2ql7QQTMALXv3AxgJ4sYLewnPZFvv-MBOxQsefU,1398
232
+ classiq/interface/generator/expressions/qmod_sized_proxy.py,sha256=-zNQfn8d4g-08JCG4Qkb2DV_Wwlj_QzZPukUcOXGZNQ,647
233
233
  classiq/interface/generator/expressions/qmod_struct_instance.py,sha256=9tadFw0PgygLvuskq7MQ9LjKg0DtVcsK7FhwNfD14eo,738
234
234
  classiq/interface/generator/expressions/sympy_supported_expressions.py,sha256=N2Z750rUYiY2hO7eo7pe_ybzYhgJxskUYAW6ahkUCgU,1480
235
235
  classiq/interface/generator/expressions/type_proxy.py,sha256=2TSxdmmhnz78jxzPTqGAAfuY-jWUkyXHsE5bXx1A_es,311
@@ -241,14 +241,13 @@ classiq/interface/generator/function_params.py,sha256=3asmMN4_WNXL8Hw9L0ZMj0S-Xy
241
241
  classiq/interface/generator/functions/__init__.py,sha256=z0VXGH2Q8dNhsbAfxFO1L8MqSL8wh9RnicIuoJgOyBI,868
242
242
  classiq/interface/generator/functions/builtins/__init__.py,sha256=R_N4ZEayC7FWVrbO78tI5fM_mmQoxA4C2wdN4GtSdDI,618
243
243
  classiq/interface/generator/functions/builtins/core_library/__init__.py,sha256=42Gn3X68tJyq8WLklvsB0SB6pl7bV76Rj60-_R37lpE,711
244
- classiq/interface/generator/functions/builtins/core_library/atomic_quantum_functions.py,sha256=XflKWmlR3kOcAB-YXg_Wa332-VILtJV7XdYxfjU1MFg,15933
245
- classiq/interface/generator/functions/builtins/core_library/chemistry_functions.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
246
- classiq/interface/generator/functions/builtins/core_library/exponentiation_functions.py,sha256=OsRIEnKLJCiN8CbGVmk5ZVXykITSeDk57R5jrHL4wFY,2573
244
+ classiq/interface/generator/functions/builtins/core_library/atomic_quantum_functions.py,sha256=QsbYwT35KStyyZqmw97uAAO5WizSyH-85Bnpbuhmda0,16054
245
+ classiq/interface/generator/functions/builtins/core_library/exponentiation_functions.py,sha256=xbtrrt5Uots4HW_5Y0eVLMiTiGohrz8HtaBCihpFAZk,2715
247
246
  classiq/interface/generator/functions/builtins/internal_operators.py,sha256=Bmtvq7nRHwQbXYpiXjwTyB_zq3v1-uopWnjaW96qooc,1916
248
- classiq/interface/generator/functions/builtins/open_lib_functions.py,sha256=qezH8xBBWt4B1rK9md1pHEFEkEzoldfIvAD9SPkeO8s,29339
247
+ classiq/interface/generator/functions/builtins/open_lib_functions.py,sha256=x8-gy9o49ZO1-ijUdnzjfbxvhrA-dsBLaQttY3Wg1xI,41220
249
248
  classiq/interface/generator/functions/builtins/quantum_operators.py,sha256=l6twE-rgD9fJ4g_Yb9oxKQN3tTvU0GBfg5xzC3uyFG8,881
250
249
  classiq/interface/generator/functions/classical_function_declaration.py,sha256=Gvm9b-F1kulKaEj6DpCex3DXhvsYc0etxSZaJ-sd2Ls,1018
251
- classiq/interface/generator/functions/classical_type.py,sha256=KttuPEkCsxCq2JD1ob1kzQhZooFWIfAC9Nh1_jjHwWc,7088
250
+ classiq/interface/generator/functions/classical_type.py,sha256=sKy4XWRUrdcw6AYdi99x7iv9KfbML1dCH3x__hEg_S0,7357
252
251
  classiq/interface/generator/functions/foreign_function_definition.py,sha256=TBVN7etxnlS_FoX7EzC3XJcw0dPC7BqUffyiT7QJbKU,4053
253
252
  classiq/interface/generator/functions/function_declaration.py,sha256=NKistwyWGIUaPkQ7PSVvH5TyBL2syp0rARXWn3um7C0,670
254
253
  classiq/interface/generator/functions/function_implementation.py,sha256=0JUn_qfwNR95Fzz1f2t9k0812mOr2Bwffuzms2SKH90,3698
@@ -283,7 +282,7 @@ classiq/interface/generator/model/classical_main_validator.py,sha256=Vflih0MEqoX
283
282
  classiq/interface/generator/model/constraints.py,sha256=LZy4TsmDROjsVwqkgvyhSLfxtkj7l07mruFJWD3Seto,1625
284
283
  classiq/interface/generator/model/model.py,sha256=dpO8fZwrJA3uJK-GwmuoZTxJ-AKfmPQfnmdlm1wXejU,8512
285
284
  classiq/interface/generator/model/preferences/__init__.py,sha256=KTNkU8hK3cpqzXvw_C1maxhBRTm1H53WUen1jJwZ0fQ,256
286
- classiq/interface/generator/model/preferences/preferences.py,sha256=rrLIngdlXEXJ4zcqgsdZTvTTgZ4-H2UaZCAlNXsY0v4,7929
285
+ classiq/interface/generator/model/preferences/preferences.py,sha256=t-cEL2l6jZg8uXfs4NN4qgHjNyXStqGgTi-86T1HTPM,7943
287
286
  classiq/interface/generator/model/preferences/randomness.py,sha256=nAI8Fu9NQ0uJxuwIQCUDspJKMCQVHBbvPNqCTtrBEos,248
288
287
  classiq/interface/generator/noise_properties.py,sha256=onvXd_FeBznwu1AcOpAkL7-fo9Dc6tPcAIiL5Qxs2Ok,425
289
288
  classiq/interface/generator/oracles/__init__.py,sha256=CB95SeU1BsqVWxQssKJYzB4DGje87UQAKGuyv-vkx7k,122
@@ -362,7 +361,7 @@ classiq/interface/model/call_synthesis_data.py,sha256=PkNMgshXA3458thV54y2cR-OoF
362
361
  classiq/interface/model/classical_if.py,sha256=dskHdHM-hfBvcwRvhEjZ3bdZ7Xn-uL6maIHWQXKOl_0,389
363
362
  classiq/interface/model/classical_parameter_declaration.py,sha256=UvoD7pYdi7DvMhJvgCZ-Z_RNIQYOlbSNEQSE4VqgW9A,238
364
363
  classiq/interface/model/common_model_types.py,sha256=-qwbP5DBsdmSuB8YF_OTu_aGvAUtOg_2hWCRboIyJic,518
365
- classiq/interface/model/control.py,sha256=M8Kym0XvAS63KUN90lhLrlS_87R2JUefL4QjiAo9U-w,470
364
+ classiq/interface/model/control.py,sha256=anOr6-8BYUCTizbe3HUHjrz192gbVRRoWHIYKdipV7k,3922
366
365
  classiq/interface/model/handle_binding.py,sha256=2T0U-Msekvbea61tBfR2f1rvwMkLWLPh1pCUte5EkEQ,947
367
366
  classiq/interface/model/inplace_binary_operation.py,sha256=G3uFxRWzH4mnZYXpXh44INu2vRcnt7totuD6R4m4cS0,1141
368
367
  classiq/interface/model/invert.py,sha256=Kg3AUbQPJW4xg6OEc_hQzouoSN18LVbaISQNK-IdLBY,256
@@ -377,16 +376,15 @@ classiq/interface/model/quantum_expressions/control_state.py,sha256=jp_L3MTDR04q
377
376
  classiq/interface/model/quantum_expressions/quantum_expression.py,sha256=qwSqK8-Xkoc9zytLgkgd5LWzciTPiCkO9eaYMD0zN1E,2828
378
377
  classiq/interface/model/quantum_function_call.py,sha256=Z68PFLR3Qy4F-u9-sMtpxDVZxXAU7oA3rzMgxsqmA1Q,14555
379
378
  classiq/interface/model/quantum_function_declaration.py,sha256=vHQpoibYsMPKzPwovwRU0cnOmu64cM30csEFKq5vryg,7904
380
- classiq/interface/model/quantum_if_operation.py,sha256=_OyF_I3RwYjBF7tCsPfqkvzZpr-5MHKN4T6uQqmgqr4,3376
381
379
  classiq/interface/model/quantum_lambda_function.py,sha256=4pm1gz3sWvfIQXSV8Mgrkpz1IuCsxYc3T4-SJpvDMB0,1777
382
380
  classiq/interface/model/quantum_register.py,sha256=nTefxxhLKFsF6zkxv5B6hJPwNL2CIE2mmFwtnVUWhCk,7998
383
381
  classiq/interface/model/quantum_statement.py,sha256=QHI27zXVvQI_ID_0AaNtp8u8xfHhaeunrkw7HJlVgY4,735
384
- classiq/interface/model/quantum_type.py,sha256=WSnAmI2tsfG1GlDcnlQm2yyIh-TkO3gjiQJIToDDKG4,5338
382
+ classiq/interface/model/quantum_type.py,sha256=ci1p2Ig-z757p6UEVFp5eTT0kPpThTtZ2xenA2Nb1Rk,5500
385
383
  classiq/interface/model/quantum_variable_declaration.py,sha256=ye5chA8t0uO_4OaHQPsysaQGWGcKpWPLwqdLeH7zx40,929
386
384
  classiq/interface/model/repeat.py,sha256=shgYyCRvtr4-59kZc87uURjqNjNLPZdWEQkNWrUIHek,370
387
385
  classiq/interface/model/resolvers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
388
- classiq/interface/model/resolvers/function_call_resolver.py,sha256=-6p8971rhKdSvAOAEMW-pldr16DoqcyCGiSeA-rW5lw,2386
389
- classiq/interface/model/statement_block.py,sha256=95U6D7t2ul5GyAFPKwJVb6Ek83fMjeLrB7kQJ8HYH9Y,1908
386
+ classiq/interface/model/resolvers/function_call_resolver.py,sha256=N_VIBQrZHao1VDWOt8FSwIL2s3mXxe-MOuTiJ8ATxAM,2194
387
+ classiq/interface/model/statement_block.py,sha256=BSTeRsnrc-HpIZ4trBYlOZ4ewMOOrLXpvQ3_V-nLhnQ,1765
390
388
  classiq/interface/model/validation_handle.py,sha256=MnGJ1LJS_aQG6WH0NusSHJjjrjQXQgy5F1Cfvnguiz8,1310
391
389
  classiq/interface/model/validations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
392
390
  classiq/interface/model/validations/handle_validation_base.py,sha256=UFlJEMhmXUNYLRy_Mje2UJNOBfX2WJCzYjFzlBcaYjw,2134
@@ -403,35 +401,35 @@ classiq/interface/server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
403
401
  classiq/interface/server/global_versions.py,sha256=Oh6K8kD3mVSYeEjHNHbmDUezcfbrhSLswuF0F_mE-8E,384
404
402
  classiq/interface/server/routes.py,sha256=kQBwyNwM7M5y8uTOWMulhClnlWr6sLCVB5xb5duuroo,3275
405
403
  classiq/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
406
- classiq/qmod/__init__.py,sha256=kP9e_foIA-r9WmFAeQ2KkEP_HNAyrfJyHWFUtrvU51c,840
404
+ classiq/qmod/__init__.py,sha256=kNU_-GRIgMc9pMglpE7mr272Ph9a44OweURdU02tyUY,920
407
405
  classiq/qmod/builtins/__init__.py,sha256=yY5NcYgy9T2812k8jro52_jpyNKTE2CWGI40ydnT0FI,727
408
406
  classiq/qmod/builtins/classical_execution_primitives.py,sha256=kWcC_3UMUiYuQ35_2DsdR4GJXALiPRHXPEgqjJiVTRk,2723
409
- classiq/qmod/builtins/classical_functions.py,sha256=TBH5g76hSAHygST33qGjorMws8z0y7DYLZL4fyWgBvI,2141
410
- classiq/qmod/builtins/functions.py,sha256=7VkOW5EYwvCeY8BeXqJX0U5S85KBhdmnS0G4wXve0YE,14511
411
- classiq/qmod/builtins/operations.py,sha256=ScOLrx7qPkUGaVYkLcCyhCKkJEO5Gj32uJbGXR9M810,8249
412
- classiq/qmod/builtins/structs.py,sha256=Cbo0COaLtT0ZEvv0YNDPCDuFowrAxSWoz0pi3r7RuP4,1983
407
+ classiq/qmod/builtins/classical_functions.py,sha256=sOMYm_vU24mAGgR63qmJ5eMTgpacXCRIhNEXa6pl0Q4,1914
408
+ classiq/qmod/builtins/functions.py,sha256=jxv9uN14tBtyfokZMmmrrJQzRLgqp45b9Cw9X3B1u6I,13589
409
+ classiq/qmod/builtins/operations.py,sha256=-DfyF1DB4CyAk_XJ7YY7ufJ__c_bbFbMDi-WIP5iuEI,10307
410
+ classiq/qmod/builtins/structs.py,sha256=pT8ntsW8k4nbcpG3Wf9uFwFvmKQdQ7of0bYB_WS11HY,2250
413
411
  classiq/qmod/cfunc.py,sha256=quwJdgYRgqI2C13SRrRunLi-Kuf7nCAk2-O2B46QtoY,1093
414
412
  classiq/qmod/classical_function.py,sha256=VEjx47jccSbbKuvicgqhwOYxrLO-pb_n0FWYcnCH-lk,1211
415
- classiq/qmod/declaration_inferrer.py,sha256=R1BHRbjUIIEUhsDWTwzK6mPS-XcfhFrgf4VJjDEyvxE,5132
413
+ classiq/qmod/declaration_inferrer.py,sha256=5Nqj5KbOgHlbGFkJVn9OYLn-4aw7_YkzKBeCHRKOk08,5698
416
414
  classiq/qmod/expression_query.py,sha256=Jv_aSgoV6tT7HeMtnDs3B40_HFtVEHckYbbMHma1ER0,908
417
415
  classiq/qmod/model_state_container.py,sha256=yZT2IdAz-CUwXsd-DReLLKEZCXiicHb3qjh18mKREZg,406
418
416
  classiq/qmod/native/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
419
- classiq/qmod/native/expression_to_qmod.py,sha256=eF1xs_qoqAATVuyiLdm8GEB9o2e2KunT_dyf4GCRLLM,7015
420
- classiq/qmod/native/pretty_printer.py,sha256=eSgXP0lfdbL56GGvDRHFfCHAIwsagStAAOl-HldWB0w,13807
417
+ classiq/qmod/native/expression_to_qmod.py,sha256=w4U8ZONm4E90168Zt7QAkKiwCC8oKzPPASXxWA4SvoM,7011
418
+ classiq/qmod/native/pretty_printer.py,sha256=ss0KSPWEIvpWlEiAXyU4RGQS6xhCudqvFl9w24VWIE0,13546
421
419
  classiq/qmod/qfunc.py,sha256=G320Fc-4CxzuV7muho2tPro2EIBLgBKmZStkSIAWzyI,691
422
- classiq/qmod/qmod_constant.py,sha256=aIfdcSpI7HEW6CpNRvW0dUFxEtGn9ziAnzmDD0sbCBk,3310
423
- classiq/qmod/qmod_parameter.py,sha256=ReMgC_b4JYCHTqjXlIMjkTuwRdT4FU08CPuT-UWDhTQ,3313
424
- classiq/qmod/qmod_struct.py,sha256=BvP7L6_A0rD3TEGEosnAoQwZ-IyOxyArmDDDg8nP8QQ,1078
425
- classiq/qmod/qmod_variable.py,sha256=ejEBKvQneJg8pBihdwkQWfoSyPdZZ-1rguaZazwPUo8,13632
426
- classiq/qmod/quantum_callable.py,sha256=N6lVVUISmLsTjSCfW_iawt1yedrK4q6yXxqRQKpfWtA,2126
427
- classiq/qmod/quantum_expandable.py,sha256=7JtKrQxjONlBdXbRNS19bA2flE5COoNvmfC3GPRyiRE,10565
428
- classiq/qmod/quantum_function.py,sha256=MyCPZ2QE6ReO_DgV1w_FutlIlAE4ITjYsDtASIDHUYY,7086
429
- classiq/qmod/symbolic.py,sha256=iC0KAxRfZhJPB02-qQv6PZZliqEwtzigctN8HDdJ_kE,7287
430
- classiq/qmod/symbolic_expr.py,sha256=LXiao6PmT9cUVCZZLxERpwRFIxOP_9C2UCTVCiapXzI,5476
431
- classiq/qmod/symbolic_type.py,sha256=huNzpaEBjBXO3_jMRkoiHVd0HxK40XUchyq4X4hj57s,230
432
- classiq/qmod/utilities.py,sha256=RACVYvw5nai6yxXJ4FdcWebPdnEG_AiCGTFSffqrbOQ,637
420
+ classiq/qmod/qmod_constant.py,sha256=zBHgYax4DpPeDJU5x6-1-zMTopV9g0F--2zLV0mjwRQ,3310
421
+ classiq/qmod/qmod_parameter.py,sha256=WrGhwJ9bFwORlkWLYnP0oZK7wTWrlAU9tmMAKTHrIrc,3561
422
+ classiq/qmod/qmod_struct.py,sha256=mzfF8M5qNhcqKVPCuGFKWx4nzDmH_aewGyUgGhN_8H4,1078
423
+ classiq/qmod/qmod_variable.py,sha256=lffhAQ7V36XV6VMKDMgIHtE2CWxd_xU6LuMTCJZHdR4,14074
424
+ classiq/qmod/quantum_callable.py,sha256=fNlRTBE9Z8egQdPn2R6XxpWdtW3MLXIzy2UcMvv02Gw,2323
425
+ classiq/qmod/quantum_expandable.py,sha256=CldUnAE2jvSbjiaigQpF2NEbPCUUV1Q3IfN8BTn4HJw,10820
426
+ classiq/qmod/quantum_function.py,sha256=WTaJdcpvd4LfYLANh2Dnb-1gQFOrCFcE8-440sL5QP4,8065
427
+ classiq/qmod/symbolic.py,sha256=B1gA_MgYJOcg0w1fW4putH8Ig9UDt7msj4ZQdHar52A,7317
428
+ classiq/qmod/symbolic_expr.py,sha256=7SKYR977tooR4ZZC7pPE7kCJNxi2diLlnu10pNnyYnk,5480
429
+ classiq/qmod/symbolic_type.py,sha256=whMy3Uw4iE2SOVfHeyfTpDJ3BH6Rxlhk492ij-4QRU4,169
430
+ classiq/qmod/utilities.py,sha256=Mu4w-UFdtc4N5A3bvIj6wWtIJckyL_MEYVbhGF0xkmw,1527
433
431
  classiq/qmod/write_qmod.py,sha256=2LK5CdlxRzJhM5p2EOwWACGkg2L9IhHkkOFtXFH1fOo,1222
434
432
  classiq/synthesis.py,sha256=NTrzED_UCWMO4s8iZcqhXIvAF7p6kQVuMvtLj3u5X88,2166
435
- classiq-0.39.0.dist-info/METADATA,sha256=roXs_RrgQSA9CZ3Lded-iMddf7_CzxBbl2cHVoLv3ok,3044
436
- classiq-0.39.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
437
- classiq-0.39.0.dist-info/RECORD,,
433
+ classiq-0.40.0.dist-info/METADATA,sha256=xFJmtPQOcL9GYU023MNSgSV5mClzhVoFwiS11zi_f94,3044
434
+ classiq-0.40.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
435
+ classiq-0.40.0.dist-info/RECORD,,
@@ -1,6 +0,0 @@
1
- from classiq._internals.enum_utils import StrEnum
2
-
3
-
4
- class ErrorMitigationMethod(StrEnum):
5
- COMPLETE_CALIBRATION = "Complete Calibration"
6
- TENSORED_CALIBRATION = "Tensored Calibration"
@@ -1,94 +0,0 @@
1
- from typing import TYPE_CHECKING, Optional
2
-
3
- import pydantic
4
- from sympy import Equality
5
- from sympy.core.numbers import Integer
6
-
7
- from classiq.interface.generator.expressions.expression import Expression
8
- from classiq.interface.generator.expressions.qmod_qscalar_proxy import QmodQNumProxy
9
- from classiq.interface.model.quantum_expressions.control_state import (
10
- min_bit_length,
11
- to_twos_complement,
12
- )
13
- from classiq.interface.model.quantum_expressions.quantum_expression import (
14
- QuantumExpressionOperation,
15
- )
16
-
17
- from classiq.exceptions import ClassiqValueError
18
-
19
- if TYPE_CHECKING:
20
- from classiq.interface.model.statement_block import StatementBlock
21
-
22
- QUANTUM_IF_INOUT_NAME = "ctrl"
23
- QUANTUM_IF_CONDITION_ARG_ERROR_MESSAGE_FORMAT = (
24
- "quantum_if condition must be of the form '<quantum-variable> == "
25
- "<classical-integer-expression>', but condition's {}-hand side was {!r}"
26
- )
27
-
28
-
29
- class QuantumIf(QuantumExpressionOperation):
30
- then: "StatementBlock"
31
- _ctrl: Optional[QmodQNumProxy] = pydantic.PrivateAttr(
32
- default=None,
33
- )
34
- _ctrl_val: Optional[int] = pydantic.PrivateAttr(
35
- default=None,
36
- )
37
-
38
- @property
39
- def condition(self) -> Expression:
40
- return self.expression
41
-
42
- @property
43
- def ctrl(self) -> QmodQNumProxy:
44
- assert self._ctrl is not None
45
- return self._ctrl
46
-
47
- @property
48
- def ctrl_val(self) -> int:
49
- assert self._ctrl_val is not None
50
- return self._ctrl_val
51
-
52
- def resolve_condition(self) -> None:
53
- condition = self.condition.value.value
54
- if not isinstance(condition, Equality):
55
- raise ClassiqValueError(
56
- f"quantum_if condition must be an equality, was {str(condition)!r}"
57
- )
58
- ctrl, ctrl_val = condition.args
59
- if isinstance(ctrl, Integer) and isinstance(ctrl_val, QmodQNumProxy):
60
- ctrl, ctrl_val = ctrl_val, ctrl
61
- if not isinstance(ctrl, QmodQNumProxy):
62
- raise ClassiqValueError(
63
- QUANTUM_IF_CONDITION_ARG_ERROR_MESSAGE_FORMAT.format("left", str(ctrl))
64
- )
65
- if not isinstance(ctrl_val, Integer):
66
- raise ClassiqValueError(
67
- QUANTUM_IF_CONDITION_ARG_ERROR_MESSAGE_FORMAT.format(
68
- "right", str(ctrl_val)
69
- )
70
- )
71
- self._ctrl, self._ctrl_val = ctrl, int(ctrl_val)
72
-
73
- @property
74
- def ctrl_state(self) -> str:
75
- is_signed = self.ctrl.is_signed
76
- fraction_places = self.ctrl.fraction_digits
77
- ctrl_size = len(self.ctrl)
78
- if not is_signed and self.ctrl_val < 0:
79
- raise ClassiqValueError(
80
- f"Variable {str(self.ctrl)!r} is not signed but control value "
81
- f"{self.ctrl_val} is negative"
82
- )
83
- required_qubits = min_bit_length(self.ctrl_val, is_signed)
84
- if ctrl_size < required_qubits:
85
- raise ClassiqValueError(
86
- f"Variable {str(self.ctrl)!r} has {ctrl_size} qubits but control value "
87
- f"{str(self.ctrl_val)!r} requires at least {required_qubits} qubits"
88
- )
89
- if fraction_places != 0:
90
- raise ClassiqValueError(
91
- f"quantum-if on a non-integer quantum variable {str(self.ctrl)!r} is "
92
- f"not supported at the moment"
93
- )
94
- return to_twos_complement(self.ctrl_val, ctrl_size, is_signed)