You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/source/infras.rst
+26-1
Original file line number
Diff line number
Diff line change
@@ -155,4 +155,29 @@ Also, note how ``^`` is overloaded as ``tn.connect`` to connect edges between di
155
155
The convention to define the ``QuOperator`` is firstly giving ``out_edges`` (left index or row index of the matrix) and then giving ``in_edges`` (right index or column index of the matrix). The edges list contains edge objects from the TensorNetwork library.
156
156
157
157
Such QuOperator/QuVector abstraction support various calculations only possible on matrix/vectors, such as matmul (``@``), adjoint (``.adjoint()``), scalar multiplication (``*``), tensor product (``|``), and partial trace (``.partial_trace(subsystems_to_trace_out)``).
158
-
To extract the matrix information of these objects, we can use ``.eval()`` or ``.eval_matrix()``, the former keeps the shape information of the tensor network while the latter gives the matrix representation with shape rank 2.
158
+
To extract the matrix information of these objects, we can use ``.eval()`` or ``.eval_matrix()``, the former keeps the shape information of the tensor network while the latter gives the matrix representation with shape rank 2.
From lower level to higher level, a view of API layers invoking QPU calls
165
+
166
+
- Vendor specific implementation of functional API in, e.g., :py:mod:`tensorcircuit.cloud.tencent`
167
+
168
+
- Provider agnostic functional lower level API for task/device management in :py:mod:`tensorcircuit.cloud.apis`
169
+
170
+
- Object oriented abstraction for Provider/Device/Task in :py:mod:`tensorcircuit.cloud.abstraction`
171
+
172
+
- Unified batch submission interface as standarized in :py:meth:`tensorcircuit.cloud.wrapper.batch_submit_template`
173
+
174
+
- Numerical and experimental unified all-in-one interface as :py:meth:`tensorcircuit.cloud.wrapper.batch_expectation_ps`
175
+
176
+
- Application level code with QPU calls built directly on ``batch_expectation_ps`` or more fancy algorithms can be built on ``batch_submit_func`` so that these algorithms can be reused as long as one function ``batch_submit_func`` is defined for a given vendor (cheaper than defining a new provider from lower level).
177
+
178
+
179
+
.. Note::
180
+
181
+
For compiler, error mitigation and results post-processing parts, they can be carefully designed to decouple with the QPU calls,
182
+
so they are separately implemented in :py:mod:`tensorcircuit.compiler` and :py:mod:`tensorcircuit.results`,
183
+
and they can be independently useful even without tc's cloud access.
0 commit comments