Skip to content

Commit

Permalink
fix output of pauli
Browse files Browse the repository at this point in the history
  • Loading branch information
gandalfr-KY committed Sep 9, 2024
1 parent 1c2153a commit f818327
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 3 deletions.
14 changes: 12 additions & 2 deletions scaluq/gate/gate_pauli.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -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();
}
};
Expand Down Expand Up @@ -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();
}
};
Expand Down
7 changes: 6 additions & 1 deletion scaluq/gate/param_gate_pauli.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -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();
}
};
Expand Down

0 comments on commit f818327

Please sign in to comment.