Evaluating quantum computing circuits in view of the resource costs of a quantum algorithm
AssigneeMicrosoft Technology Licensing, LLC
InventorsThomas Haener, Martin H. Roetteler, Krysta M. Svore
Life of this patent
Estimating the term…
Abstract
Methods for evaluating quantum computing circuits in view of the resource costs of a quantum algorithm are described. A processor-implemented method for performing an evaluation of a polynomial corresponding to an input is provided. The method includes determining a polynomial interpolation for a set of sub-intervals corresponding to the input. The method further includes constructing a quantum circuit for performing, in parallel, polynomial evaluation corresponding to each of the set of sub-intervals.
Claims20
A processor-implemented method for compiling a quantum circuit for execution by a quantum processor, wherein the quantum circuit is for performing an evaluation of a piecewise smooth function, the method comprising:
- receiving an input comprising the piecewise smooth function and a domain;
- partitioning the domain of the piecewise smooth function into a set of sub-intervals by determining whether an input value of the piecewise smooth function falls into any of the set of sub-intervals, wherein the partitioning is performed to reduce an approximation error associated with a polynomial evaluation of the piecewise smooth function;
- selecting whether to apply a first method or a second method for each of the set of sub-intervals;
- with respect to a first subset of the set of sub-intervals for which the first method is selected:
- determining a polynomial interpolation for the first subset of the set of sub-intervals corresponding to the input,
- constructing a quantum circuit for performing, in parallel, a polynomial evaluation of a function for each of the first subset of the set of sub-intervals, wherein:
- the quantum circuit includes a label register having a label indicative of at least one of the first subset of the set of sub-intervals,
- the polynomial evaluation is performed in a nested fashion, and
- the polynomial evaluation is performed by applying a gate to load a next set of coefficients for a next sub-interval into a quantum register, while multiplying a previous set of coefficients for a current sub-interval by a variable to produce an output, and then adding the next set of coefficients to the output, and
- outputting the quantum circuit to the quantum processor for execution by the quantum processor, wherein the quantum circuit comprises a label gate for initializing the label register and quantum gates;
- and
- with respect to the second subset of the set of sub-intervals for which the second method is selected, applying Newton's method, wherein the second subset of the set of sub-intervals is different from the first subset of the set of sub-intervals.
A processor-implemented method for compiling a quantum circuit for execution by a quantum processor, wherein the quantum circuit is for performing an evaluation of a piecewise smooth function, the method comprising:
- receiving an input comprising the piecewise smooth function and a domain;
- partitioning the domain of the piecewise smooth function into a set of sub-intervals by determining whether an input value of the piecewise smooth function falls into any of the set of sub-intervals;
- selecting whether to apply a first method or a second method for each of the set of sub-intervals;
- with respect to a first subset of the set of sub-intervals for which the first method is selected:
- determining a polynomial interpolation for the first subset of the set of sub-intervals corresponding to the input,
- constructing a quantum circuit for performing, in parallel, a polynomial evaluation of a function for each of the first subset of the set of sub-intervals, wherein:
- the quantum circuit includes a label register having a label indicative of at least one of the first subset of the set of sub-intervals,
- the polynomial evaluation is performed in a nested fashion, and
- the polynomial evaluation is performed by applying a gate to load a next set of coefficients for a next sub-interval into a quantum register, while multiplying a previous set of coefficients for a current sub-interval by a variable to produce an output, and then adding the next set of coefficients to the output, and
- outputting the quantum circuit to the quantum processor for execution by the quantum processor, wherein the quantum circuit comprises a label gate for initializing the label register and quantum gates;
- and
- with respect to the second subset of the set of sub-intervals for which the second method is selected, applying Newton's method, wherein the second subset of the set of sub-intervals is different from the first subset of the set of sub-intervals.
A processor-implemented method for compiling a quantum circuit for execution by a quantum processor, wherein the quantum circuit is for performing an evaluation of a piecewise smooth function, the method comprising:
- receiving an input comprising the piecewise smooth function and a domain;
- partitioning the domain of the piecewise smooth function into a set of sub-intervals by determining whether an input value of the piecewise smooth function falls into any of the set of sub-intervals, wherein the partitioning is performed to reduce an approximation error associated with a polynomial evaluation of the piecewise smooth function;
- selecting whether to apply a first method or a second method for each of the set of sub-intervals;
- with respect to a first subset of the set of sub-intervals for which the first method is selected:
- determining a polynomial interpolation for the first subset of the set of sub-intervals corresponding to the input,
- constructing a quantum circuit for performing, in parallel, a polynomial evaluation of a function for each of the first subset of the set of sub-intervals, wherein:
- the quantum circuit includes a label register having a label indicative of at least one of the first subset of the set of sub-intervals,
- the polynomial evaluation is performed in a nested fashion, and
- the polynomial evaluation is performed by applying a gate to load a next set of coefficients for a next sub-interval into a quantum register, while multiplying a previous set of coefficients for a current sub-interval by a variable to produce an output, and then adding the next set of coefficients to the output, and
- outputting the quantum circuit to the quantum processor for execution by the quantum processor, wherein the quantum circuit comprises a label gate for initializing the label register and quantum gates;
- and
- with respect to the second subset of the set of sub-intervals for which the second method is selected, applying Newton's method, wherein the second subset of the set of sub-intervals is different from the first subset of the set of sub-intervals, and wherein the Newton's method comprises:
- (1) determining a number of rounds for the Newton's method, and (2) determining an initial constant for the Newton's method.
Dependencies are inferred from the claim text.