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 条
  • [1] Symbolic Execution for Randomized Programs
    Susag, Zachary
    Lahiri, Sumit
    Hsu, Justin
    Roy, Subhajit
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (OOPSLA):
  • [2] Symbolic execution of programs with strings
    Redelinghuys, Gideon
    Visser, Willem
    Geldenhuys, Jaco
    PROCEEDINGS OF THE SOUTH AFRICAN INSTITUTE FOR COMPUTER SCIENTISTS AND INFORMATION TECHNOLOGISTS CONFERENCE, 2012, : 139 - 148
  • [3] Symbolic Execution of Programs with Heap Inputs
    Braione, Pietro
    Denaro, Giovanni
    Pezze, Mauro
    2015 10TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE 2015) PROCEEDINGS, 2015, : 602 - 613
  • [4] MPISE: Symbolic Execution of MPI Programs
    Fu, Xianjin
    Chen, Zhenbang
    Zhang, Yufeng
    Huang, Chun
    Dong, Wei
    Wang, Ji
    2015 IEEE 16TH INTERNATIONAL SYMPOSIUM ON HIGH ASSURANCE SYSTEMS ENGINEERING (HASE), 2015, : 181 - 188
  • [5] Distributed CFG-based Symbolic Execution for Assembly Programs
    Adachi, Takumi
    Yamane, Satoshi
    Sakurai, Kohei
    2015 IEEE 4TH GLOBAL CONFERENCE ON CONSUMER ELECTRONICS (GCCE), 2015, : 76 - 80
  • [6] Combining Symbolic Execution and Model Checking to Verify MPI Programs
    Yu, Hengbiao
    PROCEEDINGS 2018 IEEE/ACM 40TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING - COMPANION (ICSE-COMPANION, 2018, : 527 - 529
  • [7] Supporting the debugging of Erlang programs by symbolic execution
    Erdei, Zsofia
    Toth, Melinda
    Bozo, Istvan
    ACTA UNIVERSITATIS SAPIENTIAE INFORMATICA, 2024, 16 (01) : 44 - 61
  • [8] Assertion Guided Symbolic Execution of Multithreaded Programs
    Guo, Shengjian
    Kusano, Markus
    Wang, Chao
    Yang, Zijiang
    Gupta, Aarti
    2015 10TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE 2015) PROCEEDINGS, 2015, : 854 - 865
  • [9] A review about symbolic execution of computer programs
    Una revisión sobre la ejecución simbólica de programas computacionales
    1600, Centro de Informacion Tecnologica (25): : 115 - 124
  • [10] Combining symbolic execution with model checking to verify parallel numerical programs
    Siegel, Stephen F.
    Mironova, Anastasia
    Avrunin, George S.
    Clarke, Lori A.
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2008, 17 (02)