






import qiskit







def 					SCREAMING_SNAKE_CASE    (			snake_case_ :							int					,  snake_case_ :							int       ):
	snake_case__			:				Optional[Any]       =  qiskit.Aer.get_backend("aer_simulator"       )

	snake_case__			:				List[Any]       =  qiskit.QuantumCircuit(4					,  2       )
	# encode inputs in qubits 0 and 1
	if bita == 1:
		qc_ha.x(0       )
	if bita == 1:
		qc_ha.x(1       )
	qc_ha.barrier()

	# use cnots to write XOR of the inputs on qubit2
	qc_ha.cx(0					,  2       )
	qc_ha.cx(1					,  2       )

	# use ccx / toffoli gate to write AND of the inputs on qubit3
	qc_ha.ccx(0					,  1					,  3       )
	qc_ha.barrier()

	# extract outputs
	qc_ha.measure(2					,  0       )  # extract XOR value
	qc_ha.measure(3					,  1       )  # extract AND value

	# Execute the circuit on the qasm simulator
	snake_case__			:				Any       =  qiskit.execute(snake_case_					,  snake_case_					,  shots=1000       )

	# Return the histogram data of the results of the experiment
	return job.result().get_counts(snake_case_       )


if __name__ == "__main__":
	__lowerCamelCase :      Dict										=				half_adder(1, 1)
	print(f"Half Adder Output Qubit Counts: {counts}")











__lowerCamelCase :      Optional[int]										=				"""Tobias Carryer"""

from time import time



class 							SCREAMING_SNAKE_CASE__						:





					"""simple docstring"""






					def __init__( self					:  List[Any]							,		__A					:  List[Any]							,		__A					:  Optional[int]							,		__A					:  List[str]							,		__A					:  Dict=int(time()	)	):  # noqa: B008
						snake_case__			:				List[Any]       =  multiplier
						snake_case__			:				Optional[int]       =  increment
						snake_case__			:				Optional[int]       =  modulo
						snake_case__			:				Union[str, Any]       =  seed






					def 	_lowercase					( self					:  str	):
						snake_case__			:				Union[str, Any]       =  (self.multiplier * self.seed + self.increment) % self.modulo
						return self.seed


if __name__ == "__main__":
	# Show the LCG in action.
	__lowerCamelCase :      int										=				LinearCongruentialGenerator(166_4525, 10_1390_4223, 2 << 31)
	while True:
		print(lcg.next_number())



