code: def ucc_circuit(theta):
      
      generator = sX(0) * sY(1)
      initial_prog = Program().inst(X(1), X(0))
  
      # compiled program
      program = initial_prog + exponentiate(float(theta) * generator)  # float is required because pyquil has weird casting behavior
      return program
docs: Implements
  
      exp(-i theta X_{0}Y_{1})
  
      :param theta: rotation parameter
      :return: pyquil.Program