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
基金
国家重点研发计划;
关键词
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] Bounded Symbolic Execution for Runtime Error Detection of Erlang Programs
    De Angelis, Emanuele
    Fioravanti, Fabio
    Palacios, Adrian
    Pettorossi, Alberto
    Proietti, Maurizio
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2018, (278): : 19 - 26
  • [2] Symbolic Execution for Randomized Programs
    Susag, Zachary
    Lahiri, Sumit
    Hsu, Justin
    Roy, Subhajit
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2022, 6 (OOPSLA):
  • [3] 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
  • [4] On Symbolic Execution of Decompiled Programs
    Korencik, Lukas
    Rockai, Petr
    Lauko, Henrich
    Barnat, Jiri
    2020 IEEE 20TH INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY, AND SECURITY (QRS 2020), 2020, : 265 - 272
  • [5] Symbolic Execution of MPI Programs
    Fu, Xianjin
    Chen, Zhenbang
    Yu, Hengbiao
    Huang, Chun
    Dong, Wei
    Wang, Ji
    2015 IEEE/ACM 37th IEEE International Conference on Software Engineering, Vol 2, 2015, : 809 - 810
  • [6] Quantum symbolic execution
    Nan, Jiang
    Zichen, Wang
    Jian, Wang
    QUANTUM INFORMATION PROCESSING, 2023, 22 (10)
  • [7] Quantum symbolic execution
    Jiang Nan
    Wang Zichen
    Wang Jian
    Quantum Information Processing, 22
  • [8] TESTING MIXAL PROGRAMS BY SYMBOLIC EXECUTION
    ERMAKOV, GV
    PROGRAMMING AND COMPUTER SOFTWARE, 1988, 14 (01) : 1 - 6
  • [9] Testing MIXAL programs by symbolic execution
    Ermakov, G.V.
    Programming and computer software, 1988, : 1 - 6
  • [10] 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