Symbolic Execution with Finite State Automata

被引:0
|
作者
Fulop, Endre [1 ,2 ]
Pataki, Norbert [1 ,2 ]
机构
[1] Eotvos Lorand Univ, Budapest, Hungary
[2] 3in Res Grp, Fac Informat, Martonvasar, Hungary
关键词
static analysis; Clang; finite state automata; domain-specific language;
D O I
10.1109/informatics47936.2019.9119287
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Static analysis is an essential way to find code smells and bugs because it checks the source code without execution. Moreover, static analysis can help in software engineering comprehensively, since static analysis can be used for the validation of code style, evaluate software complexity and execute code refactorings, as well. Symbolic execution is a static analysis method where the variables are interpreted with symbolic values. Clang Static Analyzer is a powerful symbolic execution engine based on the Clang compiler infrastructure that can be used with C, C++ and Objective-C. Validation of resources' usage (e.g. files, memory) requires finite state automata (FSA) for modeling the state of resource (e.g. locked or acquired resource). In this paper, we argue for an approach in which automata are in-use during the symbolic execution. In this approach, a generic automaton is used. The generic automaton can be customized for different resources. We present our domain-specific language to define automata. Our tool parses the automaton and generates checker for the symbolic execution engine. We present some generated checkers, as well.
引用
收藏
页码:293 / 297
页数:5
相关论文
共 50 条
  • [31] Characterizations of rough finite state automata
    Sharan, Shambhu
    Srivastava, Arun K.
    Tiwari, S. P.
    INTERNATIONAL JOURNAL OF MACHINE LEARNING AND CYBERNETICS, 2017, 8 (03) : 721 - 730
  • [32] MULTIHEAD FINITE STATE AUTOMATA AND CONCATENATION
    DURIS, P
    HROMKOVIC, J
    LECTURE NOTES IN COMPUTER SCIENCE, 1982, 140 : 176 - 186
  • [33] Finite automata with undirected state graphs
    Kutrib, Martin
    Malcher, Andreas
    Schneider, Christian
    ACTA INFORMATICA, 2022, 59 (01) : 163 - 181
  • [34] Finite State Automata Built on DNA
    Nowak, Robert
    Plucienniczak, Andrzej
    BIOCYBERNETICS AND BIOMEDICAL ENGINEERING, 2008, 28 (04) : 3 - 19
  • [35] Finite Automata with Undirected State Graphs
    Kutrib, Martin
    Malcher, Andreas
    Schneider, Christian
    DESCRIPTIONAL COMPLEXITY OF FORMAL SYSTEMS, DCFS 2018, 2018, 10952 : 212 - 223
  • [36] Neural Assemblies and Finite State Automata
    Ranhel, Joao
    2013 1ST BRICS COUNTRIES CONGRESS ON COMPUTATIONAL INTELLIGENCE AND 11TH BRAZILIAN CONGRESS ON COMPUTATIONAL INTELLIGENCE (BRICS-CCI & CBIC), 2013, : 28 - 33
  • [37] Smaller Representation of Finite State Automata
    Daciuk, Jan
    Weiss, Dawid
    IMPLEMENTATION AND APPLICATION OF AUTOMATA, 2011, 6807 : 118 - +
  • [38] Finite state automata and data aggregates
    Burda, Michal
    Mindek, Marian
    Sarmanova, Jana
    IMECS 2006: INTERNATIONAL MULTICONFERENCE OF ENGINEERS AND COMPUTER SCIENTISTS, 2006, : 336 - 341
  • [39] Finite automata with undirected state graphs
    Martin Kutrib
    Andreas Malcher
    Christian Schneider
    Acta Informatica, 2022, 59 : 163 - 181
  • [40] Smaller representation of finite state automata
    Daciuk, Jan
    Weiss, Dawid
    THEORETICAL COMPUTER SCIENCE, 2012, 450 : 10 - 21