in src/braket/default_simulator/observables.py [0:0]
def __init__(self, factors: List[Observable]):
"""
Args:
factors (List[Observable]): The observables to combine together
into a tensor product
"""
if len(factors) < 2:
raise ValueError("A tensor product should have at least 2 factors")
self._targets = tuple(target for observable in factors for target in observable.targets)
self._measured_qubits = tuple(
qubit for observable in factors for qubit in observable.measured_qubits
)
self._eigenvalues = TensorProduct._compute_eigenvalues(factors, self._measured_qubits)
self._factors = tuple(factors)