访问模拟器或跟踪模拟器的调用图

Access Call Graph of Simulator or Trace Simulator

有没有办法访问模拟器/跟踪模拟器的调用图?如果能够按顺序列出应用于每个量子位的门的完整列表,那就太好了。

对此没有具体的 API,但向模拟器添加挂钩应该很简单。源代码现在可在 https://github.com/microsoft/qsharp-runtime 获得。

您可以采用两种方法:

  • 修改操作实现以在每次调用时记录门和量子位 ID。
  • SimulatorBase 中的 onOperationStart 事件添加处理程序,查找您感兴趣的门并记录门和量子位 ID。

第一个可能更乏味,但更简单。如果您使用第二种方法,ICallable.Name 属性 会有所帮助。