class_docstr: Tests for the functions involved in obtaining post-rotations necessary in the measurement
  optimization schemes implemented in :mod:`grouping`.
class_docstr_tok: ["Tests","for","the","functions","involved","in","obtaining","post-rotations","necessary","in","the","measurement","optimization","schemes","implemented","in",":","mod",":","`","grouping","`","."]
docstr: Checks whether the two input gates are identical up to a certain threshold in their
  parameters.
  
  Arguments:
      gate_1 (Union[RX, RY, RZ]): the first single-qubit rotation gate
      gate_2 (Union[RX, RY, RZ]): the second single-qubit rotation gate
  
  Keyword arguments:
      param_tol (float): the absolute tolerance for considering whether two gates parameter
          values are the same
  
  Returns:
      bool: whether the input rotation gates are identical up to the parameter tolerance
docstr_tok: ["Checks","whether","the","two","input","gates","are","identical","up","to","a","certain","threshold","in","their","parameters",".","Arguments",":","gate_1","(","Union","[","RX",",","RY",",","RZ","]",")",":","the","first","single-qubit","rotation","gate","gate_2","(","Union","[","RX",",","RY",",","RZ","]",")",":","the","second","single-qubit","rotation","gate","Keyword","arguments",":","param_tol","(","float",")",":","the","absolute","tolerance","for","considering","whether","two","gates","parameter","values","are","the","same","Returns",":","bool",":","whether","the","input","rotation","gates","are","identical","up","to","the","parameter","tolerance"]
code: def are_identical_rotation_gates(
      self, gate_1, gate_2, param_tol=1e-6
  ):
      """Checks whether the two input gates are identical up to a certain threshold in their
      parameters.
  
      Arguments:
          gate_1 (Union[RX, RY, RZ]): the first single-qubit rotation gate
          gate_2 (Union[RX, RY, RZ]): the second single-qubit rotation gate
  
      Keyword arguments:
          param_tol (float): the absolute tolerance for considering whether two gates parameter
              values are the same
  
      Returns:
          bool: whether the input rotation gates are identical up to the parameter tolerance
  
      """
  
      return (
          gate_1.wires == gate_2.wires
          and np.allclose(
              gate_1.parameters,
              gate_2.parameters,
              atol=param_tol,
              rtol=0,
          )
          and gate_1.name == gate_2.name
      )
  
imports: import numpy
  import pytest
  import pennylane
  from pennylane import RX, RY, U3, Hadamard, Hamiltonian, Hermitian, Identity, PauliX, PauliY, PauliZ, is_commuting
  from pennylane.operation import Tensor
  from pennylane.pauli import are_identical_pauli_words, are_pauli_words_qwc, binary_to_pauli, diagonalize_pauli_word, diagonalize_qwc_pauli_words, is_pauli_word, is_qwc, observables_to_binary_matrix, partition_pauli_group, pauli_group, pauli_mult, pauli_mult_with_phase, pauli_to_binary, pauli_word_to_matrix, pauli_word_to_string, qwc_complement_adj_matrix, qwc_rotation, simplify, string_to_pauli_word
label_desc: Use image node_id 1 for calling the TestMeasurementTransformations obj's underlying member method code with example usage: obj.are_identical_rotation_gates(gate_1, gate_2, param_tol) and returns: unknown