def test_equality(): noise_1 = Noise(qubit_count=1, ascii_symbols=["foo"]) noise_2 = Noise(qubit_count=1, ascii_symbols=["foo"]) other_noise = Noise.AmplitudeDamping(gamma=0.5) non_noise = "non noise" assert noise_1 == noise_2 assert noise_1 is not noise_2 assert noise_1 != other_noise assert noise_1 != non_noise
def amplitude_damping(target: QubitSetInput, gamma: float) -> Iterable[Instruction]: """Registers this function into the circuit class. Args: target (Qubit, int, or iterable of Qubit / int): Target qubit(s). gamma (float): decaying rate of the amplitude damping channel. Returns: Iterable[Instruction]: `Iterable` of AmplitudeDamping instructions. Examples: >>> circ = Circuit().amplitude_damping(0, gamma=0.1) """ return [ Instruction(Noise.AmplitudeDamping(gamma=gamma), target=qubit) for qubit in QubitSet(target) ]