Visió general

The qilisdk.noise module contains classes that represent different types of noise in quantum systems. These noise models can be integrated into quantum simulations to account for real-world imperfections and decoherence effects. A NoiseModel can contains various types of noise, each of which is then applied during simulation.

Backend

Models de soroll compatibles

QiliSim

CudaBackend

QutipBackend

Ús

Els passos de soroll s’afegeixen a un NoiseModel, que s’ha d’incloure en crear un backend. Per exemple, per crear un circuit senzill i simular-lo amb un backend CUDA que contingui un model de soroll d’inversió de bit:

from qilisdk.noise import NoiseModel, BitFlip
from qilisdk.digital import X, Circuit
from qilisdk.functionals import DigitalPropagation
from qilisdk.readout import Readout
from qilisdk.backends import CudaBackend

# Define the random circuit and functional
c = Circuit(nqubits=2)
c.add(X(0))
c.add(X(1))
functional = DigitalPropagation(c)

# Apply bit-flip noise with 50% probability to X gates on qubit 1
nm = NoiseModel()
nm.add(BitFlip(probability=0.5), gate=X, qubits=[1])

# Execute with CUDA backend
backend_cuda = CudaBackend(noise_model=nm)
res = backend_cuda.execute(functional, readout=Readout().with_sampling(nshots=1000))
print(res)

Resum dels tipus de soroll

Alguns dels passos de soroll disponibles a QiliSDK es poden utilitzar tant per a circuits digitals com per a programes analògics, mentre que d’altres són específics d’un o de l’altre:

Tipus de soroll

Digital Propogation

Evolució analògica

KrausChannel

LindbladGenerator

PauliChannel

BitFlip

PhaseFlip

Depolarizing

AmplitudeDamping

Dephasing

GaussianPerturbation

OffsetPerturbation

ReadoutAssignment