A generic framework for symbolic execution: A coinductive approach

We propose a language-independent symbolic execution framework. The approach is parameterised by a language definition, which consists of a signature for the syntax and execution infrastructure of the language, a model interpreting the signature, and rewrite rules for the language's operational...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:Journal of symbolic computation Ročník 80; s. 125 - 163
Hlavní autoři: Lucanu, Dorel, Rusu, Vlad, Arusoaie, Andrei
Médium: Journal Article
Jazyk:angličtina
Vydáno: Elsevier Ltd 01.05.2017
Elsevier
Témata:
ISSN:0747-7171, 1095-855X
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract We propose a language-independent symbolic execution framework. The approach is parameterised by a language definition, which consists of a signature for the syntax and execution infrastructure of the language, a model interpreting the signature, and rewrite rules for the language's operational semantics. Then, symbolic execution amounts to computing symbolic paths using a derivative operation. We prove that the symbolic execution thus defined has the properties naturally expected from it, meaning that the feasible symbolic executions of a program and the concrete executions of the same program mutually simulate each other. We also show how a coinduction-based extension of symbolic execution can be used for the deductive verification of programs. We show how the proposed symbolic-execution approach, and the coinductive verification technique based on it, can be seamlessly implemented in language definition frameworks based on rewriting such as the K framework. A prototype implementation of our approach has been developed in K. We illustrate it on the symbolic analysis and deductive verification of nontrivial programs.
AbstractList We propose a language-independent symbolic execution framework. The approach is parameterised by a language definition, which consists of a signature for the syntax and execution infrastructure of the language, a model interpreting the signature, and rewrite rules for the language's operational semantics. Then, symbolic execution amounts to computing symbolic paths using a derivative operation. We prove that the symbolic execution thus defined has the properties naturally expected from it, meaning that the feasible symbolic executions of a program and the concrete executions of the same program mutually simulate each other. We also show how a coinduction-based extension of symbolic execution can be used for the deductive verification of programs. We show how the proposed symbolic-execution approach, and the coinductive verification technique based on it, can be seamlessly implemented in language definition frameworks based on rewriting such as the K framework. A prototype implementation of our approach has been developed in K. We illustrate it on the symbolic analysis and deductive verification of nontrivial programs.
We propose a language-independent symbolic execution framework. The approach is parameterised by a language definition, which consists of a signature for the lan-guage's syntax and execution infrastructure, a model interpreting the signature, and rewrite rules for the language's operational semantics. Then, symbolic execution amounts to computing symbolic paths using a derivative operation. We prove that the symbolic execution thus defined has the properties naturally expected from it, meaning that the feasible symbolic executions of a program and the concrete executions of the same program mutually simulate each other. We also show how a coinduction-based extension of symbolic execution can be used for the deductive verification of programs. We show how the proposed symbolic-execution approach, and the coinductive verification technique based on it, can be seamlessly implemented in language definition frameworks based on rewriting such as the K framework. A prototype implementation of our approach has been developed in K. We illustrate it on the symbolic analysis and deductive verification of nontrivial programs.
Author Lucanu, Dorel
Arusoaie, Andrei
Rusu, Vlad
Author_xml – sequence: 1
  givenname: Dorel
  surname: Lucanu
  fullname: Lucanu, Dorel
  email: dlucanu@info.uaic.ro
  organization: Faculty of Computer Science, “Alexandru Ioan Cuza” University of Iaşi, Romania
– sequence: 2
  givenname: Vlad
  surname: Rusu
  fullname: Rusu, Vlad
  email: vlad.rusu@inria.fr
  organization: Inria Lille Nord Europe, France
– sequence: 3
  givenname: Andrei
  surname: Arusoaie
  fullname: Arusoaie, Andrei
  email: andrei.arusoaie@info.uaic.ro
  organization: Faculty of Computer Science, “Alexandru Ioan Cuza” University of Iaşi, Romania
BackLink https://inria.hal.science/hal-01238696$$DView record in HAL
BookMark eNp9kDFPwzAQhS1UJNrCD2DLypBgx0kcw1QqoEiVWEBisxz7TB3SuLLTQv89CYWFodOdTu97p_cmaNS6FhC6JDghmBTXdVIHlaT9mmCWYJKeoDHBPI_LPH8boTFmGYsZYeQMTUKoMcY8o_kY3c2id2jBWxUZL9fw6fxHZJyPwn5duaY_wxeobWddexPNIuVsq7eqszuI5GbjnVSrc3RqZBPg4ndO0evD_ct8ES-fH5_ms2WsKMu6WDLJc0ZTnEFlTAUEClZgTnFeplmlJVQplRnWoHGmieamKmjJJUm5LI3hmk7R1cF3JRux8XYt_V44acVithTDrU9Ny4IXu7TXsoNWeReCByOU7eSQovPSNoJgMdQmatHXJobaBGY_BlNE_pF_r44xtwcG-vg7C14EZaFVoK0H1Qnt7BH6G42Vh4c
CitedBy_id crossref_primary_10_1016_j_scico_2019_102342
crossref_primary_10_1007_s00165_020_00527_y
crossref_primary_10_1016_j_csi_2020_103444
crossref_primary_10_1016_j_jlamp_2019_100483
crossref_primary_10_1016_j_jlamp_2020_100619
crossref_primary_10_1145_3498709
crossref_primary_10_1016_j_jlamp_2019_100497
crossref_primary_10_1016_j_tcs_2025_115263
Cites_doi 10.1093/jigpal/5.2.231
10.1137/0206024
10.1016/j.ic.2008.03.026
10.1145/2499368.2451152
10.1007/s10009-009-0118-1
10.1016/j.entcs.2009.05.015
10.1007/s10270-004-0058-x
10.1145/503271.503230
10.1145/360248.360252
10.1007/s10990-007-9000-6
10.1016/j.entcs.2006.01.006
10.1016/j.jlap.2010.03.012
ContentType Journal Article
Copyright 2016 Elsevier Ltd
Distributed under a Creative Commons Attribution 4.0 International License
Copyright_xml – notice: 2016 Elsevier Ltd
– notice: Distributed under a Creative Commons Attribution 4.0 International License
DBID AAYXX
CITATION
1XC
VOOES
DOI 10.1016/j.jsc.2016.07.012
DatabaseName CrossRef
Hyper Article en Ligne (HAL)
Hyper Article en Ligne (HAL) (Open Access)
DatabaseTitle CrossRef
DatabaseTitleList

DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1095-855X
EndPage 163
ExternalDocumentID oai:HAL:hal-01238696v2
10_1016_j_jsc_2016_07_012
S0747717116300499
GroupedDBID --K
--M
-~X
.DC
.~1
0R~
1B1
1RT
1~.
1~5
29L
4.4
457
4G.
5GY
5VS
6I.
6OB
7-5
71M
8P~
9JN
AACTN
AAEDT
AAEDW
AAFTH
AAIAV
AAIKJ
AAKOC
AALRI
AAOAW
AAQFI
AAQXK
AAXUO
AAYFN
ABAOU
ABBOA
ABEFU
ABFNM
ABJNI
ABMAC
ABVKL
ABXDB
ABYKQ
ACAZW
ACDAQ
ACGFS
ACNNM
ACRLP
ACZNC
ADBBV
ADEZE
ADFGL
ADMUD
AEBSH
AEKER
AENEX
AEXQZ
AFKWA
AFTJW
AGHFR
AGUBO
AGYEJ
AHHHB
AIALX
AIEXJ
AIGVJ
AIKHN
AITUG
AJBFU
AJOXV
ALMA_UNASSIGNED_HOLDINGS
AMFUW
AMRAJ
AOUOD
ARUGR
ASPBG
AVWKF
AXJTR
AZFZN
BKOJK
BLXMC
CAG
COF
CS3
DM4
DU5
EBS
EFBJH
EFLBG
EJD
EO8
EO9
EP2
EP3
FDB
FEDTE
FGOYB
FIRID
FNPLU
FYGXN
G-2
G-Q
GBLVA
GBOLZ
HVGLF
HZ~
IHE
IXB
J1W
KOM
LG5
M25
M41
MHUIS
MO0
N9A
NCXOZ
O-L
O9-
OAUVE
OK1
OZT
P-8
P-9
P2P
PC.
Q38
R2-
RIG
RNS
ROL
RPZ
SDF
SDG
SDP
SES
SEW
SPC
SPCBC
SSV
SSW
SSZ
T5K
TN5
UPT
WUQ
XPP
YQT
ZMT
ZU3
~G-
9DU
AATTM
AAXKI
AAYWO
AAYXX
ABWVN
ACLOT
ACRPL
ACVFH
ADCNI
ADNMO
ADVLN
AEIPS
AEUPX
AFJKZ
AFPUW
AGQPQ
AIGII
AIIUN
AKBMS
AKRWK
AKYEP
ANKPU
APXCP
CITATION
EFKBS
~HD
1XC
VOOES
ID FETCH-LOGICAL-c374t-a7a9573204ebffbe1e67609305824bdaeb23a40ded04d1d9fb6389a129a8ff9d3
ISICitedReferencesCount 26
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000390831700007&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0747-7171
IngestDate Tue Oct 14 20:34:17 EDT 2025
Tue Nov 18 21:08:32 EST 2025
Sat Nov 29 02:51:00 EST 2025
Fri Feb 23 02:31:32 EST 2024
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Keywords Reachability logic
Programming language
Symbolic execution
Formal operational semantics
Circular coinduction
Program verification
symbolic execution
circular coinduction
formal operational semantics
programming language
program verification
reachability logic
Language English
License Distributed under a Creative Commons Attribution 4.0 International License: http://creativecommons.org/licenses/by/4.0
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c374t-a7a9573204ebffbe1e67609305824bdaeb23a40ded04d1d9fb6389a129a8ff9d3
ORCID 0000-0002-3495-2232
OpenAccessLink https://inria.hal.science/hal-01238696
PageCount 39
ParticipantIDs hal_primary_oai_HAL_hal_01238696v2
crossref_citationtrail_10_1016_j_jsc_2016_07_012
crossref_primary_10_1016_j_jsc_2016_07_012
elsevier_sciencedirect_doi_10_1016_j_jsc_2016_07_012
PublicationCentury 2000
PublicationDate 2017-05-01
PublicationDateYYYYMMDD 2017-05-01
PublicationDate_xml – month: 05
  year: 2017
  text: 2017-05-01
  day: 01
PublicationDecade 2010
PublicationTitle Journal of symbolic computation
PublicationYear 2017
Publisher Elsevier Ltd
Elsevier
Publisher_xml – name: Elsevier Ltd
– name: Elsevier
References Clavel, Durán, Eker, Lincoln, Oliet, Meseguer, Talcott (br0100) 2007
Cadar, Ganesh, Pawlowski, Dill, Engler (br0080) 2006
Jaffar, Murali, Navas, Santosa (br0230) 2012
Roşu, Ştefănescu (br0430) 2012
Roşu, Ştefănescu, Ciobâcă, Moore (br0400) June 2013
Reynolds (br0360) 2002
Godefroid, Klarlund, Sen (br0200) 2005
Ahrendt (br0010) 2005; 4
Sangiorgi (br0450) 2012
de Moura, Bjørner (br0160) 2008; vol. 4963
King (br0240) 1976; 19
Moss, Danner (br0310) 1997; 5
Filliâtre (br0180) 1998
Ştefănescu, Ciobâcă, Mereuţă, Moore, Şerbănuţă, Roşu (br0130) July 2014; vol. 8560
Rocha, Meseguer, Muñoz (br0370) 2014; vol. 8663
Roşu, Ştefănescu (br0390) 2012; vol. 7436
Păsăreanu, Rungta (br0320) 2010
Barnett, Rustan, Leino, Schulte (br0050) 2005
de Halleux, Tillmann (br0150) 2008; vol. 4966
Filliâtre, Paskevich (br0190) March 2013; vol. 7792
Meseguer, Thati (br0290) 2007; 20
Berdine, Calcagno, O'Hearn (br0060) 2005; vol. 3780
Cormen, Leiserson, Rivest, Stein (br0120) 2009
Knuth, Morris, Pratt (br0250) 1977; 6
Şerbănuţă, Roşu, Meseguer (br0480) 2009; 207
Păsăreanu, Visser (br0340) 2009; 11
Armando, Benerecetti, Mantovani (br0020) 2006; 144
Schmitt, Weiß (br0460) 2007; vol. 259
Escobar, Meseguer, Sasse (br0170) 2009; 238
Cadar, Dunbar, Engler (br0070) 2008
Roşu (br0380) July 2015; vol. 36
Jacobs, Smans, Piessens (br0220) 2010
Roşu, Şerbănuţă (br0420) 2010; 79
Arusoaie, Lucanu, Rusu (br0030) 2013; vol. 8225
The Coq development team. The Coq proof assistant reference manual. LogiCal Project 2004. Version 8.0.
Păsăreanu, Visser (br0330) 2004; vol. 2989
Clarke, Kroening (br0090) 2003
Lucanu, Rusu, Arusoaie, Nowak (br0260) 2015; vol. 9200
Moore, Roşu (br0300) February 2015
Ramos, Engler (br0350) 2011
Sen, Marinov, Agha (br0470) 2005
Arusoaie, Lucanu, Rusu (br0040) 2015; 44
Rusu, Lucanu, Serbanuta, Arusoaie, Ştefănescu, Roşu (br0440) 2016; 85
Lucanu, Şerbănuţă (br0270) December 2013
Coen-Porisini, Denaro, Ghezzi, Pezzé (br0110) 2001; 26
Cui, Hu, Wu, Yang (br0140) March 2013; 48
Harel, Kozen, Tiuryn (br0210) 1984
Roşu, Lucanu (br0410) 2009; vol. 5728
Moss (10.1016/j.jsc.2016.07.012_br0310) 1997; 5
Moore (10.1016/j.jsc.2016.07.012_br0300)
Filliâtre (10.1016/j.jsc.2016.07.012_br0190) 2013; vol. 7792
Ştefănescu (10.1016/j.jsc.2016.07.012_br0130) 2014; vol. 8560
Coen-Porisini (10.1016/j.jsc.2016.07.012_br0110) 2001; 26
Armando (10.1016/j.jsc.2016.07.012_br0020) 2006; 144
Berdine (10.1016/j.jsc.2016.07.012_br0060) 2005; vol. 3780
Cormen (10.1016/j.jsc.2016.07.012_br0120) 2009
Filliâtre (10.1016/j.jsc.2016.07.012_br0180)
Harel (10.1016/j.jsc.2016.07.012_br0210) 1984
Roşu (10.1016/j.jsc.2016.07.012_br0400) 2013
Roşu (10.1016/j.jsc.2016.07.012_br0430) 2012
Cui (10.1016/j.jsc.2016.07.012_br0140) 2013; 48
Roşu (10.1016/j.jsc.2016.07.012_br0410) 2009; vol. 5728
Meseguer (10.1016/j.jsc.2016.07.012_br0290) 2007; 20
Schmitt (10.1016/j.jsc.2016.07.012_br0460) 2007; vol. 259
Roşu (10.1016/j.jsc.2016.07.012_br0380) 2015; vol. 36
Roşu (10.1016/j.jsc.2016.07.012_br0420) 2010; 79
Barnett (10.1016/j.jsc.2016.07.012_br0050) 2005
Arusoaie (10.1016/j.jsc.2016.07.012_br0030) 2013; vol. 8225
Jacobs (10.1016/j.jsc.2016.07.012_br0220) 2010
Knuth (10.1016/j.jsc.2016.07.012_br0250) 1977; 6
10.1016/j.jsc.2016.07.012_br0280
Clarke (10.1016/j.jsc.2016.07.012_br0090) 2003
Păsăreanu (10.1016/j.jsc.2016.07.012_br0320) 2010
Păsăreanu (10.1016/j.jsc.2016.07.012_br0340) 2009; 11
Reynolds (10.1016/j.jsc.2016.07.012_br0360) 2002
Lucanu (10.1016/j.jsc.2016.07.012_br0270) 2013
Rusu (10.1016/j.jsc.2016.07.012_br0440) 2016; 85
Rocha (10.1016/j.jsc.2016.07.012_br0370) 2014; vol. 8663
Sangiorgi (10.1016/j.jsc.2016.07.012_br0450) 2012
de Halleux (10.1016/j.jsc.2016.07.012_br0150) 2008; vol. 4966
King (10.1016/j.jsc.2016.07.012_br0240) 1976; 19
Roşu (10.1016/j.jsc.2016.07.012_br0390) 2012; vol. 7436
Jaffar (10.1016/j.jsc.2016.07.012_br0230) 2012
Cadar (10.1016/j.jsc.2016.07.012_br0070) 2008
Cadar (10.1016/j.jsc.2016.07.012_br0080) 2006
de Moura (10.1016/j.jsc.2016.07.012_br0160) 2008; vol. 4963
Şerbănuţă (10.1016/j.jsc.2016.07.012_br0480) 2009; 207
Ramos (10.1016/j.jsc.2016.07.012_br0350) 2011
Păsăreanu (10.1016/j.jsc.2016.07.012_br0330) 2004; vol. 2989
Godefroid (10.1016/j.jsc.2016.07.012_br0200) 2005
Arusoaie (10.1016/j.jsc.2016.07.012_br0040) 2015; 44
Clavel (10.1016/j.jsc.2016.07.012_br0100) 2007
Escobar (10.1016/j.jsc.2016.07.012_br0170) 2009; 238
Lucanu (10.1016/j.jsc.2016.07.012_br0260) 2015; vol. 9200
Ahrendt (10.1016/j.jsc.2016.07.012_br0010) 2005; 4
Sen (10.1016/j.jsc.2016.07.012_br0470) 2005
References_xml – start-page: 213
  year: 2005
  end-page: 223
  ident: br0200
  article-title: DART: directed automated random testing
  publication-title: Proceedings of the ACM SIGPLAN 2005 Conference on Programming Language Design and Implementation
– start-page: 669
  year: 2011
  end-page: 685
  ident: br0350
  article-title: Practical, low-effort equivalence verification of real code
  publication-title: Proceedings of the 23rd International Conference on Computer Aided Verification
– start-page: 555
  year: 2012
  end-page: 574
  ident: br0430
  article-title: Checking reachability using matching logic
  publication-title: OOPSLA
– volume: 19
  start-page: 385
  year: 1976
  end-page: 394
  ident: br0240
  article-title: Symbolic execution and program testing
  publication-title: Commun. ACM
– volume: vol. 8663
  start-page: 247
  year: 2014
  end-page: 262
  ident: br0370
  article-title: Rewriting modulo SMT and open system analysis
  publication-title: Rewriting Logic and Its Applications—10th International Workshop, WRLA 2014, Revised Selected Papers
– volume: vol. 4966
  start-page: 171
  year: 2008
  end-page: 181
  ident: br0150
  article-title: Parameterized unit testing with Pex
  publication-title: Tests and Proofs, Second International Conference
– start-page: 497
  year: 1984
  end-page: 604
  ident: br0210
  article-title: Dynamic logic
  publication-title: Handbook of Philosophical Logic
– start-page: 49
  year: 2005
  end-page: 69
  ident: br0050
  article-title: The Spec# programming system: an overview
  publication-title: Proc. 2004 International Conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
– start-page: 322
  year: 2006
  end-page: 335
  ident: br0080
  article-title: EXE: automatically generating inputs of death
  publication-title: ACM Conference on Computer and Communications Security
– volume: 238
  start-page: 103
  year: 2009
  end-page: 119
  ident: br0170
  article-title: Variant narrowing and equational unification
  publication-title: Electron. Notes Theor. Comput. Sci.
– year: February 2015
  ident: br0300
  article-title: Program verification by coinduction
– start-page: 263
  year: 2005
  end-page: 272
  ident: br0470
  article-title: CUTE: a concolic unit testing engine for C
  publication-title: Proceedings of the 10th European Software Engineering Conference Held Jointly with 13th ACM SIGSOFT International Symposium on Foundations of Software Engineering
– volume: vol. 8560
  start-page: 425
  year: July 2014
  end-page: 440
  ident: br0130
  article-title: All-path reachability logic
  publication-title: Proceedings of the Joint 25th International Conference on Rewriting Techniques and Applications and 12th International Conference on Typed Lambda Calculi and Applications
– volume: 48
  start-page: 329
  year: March 2013
  end-page: 342
  ident: br0140
  article-title: Verifying systems rules using rule-directed symbolic execution
  publication-title: ACM SIGPLAN Not.
– volume: 5
  start-page: 231
  year: 1997
  end-page: 257
  ident: br0310
  article-title: On the foundations of corecursion
  publication-title: Log. J. IGPL
– volume: 144
  start-page: 79
  year: 2006
  end-page: 94
  ident: br0020
  article-title: Model checking linear programs with arrays
  publication-title: Electron. Notes Theor. Comput. Sci.
– volume: vol. 7436
  start-page: 387
  year: 2012
  end-page: 402
  ident: br0390
  article-title: From Hoare logic to matching logic reachability
  publication-title: Proceedings of the 18th International Symposium on Formal Methods
– start-page: 179
  year: 2010
  end-page: 180
  ident: br0320
  article-title: Symbolic PathFinder: symbolic execution of Java bytecode
  publication-title: International Conference on Automated Software Engineering
– start-page: 308
  year: 2003
  end-page: 311
  ident: br0090
  article-title: Hardware verification using ANSI-C programs as a reference
  publication-title: Proceedings of the 2003 Asia and South Pacific Design Automation Conference
– year: December 2013
  ident: br0270
  article-title: CinK—an exercise on how to think in K
– volume: 6
  start-page: 323
  year: 1977
  end-page: 350
  ident: br0250
  article-title: Fast pattern matching in strings
  publication-title: SIAM J. Comput.
– volume: 79
  start-page: 397
  year: 2010
  end-page: 434
  ident: br0420
  article-title: An overview of the K semantic framework
  publication-title: J. Log. Algebraic Program.
– year: 1998
  ident: br0180
  article-title: Proof of KMP string searching algorithm
– volume: vol. 3780
  start-page: 52
  year: 2005
  end-page: 68
  ident: br0060
  article-title: Symbolic execution with separation logic
  publication-title: Programming Languages and Systems, Third Asian Symposium
– reference: The Coq development team. The Coq proof assistant reference manual. LogiCal Project 2004. Version 8.0.
– year: 2012
  ident: br0450
  article-title: An Introduction to Bisimulation and Coinduction
– volume: vol. 8225
  start-page: 281
  year: 2013
  end-page: 301
  ident: br0030
  article-title: A generic framework for symbolic execution
  publication-title: 6th International Conference on Software Language Engineering
– year: 2009
  ident: br0120
  article-title: Introduction to Algorithms
– volume: vol. 2989
  start-page: 164
  year: 2004
  end-page: 181
  ident: br0330
  article-title: Verification of Java programs using symbolic execution and invariant generation
  publication-title: SPIN
– volume: 26
  start-page: 142
  year: 2001
  end-page: 151
  ident: br0110
  article-title: Using symbolic execution for verifying safety-critical systems
  publication-title: Softw. Eng. Notes
– year: 2007
  ident: br0100
  article-title: All About Maude—A High-Performance Logical Framework: How to Specify, Program, and Verify Systems in Rewriting Logic
  publication-title: Lecture Notes in Computer Science
– volume: vol. 4963
  start-page: 337
  year: 2008
  end-page: 340
  ident: br0160
  article-title: Z3: an efficient SMT solver
  publication-title: Tools and Algorithms for the Construction and Analysis of Systems, 14th International Conference
– start-page: 304
  year: 2010
  end-page: 311
  ident: br0220
  article-title: A quick tour of the verifast program verifier
  publication-title: Proceedings of the 8th Asian Conference on Programming Languages and Systems
– volume: 11
  start-page: 339
  year: 2009
  end-page: 353
  ident: br0340
  article-title: A survey of new trends in symbolic execution for software testing and analysis
  publication-title: Int. J. Softw. Tools Technol. Transf.
– start-page: 55
  year: 2002
  end-page: 74
  ident: br0360
  article-title: Separation logic: a logic for shared mutable data structures
  publication-title: Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science
– start-page: 758
  year: 2012
  end-page: 766
  ident: br0230
  article-title: TRACER: a symbolic execution tool for verification
  publication-title: Computer Aided Verification—24th International Conference, 2012 Proceedings
– volume: vol. 7792
  start-page: 125
  year: March 2013
  end-page: 128
  ident: br0190
  article-title: Why3—where programs meet provers
  publication-title: Proceedings of the 22nd European Symposium on Programming
– volume: 20
  start-page: 123
  year: 2007
  end-page: 160
  ident: br0290
  article-title: Symbolic reachability analysis using narrowing and its application to verification of cryptographic protocols
  publication-title: High.-Order Symb. Comput.
– volume: vol. 259
  year: 2007
  ident: br0460
  article-title: Inferring invariants by symbolic execution
  publication-title: VERIFY
– volume: vol. 9200
  start-page: 451
  year: 2015
  end-page: 474
  ident: br0260
  article-title: Verifying reachability-logic properties on rewriting-logic specifications
  publication-title: Logic, Rewriting, and Concurrency—Essays Dedicated to José Meseguer on the Occasion of His 65th Birthday
– volume: 207
  start-page: 305
  year: 2009
  end-page: 340
  ident: br0480
  article-title: A rewriting logic approach to operational semantics
  publication-title: Inf. Comput.
– volume: 4
  start-page: 32
  year: 2005
  end-page: 54
  ident: br0010
  article-title: The KeY tool
  publication-title: Softw. Syst. Model.
– volume: 44
  start-page: 48
  year: 2015
  end-page: 71
  ident: br0040
  article-title: Symbolic execution based on language transformation
  publication-title: Comput. Lang. Syst. Struct.
– start-page: 209
  year: 2008
  end-page: 224
  ident: br0070
  article-title: Klee: unassisted and automatic generation of high-coverage tests for complex systems programs
  publication-title: Proc. 8th USENIX Conference on Operating Systems Design and Implementation
– volume: vol. 36
  start-page: 5
  year: July 2015
  end-page: 21
  ident: br0380
  article-title: Matching logic—extended abstract
  publication-title: Proceedings of the 26th International Conference on Rewriting Techniques and Applications
– start-page: 358
  year: June 2013
  end-page: 367
  ident: br0400
  article-title: One-path reachability logic
  publication-title: Proceedings of the 28th Symposium on Logic in Computer Science
– volume: vol. 5728
  start-page: 127
  year: 2009
  end-page: 144
  ident: br0410
  article-title: Circular coinduction—a proof theoretical foundation
  publication-title: CALCO 2009
– volume: 85
  start-page: 1:98
  year: 2016
  end-page: 120
  ident: br0440
  article-title: Language definitions as rewrite theories
  publication-title: J. Log. Algebraic Methods Program.
– volume: 44
  start-page: 48
  year: 2015
  ident: 10.1016/j.jsc.2016.07.012_br0040
  article-title: Symbolic execution based on language transformation
  publication-title: Comput. Lang. Syst. Struct.
– volume: vol. 8560
  start-page: 425
  year: 2014
  ident: 10.1016/j.jsc.2016.07.012_br0130
  article-title: All-path reachability logic
– start-page: 308
  year: 2003
  ident: 10.1016/j.jsc.2016.07.012_br0090
  article-title: Hardware verification using ANSI-C programs as a reference
– volume: 5
  start-page: 231
  issue: 2
  year: 1997
  ident: 10.1016/j.jsc.2016.07.012_br0310
  article-title: On the foundations of corecursion
  publication-title: Log. J. IGPL
  doi: 10.1093/jigpal/5.2.231
– year: 2012
  ident: 10.1016/j.jsc.2016.07.012_br0450
– volume: vol. 8663
  start-page: 247
  year: 2014
  ident: 10.1016/j.jsc.2016.07.012_br0370
  article-title: Rewriting modulo SMT and open system analysis
– ident: 10.1016/j.jsc.2016.07.012_br0180
– volume: 6
  start-page: 323
  issue: 2
  year: 1977
  ident: 10.1016/j.jsc.2016.07.012_br0250
  article-title: Fast pattern matching in strings
  publication-title: SIAM J. Comput.
  doi: 10.1137/0206024
– volume: vol. 8225
  start-page: 281
  year: 2013
  ident: 10.1016/j.jsc.2016.07.012_br0030
  article-title: A generic framework for symbolic execution
– volume: vol. 7436
  start-page: 387
  year: 2012
  ident: 10.1016/j.jsc.2016.07.012_br0390
  article-title: From Hoare logic to matching logic reachability
– volume: vol. 4966
  start-page: 171
  year: 2008
  ident: 10.1016/j.jsc.2016.07.012_br0150
  article-title: Parameterized unit testing with Pex
– volume: vol. 259
  year: 2007
  ident: 10.1016/j.jsc.2016.07.012_br0460
  article-title: Inferring invariants by symbolic execution
– start-page: 358
  year: 2013
  ident: 10.1016/j.jsc.2016.07.012_br0400
  article-title: One-path reachability logic
– volume: vol. 2989
  start-page: 164
  year: 2004
  ident: 10.1016/j.jsc.2016.07.012_br0330
  article-title: Verification of Java programs using symbolic execution and invariant generation
– volume: 207
  start-page: 305
  issue: 2
  year: 2009
  ident: 10.1016/j.jsc.2016.07.012_br0480
  article-title: A rewriting logic approach to operational semantics
  publication-title: Inf. Comput.
  doi: 10.1016/j.ic.2008.03.026
– start-page: 209
  year: 2008
  ident: 10.1016/j.jsc.2016.07.012_br0070
  article-title: Klee: unassisted and automatic generation of high-coverage tests for complex systems programs
– start-page: 322
  year: 2006
  ident: 10.1016/j.jsc.2016.07.012_br0080
  article-title: EXE: automatically generating inputs of death
– year: 2007
  ident: 10.1016/j.jsc.2016.07.012_br0100
  article-title: All About Maude—A High-Performance Logical Framework: How to Specify, Program, and Verify Systems in Rewriting Logic
– ident: 10.1016/j.jsc.2016.07.012_br0300
– start-page: 179
  year: 2010
  ident: 10.1016/j.jsc.2016.07.012_br0320
  article-title: Symbolic PathFinder: symbolic execution of Java bytecode
– volume: 85
  start-page: 1:98
  issue: 1, Part 1
  year: 2016
  ident: 10.1016/j.jsc.2016.07.012_br0440
  article-title: Language definitions as rewrite theories
  publication-title: J. Log. Algebraic Methods Program.
– volume: 48
  start-page: 329
  issue: 4
  year: 2013
  ident: 10.1016/j.jsc.2016.07.012_br0140
  article-title: Verifying systems rules using rule-directed symbolic execution
  publication-title: ACM SIGPLAN Not.
  doi: 10.1145/2499368.2451152
– start-page: 497
  year: 1984
  ident: 10.1016/j.jsc.2016.07.012_br0210
  article-title: Dynamic logic
– volume: 11
  start-page: 339
  issue: 4
  year: 2009
  ident: 10.1016/j.jsc.2016.07.012_br0340
  article-title: A survey of new trends in symbolic execution for software testing and analysis
  publication-title: Int. J. Softw. Tools Technol. Transf.
  doi: 10.1007/s10009-009-0118-1
– start-page: 55
  year: 2002
  ident: 10.1016/j.jsc.2016.07.012_br0360
  article-title: Separation logic: a logic for shared mutable data structures
– volume: vol. 3780
  start-page: 52
  year: 2005
  ident: 10.1016/j.jsc.2016.07.012_br0060
  article-title: Symbolic execution with separation logic
– volume: 238
  start-page: 103
  issue: 3
  year: 2009
  ident: 10.1016/j.jsc.2016.07.012_br0170
  article-title: Variant narrowing and equational unification
  publication-title: Electron. Notes Theor. Comput. Sci.
  doi: 10.1016/j.entcs.2009.05.015
– volume: vol. 5728
  start-page: 127
  year: 2009
  ident: 10.1016/j.jsc.2016.07.012_br0410
  article-title: Circular coinduction—a proof theoretical foundation
– volume: vol. 9200
  start-page: 451
  year: 2015
  ident: 10.1016/j.jsc.2016.07.012_br0260
  article-title: Verifying reachability-logic properties on rewriting-logic specifications
– ident: 10.1016/j.jsc.2016.07.012_br0280
– start-page: 555
  year: 2012
  ident: 10.1016/j.jsc.2016.07.012_br0430
  article-title: Checking reachability using matching logic
– start-page: 213
  year: 2005
  ident: 10.1016/j.jsc.2016.07.012_br0200
  article-title: DART: directed automated random testing
– year: 2013
  ident: 10.1016/j.jsc.2016.07.012_br0270
– start-page: 49
  year: 2005
  ident: 10.1016/j.jsc.2016.07.012_br0050
  article-title: The Spec# programming system: an overview
– volume: vol. 7792
  start-page: 125
  year: 2013
  ident: 10.1016/j.jsc.2016.07.012_br0190
  article-title: Why3—where programs meet provers
– start-page: 263
  year: 2005
  ident: 10.1016/j.jsc.2016.07.012_br0470
  article-title: CUTE: a concolic unit testing engine for C
– volume: vol. 4963
  start-page: 337
  year: 2008
  ident: 10.1016/j.jsc.2016.07.012_br0160
  article-title: Z3: an efficient SMT solver
– volume: 4
  start-page: 32
  year: 2005
  ident: 10.1016/j.jsc.2016.07.012_br0010
  article-title: The KeY tool
  publication-title: Softw. Syst. Model.
  doi: 10.1007/s10270-004-0058-x
– start-page: 758
  year: 2012
  ident: 10.1016/j.jsc.2016.07.012_br0230
  article-title: TRACER: a symbolic execution tool for verification
– volume: 26
  start-page: 142
  issue: 5
  year: 2001
  ident: 10.1016/j.jsc.2016.07.012_br0110
  article-title: Using symbolic execution for verifying safety-critical systems
  publication-title: Softw. Eng. Notes
  doi: 10.1145/503271.503230
– start-page: 304
  year: 2010
  ident: 10.1016/j.jsc.2016.07.012_br0220
  article-title: A quick tour of the verifast program verifier
– volume: 19
  start-page: 385
  issue: 7
  year: 1976
  ident: 10.1016/j.jsc.2016.07.012_br0240
  article-title: Symbolic execution and program testing
  publication-title: Commun. ACM
  doi: 10.1145/360248.360252
– year: 2009
  ident: 10.1016/j.jsc.2016.07.012_br0120
– volume: vol. 36
  start-page: 5
  year: 2015
  ident: 10.1016/j.jsc.2016.07.012_br0380
  article-title: Matching logic—extended abstract
– volume: 20
  start-page: 123
  issue: 1–2
  year: 2007
  ident: 10.1016/j.jsc.2016.07.012_br0290
  article-title: Symbolic reachability analysis using narrowing and its application to verification of cryptographic protocols
  publication-title: High.-Order Symb. Comput.
  doi: 10.1007/s10990-007-9000-6
– start-page: 669
  year: 2011
  ident: 10.1016/j.jsc.2016.07.012_br0350
  article-title: Practical, low-effort equivalence verification of real code
– volume: 144
  start-page: 79
  issue: 3
  year: 2006
  ident: 10.1016/j.jsc.2016.07.012_br0020
  article-title: Model checking linear programs with arrays
  publication-title: Electron. Notes Theor. Comput. Sci.
  doi: 10.1016/j.entcs.2006.01.006
– volume: 79
  start-page: 397
  issue: 6
  year: 2010
  ident: 10.1016/j.jsc.2016.07.012_br0420
  article-title: An overview of the K semantic framework
  publication-title: J. Log. Algebraic Program.
  doi: 10.1016/j.jlap.2010.03.012
SSID ssj0009435
Score 2.299111
Snippet We propose a language-independent symbolic execution framework. The approach is parameterised by a language definition, which consists of a signature for the...
SourceID hal
crossref
elsevier
SourceType Open Access Repository
Enrichment Source
Index Database
Publisher
StartPage 125
SubjectTerms Circular coinduction
Computer Science
Formal operational semantics
Logic in Computer Science
Program verification
Programming language
Programming Languages
Reachability logic
Symbolic execution
Title A generic framework for symbolic execution: A coinductive approach
URI https://dx.doi.org/10.1016/j.jsc.2016.07.012
https://inria.hal.science/hal-01238696
Volume 80
WOSCitedRecordID wos000390831700007&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVESC
  databaseName: Elsevier SD Freedom Collection Journals 2021
  customDbUrl:
  eissn: 1095-855X
  dateEnd: 20180228
  omitProxy: false
  ssIdentifier: ssj0009435
  issn: 0747-7171
  databaseCode: AIEXJ
  dateStart: 19950101
  isFulltext: true
  titleUrlDefault: https://www.sciencedirect.com
  providerName: Elsevier
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV1Lb9QwELbolgMX3ojykoU4gYKcxGvH3AIqKqiqEBS0t8iObbWrkq02m6r8e8av7BbUCpC4RJGVOJbny3hsf_4GoReMEgVznyKTTOiMli3JJFU8a0lpjGVKcaN8sgl-cFDNZuJTJGT2Pp0A77rq_Fyc_ldTQxkY2x2d_Qtzj5VCAdyD0eEKZofrHxm-dlmRPUHeJuKV5xL2P74rJwLssiy1Q-J01K_aBUzLB-_2RoXxS0LWsYrW54K4sIm_P4CRhhCTL83I2_g89L7w24nUa3AN_UKGjRFPqDzeXHuA8Wxk-oUFsXQoZs1A6r0ENs9glhieM8GvQiSXVdPpbNPxhhRO0XPm4fxzHITz4PV-8-9hqWH-et47-ck8CK9GHvZF2ewvrhmuFbkXFRNiC20XfCqqCdquP-zOPq6lmWlIw5qanfa-PQvwlw9dFr1sHaV1eB-XHN5GN6N1cB2AcAddM91ddCsl68DRd99Db2sccYFHXGDABU5GxSMu3uAab6ACJ1TcR1_f7x6-28tiAo2sLTldZZJLMeVlQahR1iqTG8YZEeDiq4IqLY0qSkmJNppQnWthlYtfJYSAsrJW6PIBmnSLzjxEuGUwMsqSCCsNtYWumFU2l6U0BRGK5TuIpI5p2qgu75KcnDSJRjhvoC8b15cN4Q305Q56Ob5yGqRVrnqYpt5uYmwYYr4GoHHVa8_BMmP1Tkt9r95vXJmbTFRMsLPi0b_V_RjdWP8TT9BktRzMU3S9PVsd98tnEWU_Ae-jlBA
linkProvider Elsevier
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+generic+framework+for+symbolic+execution%3A+A+coinductive+approach&rft.jtitle=Journal+of+symbolic+computation&rft.au=Lucanu%2C+Dorel&rft.au=Rusu%2C+Vlad&rft.au=Arusoaie%2C+Andrei&rft.date=2017-05-01&rft.pub=Elsevier+Ltd&rft.issn=0747-7171&rft.eissn=1095-855X&rft.volume=80&rft.spage=125&rft.epage=163&rft_id=info:doi/10.1016%2Fj.jsc.2016.07.012&rft.externalDocID=S0747717116300499
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0747-7171&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0747-7171&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0747-7171&client=summon