在 (Microsoft) Liquid 中实施 Steane [[7, 1, 3]] 代码
Implementing Steane [[7, 1, 3]] Code In (Microsoft) Liquid
我正在尝试在 Liquid 中实现一些量子纠错码(如果需要请更正标签),我想我应该从复制用户手册中讨论的 Steane7 class 开始在第 55 页(pdf 的第 56 页)。不过,我对提供的代码有几个问题。
- 文件的整体结构我不清楚。该示例从定义 "type Steane7" 开始。这是一个 class 定义,所以我假设以下所有代码都在此缩进?在第 58 (59) 页上,它引用了返回到 class 定义以添加覆盖,这使得上面的代码看起来没有在类型下缩进。我认为这对我来说意味着它在类型下而不是在 synd 方法下缩进?
- 在第58(59)页前面提到的覆盖中,s是什么,它从何而来?在 F# 中,可以使用 "this" 和 "self" 以外的词。这就是 s 应该在此处的意思,还是 s 指的是先前定义但未提及的值?
- 第 56 (57) 页准备门中的绘图说明说 "Error! Hyperlink reference not valid." 这里的正确绘图说明是什么?我猜应该是 "\multigate{#%d}{%s}"?
- 方法 "fix" 在第 58 页上有一个没有 if 的 else。这里对父级的正确引用是什么?
- 用户手册中是否遗漏了 Steane7 class 的任何部分?如果我在脚本中调用它,它会像代码的编译版本一样工作吗?
- 对于我以后实现的代码,是否还有其他方法应该被覆盖?我通过 VS 检查编译的程序集来拼凑 QECC class。
坦率地说,所有这些问题都可以通过向我指出 QECC 和 Steane7 的源代码来回答。我从 GitHub 抓取的 "source" 文件夹只有预编译的可执行文件。
我刚刚将 Steane7 的源代码发布到 Liquid GitHub repo。希望对您有所帮助!
我正在尝试在 Liquid 中实现一些量子纠错码(如果需要请更正标签),我想我应该从复制用户手册中讨论的 Steane7 class 开始在第 55 页(pdf 的第 56 页)。不过,我对提供的代码有几个问题。
- 文件的整体结构我不清楚。该示例从定义 "type Steane7" 开始。这是一个 class 定义,所以我假设以下所有代码都在此缩进?在第 58 (59) 页上,它引用了返回到 class 定义以添加覆盖,这使得上面的代码看起来没有在类型下缩进。我认为这对我来说意味着它在类型下而不是在 synd 方法下缩进?
- 在第58(59)页前面提到的覆盖中,s是什么,它从何而来?在 F# 中,可以使用 "this" 和 "self" 以外的词。这就是 s 应该在此处的意思,还是 s 指的是先前定义但未提及的值?
- 第 56 (57) 页准备门中的绘图说明说 "Error! Hyperlink reference not valid." 这里的正确绘图说明是什么?我猜应该是 "\multigate{#%d}{%s}"?
- 方法 "fix" 在第 58 页上有一个没有 if 的 else。这里对父级的正确引用是什么?
- 用户手册中是否遗漏了 Steane7 class 的任何部分?如果我在脚本中调用它,它会像代码的编译版本一样工作吗?
- 对于我以后实现的代码,是否还有其他方法应该被覆盖?我通过 VS 检查编译的程序集来拼凑 QECC class。
坦率地说,所有这些问题都可以通过向我指出 QECC 和 Steane7 的源代码来回答。我从 GitHub 抓取的 "source" 文件夹只有预编译的可执行文件。
我刚刚将 Steane7 的源代码发布到 Liquid GitHub repo。希望对您有所帮助!