diff --git a/scaluq/gate/gate_pauli.hpp b/scaluq/gate/gate_pauli.hpp index d861ac24..3b9c7d94 100644 --- a/scaluq/gate/gate_pauli.hpp +++ b/scaluq/gate/gate_pauli.hpp @@ -29,8 +29,13 @@ class PauliGateImpl : public GateBase { std::string to_string(const std::string& indent) const override { std::ostringstream ss; + auto controls = control_qubit_list(); ss << indent << "Gate Type: Pauli\n"; - ss << _pauli.get_pauli_string(); + ss << indent << " Control Qubits: {"; + for (std::uint32_t i = 0; i < controls.size(); ++i) + ss << controls[i] << (i == controls.size() - 1 ? "" : ", "); + ss << "}\n"; + ss << indent << " Pauli Operator: \"" << _pauli.get_pauli_string() << "\""; return ss.str(); } }; @@ -70,9 +75,14 @@ class PauliRotationGateImpl : public GateBase { std::string to_string(const std::string& indent) const override { std::ostringstream ss; + auto controls = control_qubit_list(); ss << indent << "Gate Type: PauliRotation\n"; ss << indent << " Angle: " << _angle << "\n"; - ss << _pauli.get_pauli_string(); + ss << indent << " Control Qubits: {"; + for (std::uint32_t i = 0; i < controls.size(); ++i) + ss << controls[i] << (i == controls.size() - 1 ? "" : ", "); + ss << "}\n"; + ss << indent << " Pauli Operator: \"" << _pauli.get_pauli_string() << "\""; return ss.str(); } }; diff --git a/scaluq/gate/param_gate_pauli.hpp b/scaluq/gate/param_gate_pauli.hpp index 03202a57..985378d1 100644 --- a/scaluq/gate/param_gate_pauli.hpp +++ b/scaluq/gate/param_gate_pauli.hpp @@ -47,8 +47,13 @@ class ParamPauliRotationGateImpl : public ParamGateBase { std::string to_string(const std::string& indent) const override { std::ostringstream ss; + auto controls = control_qubit_list(); ss << indent << "Gate Type: ParamPauliRotation\n"; - ss << _pauli.get_pauli_string(); + ss << indent << " Control Qubits: {"; + for (std::uint32_t i = 0; i < controls.size(); ++i) + ss << controls[i] << (i == controls.size() - 1 ? "" : ", "); + ss << "}\n"; + ss << indent << " Pauli Operator: \"" << _pauli.get_pauli_string() << "\""; return ss.str(); } };