Symbolic Execution for Quantum Error Correction Programs

被引:0
作者
Fang, Wang [1 ,2 ]
Ying, Mingsheng [1 ,3 ]
机构
[1] Chinese Acad Sci, Inst Software, Beijing, Peoples R China
[2] Univ Chinese Acad Sci, Beijing, Peoples R China
[3] Tsinghua Univ, Beijing, Peoples R China
来源
PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL | 2024年 / 8卷 / PLDI期
基金
国家重点研发计划;
关键词
symbolic execution; stabilizer formalism; COMPUTATION; VERIFICATION;
D O I
10.1145/3656419
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We define QSE, a symbolic execution framework for quantum programs by integrating symbolic variables into quantum states and the outcomes of quantum measurements. The soundness of QSE is established through a theorem that ensures the correctness of symbolic execution within operational semantics. We further introduce symbolic stabilizer states, which symbolize the phases of stabilizer generators, for the efficient analysis of quantum error correction (QEC) programs. Within the QSE framework, we can use symbolic expressions to characterize the possible discrete Pauli errors in QEC, providing a significant improvement over existing methods that rely on sampling with simulators. We implement QSE with the support of symbolic stabilizer states in a prototype tool named QuantumSE.jl. Our experiments on representative QEC codes, including quantum repetition codes, Kitaev's toric codes, and quantum Tanner codes, demonstrate the efficiency of QuantumSE.jl for debugging QEC programs with over 1000 qubits. In addition, by substituting concrete values in symbolic expressions of measurement results, QuantumSE.jl is also equipped with a sampling feature for stabilizer circuits. Despite a longer initialization time than the state-of-the-art stabilizer simulator, Google's Stim, QuantumSE.jl offers a quicker sampling rate in the experiments.
引用
收藏
页数:26
相关论文
共 50 条
  • [31] Strategies for scalable symbolic execution-driven test generation for programs
    Saparya Krishnamoorthy
    Michael S. Hsiao
    Loganathan Lingappan
    Science China Information Sciences, 2011, 54 : 1797 - 1812
  • [32] Quantum error correction for quantum memories
    Terhal, Barbara M.
    REVIEWS OF MODERN PHYSICS, 2015, 87 (02) : 307 - 346
  • [33] Quantum memories and error correction
    Wootton, James R.
    JOURNAL OF MODERN OPTICS, 2012, 59 (20) : 1717 - 1738
  • [34] Quantum error correction for beginners
    Devitt, Simon J.
    Munro, William J.
    Nemoto, Kae
    REPORTS ON PROGRESS IN PHYSICS, 2013, 76 (07)
  • [35] Symbolic Partial-Order Execution for Testing Multi-Threaded Programs
    Schemmel, Daniel
    Buening, Julian
    Rodriguez, Cesar
    Laprell, David
    Wehrle, Klaus
    COMPUTER AIDED VERIFICATION (CAV 2020), PT I, 2020, 12224 : 376 - 400
  • [36] Generating Next Step Hints for Task Oriented Programs Using Symbolic Execution
    Naus, Nico
    Steenvoorden, Tim
    TRENDS IN FUNCTIONAL PROGRAMMING, TFP 2020, 2020, 12222 : 47 - 68
  • [37] Efficient State Merging in Symbolic Execution
    Kuznetsov, Volodymyr
    Kinder, Johannes
    Bucur, Stefan
    Candea, George
    ACM SIGPLAN NOTICES, 2012, 47 (06) : 193 - 204
  • [38] Mixing Type Checking and Symbolic Execution
    Phang, Khoo Yit
    Chang, Bor-Yuh Evan
    Foster, Jeffrey S.
    ACM SIGPLAN NOTICES, 2010, 45 (06) : 436 - 447
  • [39] Efficient and formal generalized symbolic execution
    Deng, Xianghua
    Lee, Jooyong
    Robby
    AUTOMATED SOFTWARE ENGINEERING, 2012, 19 (03) : 233 - 301
  • [40] Combining Static Analysis Error Traces with Dynamic Symbolic Execution (Experience Paper)
    Busse, Frank
    Gharat, Pritam
    Cadar, Cristian
    Donaldson, Alastair F.
    PROCEEDINGS OF THE 31ST ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS, ISSTA 2022, 2022, : 568 - 579