এই প্রকল্পটি আর্কাইভ করা হয়েছে

Qiskit Finance আর রক্ষণাবেক্ষণ করা হয় না এবং এই ডকুমেন্টেশনও আর হালনাগাদ করা হয় না। এটি কেবল তথ্যসূত্র হিসেবে অনলাইনে রাখা হয়েছে, এবং এতে বর্ণিত কোড Qiskit-এর বর্তমান সংস্করণের সঙ্গে কাজ না করতে পারে। আরও জানতে প্রকল্পের রিপোজিটরি দেখুন।

Source code for qiskit_finance.circuit.library.probability_distributions.uniform

# This code is part of a Qiskit project.
#
# (C) Copyright IBM 2017, 2023.
#
# This code is licensed under the Apache License, Version 2.0. You may
# obtain a copy of this license in the LICENSE.txt file in the root directory
# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
#
# Any modifications or derivative works of this code must retain this
# copyright notice, and modified files need to carry a notice indicating
# that they have been altered from the originals.

"""The uniform probability distribution circuit."""

from qiskit.circuit import QuantumCircuit


[docs]class UniformDistribution(QuantumCircuit): r"""A circuit to encode a discretized uniform distribution in qubit amplitudes. This simply corresponds to applying Hadamard gates on all qubits. The probability density function of the discretized uniform distribution on :math:`N` values is .. math:: \mathbb{P}(X = x) = \frac{1}{N}. This circuit considers :math:`N = 2^n`, where :math:`n =` ``num_qubits`` and prepares the state .. math:: \mathcal{P}_X |0\rangle^{\otimes n} = \frac{1}{\sqrt{2^n}} \sum_{x=0}^{2^n - 1} |x\rangle Examples: >>> from qiskit_finance.circuit.library.probability_distributions import UniformDistribution >>> circuit = UniformDistribution(3) >>> circuit.decompose().draw() ┌───┐ q_0: ┤ H ├ ├───┤ q_1: ┤ H ├ ├───┤ q_2: ┤ H ├ └───┘ """ def __init__(self, num_qubits: int, name: str = "P(X)") -> None: """ Args: num_qubits: The number of qubits in the circuit, the distribution is uniform over ``2 ** num_qubits`` values. name: The name of the circuit. """ inner = QuantumCircuit(num_qubits, name=name) inner.h(inner.qubits) super().__init__(num_qubits, name=name) self.append(inner.to_gate(), inner.qubits)