Program verification via iterated specialization

We present a method for verifying properties of imperative programs by using techniques based on the specialization of constraint logic programs (CLP). We consider a class of imperative programs with integer variables and we focus our attention on safety properties, stating that no error configurati...

Full description

Saved in:
Bibliographic Details
Published in:Science of computer programming Vol. 95; pp. 149 - 175
Main Authors: De Angelis, E., Fioravanti, F., Pettorossi, A., Proietti, M.
Format: Journal Article
Language:English
Published: Elsevier B.V 01.12.2014
Subjects:
ISSN:0167-6423, 1872-7964
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Abstract We present a method for verifying properties of imperative programs by using techniques based on the specialization of constraint logic programs (CLP). We consider a class of imperative programs with integer variables and we focus our attention on safety properties, stating that no error configuration can be reached from any initial configuration. We introduce a CLP program I that encodes the interpreter of the language and defines a predicate unsafe equivalent to the negation of the safety property to be verified. Then, we specialize the CLP program I with respect to the given imperative program and the given initial and error configurations, with the objective of deriving a new CLP program Isp that either contains the fact unsafe (and in this case the imperative program is proved unsafe) or contains no clauses with head unsafe (and in this case the imperative program is proved safe). If Isp enjoys neither of these properties, we iterate the specialization process with the objective of deriving a CLP program where we can prove unsafety or safety. During the various specializations we may apply different strategies for propagating information (either propagating forward from an initial configuration to an error configuration, or propagating backward from an error configuration to an initial configuration) and different operators (such as the widening and the convex hull operators) for generalizing predicate definitions. Each specialization step is guaranteed to terminate, but due to the undecidability of program safety, the iterated specialization process may not terminate. By an experimental evaluation carried out on a significant set of examples taken from the literature, we show that our method improves the precision of program verification with respect to state-of-the-art software model checkers. •We propose a software model checking method.•Our method is based on program specialization of constraint logic programs.•We have evaluated our method by an extensive experimentation.
AbstractList We present a method for verifying properties of imperative programs by using techniques based on the specialization of constraint logic programs (CLP). We consider a class of imperative programs with integer variables and we focus our attention on safety properties, stating that no error configuration can be reached from any initial configuration. We introduce a CLP program I that encodes the interpreter of the language and defines a predicate unsafe equivalent to the negation of the safety property to be verified. Then, we specialize the CLP program I with respect to the given imperative program and the given initial and error configurations, with the objective of deriving a new CLP program Isp that either contains the fact unsafe (and in this case the imperative program is proved unsafe) or contains no clauses with head unsafe (and in this case the imperative program is proved safe). If Isp enjoys neither of these properties, we iterate the specialization process with the objective of deriving a CLP program where we can prove unsafety or safety. During the various specializations we may apply different strategies for propagating information (either propagating forward from an initial configuration to an error configuration, or propagating backward from an error configuration to an initial configuration) and different operators (such as the widening and the convex hull operators) for generalizing predicate definitions. Each specialization step is guaranteed to terminate, but due to the undecidability of program safety, the iterated specialization process may not terminate. By an experimental evaluation carried out on a significant set of examples taken from the literature, we show that our method improves the precision of program verification with respect to state-of-the-art software model checkers. •We propose a software model checking method.•Our method is based on program specialization of constraint logic programs.•We have evaluated our method by an extensive experimentation.
Author Pettorossi, A.
Proietti, M.
Fioravanti, F.
De Angelis, E.
Author_xml – sequence: 1
  givenname: E.
  orcidid: 0000-0002-7319-8439
  surname: De Angelis
  fullname: De Angelis, E.
  email: emanuele.deangelis@unich.it
  organization: DEC, University “G. d'Annunzio”, Viale Pindaro 42, 65127 Pescara, Italy
– sequence: 2
  givenname: F.
  surname: Fioravanti
  fullname: Fioravanti, F.
  email: fioravanti@unich.it
  organization: DEC, University “G. d'Annunzio”, Viale Pindaro 42, 65127 Pescara, Italy
– sequence: 3
  givenname: A.
  surname: Pettorossi
  fullname: Pettorossi, A.
  email: adp@iasi.cnr.it
  organization: DICII, University of Rome Tor Vergata, Via del Politecnico 1, 00133 Roma, Italy
– sequence: 4
  givenname: M.
  surname: Proietti
  fullname: Proietti, M.
  email: proietti@iasi.cnr.it
  organization: CNR-IASI, Viale Manzoni 30, 00185 Roma, Italy
BookMark eNqFj8tOwzAQRS1UJNrCF7DJDyTYiR_JggWqeEmVYAFryx2P0VRtUtlWJfh60pYVC1jdxdwzumfGJv3QI2PXgleCC32zrhIQDFXNhay4qrgwZ2wqWlOXptNywqZjy5Ra1s0Fm6W05pxracSU8dc4fES3LfYYKRC4TENf7MkVlDG6jL5IOwRyG_o63i7ZeXCbhFc_OWfvD_dvi6dy-fL4vLhbltDwJpc-aO1kW9etW3Ur1SnQ3jXGqVZCp0GoIMFLhxw0St2CEagCF75tpEcIspmz5vQX4pBSxGB3kbYuflrB7UHaru1R2h6kLVd2lB6p7hcFlI-7c3S0-Ye9PbE4au0J46GDPaCniJCtH-hP_huAH3cF
CitedBy_id crossref_primary_10_1016_j_scico_2017_01_002
crossref_primary_10_1016_j_cl_2015_11_001
crossref_primary_10_1017_S1471068421000272
crossref_primary_10_1017_S1471068418000091
crossref_primary_10_1007_s10270_024_01161_5
crossref_primary_10_1145_3409805
crossref_primary_10_1145_3393934_3278125
crossref_primary_10_1016_j_scico_2016_11_002
crossref_primary_10_1017_S1471068421000211
Cites_doi 10.1145/1646353.1646372
10.1145/1965724.1965743
10.1016/0304-3975(95)00148-4
10.1016/S0743-1066(98)10002-X
10.1017/S1471068411000627
10.1017/S147106840200145X
10.1007/BF03037639
10.1007/s10009-007-0044-z
10.1145/271510.271525
10.1016/0743-1066(94)90033-7
10.1145/1592434.1592438
ContentType Journal Article
Copyright 2014 Elsevier B.V.
Copyright_xml – notice: 2014 Elsevier B.V.
DBID 6I.
AAFTH
AAYXX
CITATION
DOI 10.1016/j.scico.2014.05.017
DatabaseName ScienceDirect Open Access Titles
Elsevier:ScienceDirect:Open Access
CrossRef
DatabaseTitle CrossRef
DatabaseTitleList
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1872-7964
EndPage 175
ExternalDocumentID 10_1016_j_scico_2014_05_017
S0167642314002871
GroupedDBID --K
--M
.DC
.~1
0R~
123
1B1
1RT
1~.
1~5
4.4
457
4G.
5VS
6I.
7-5
71M
8P~
9JN
AACTN
AAEDW
AAFTH
AAIAV
AAIKJ
AAKOC
AALRI
AAOAW
AAQFI
AAXUO
AAYFN
ABBOA
ABJNI
ABMAC
ABVKL
ABXDB
ABYKQ
ACDAQ
ACGFS
ACRLP
ACZNC
ADBBV
ADEZE
ADHUB
AEBSH
AEKER
AENEX
AEXQZ
AFKWA
AFTJW
AGUBO
AGYEJ
AHHHB
AHZHX
AIALX
AIEXJ
AIKHN
AITUG
AJBFU
AJOXV
ALMA_UNASSIGNED_HOLDINGS
AMFUW
AMRAJ
AOUOD
AXJTR
BKOJK
BLXMC
CS3
DU5
E.L
EBS
EFJIC
EFLBG
EJD
EO8
EO9
EP2
EP3
FDB
FEDTE
FIRID
FNPLU
FYGXN
G-Q
GBLVA
GBOLZ
HVGLF
IHE
IXB
J1W
KOM
LG9
M26
M41
MO0
N9A
NCXOZ
O-L
O9-
OAUVE
OK1
OZT
P-8
P-9
P2P
PC.
Q38
RIG
ROL
RPZ
SDF
SDG
SDP
SES
SPC
SPCBC
SSV
SSZ
T5K
TN5
XPP
ZMT
~G-
9DU
AAEDT
AAQXK
AATTM
AAXKI
AAYWO
AAYXX
ABFNM
ABWVN
ACLOT
ACNNM
ACRPL
ACVFH
ADCNI
ADMUD
ADNMO
ADVLN
AEIPS
AEUPX
AFFNX
AFJKZ
AFPUW
AGHFR
AGQPQ
AIGII
AIIUN
AKBMS
AKRWK
AKYEP
ANKPU
APXCP
ASPBG
AVWKF
AZFZN
CITATION
EFKBS
FGOYB
G-2
HZ~
R2-
SEW
WUQ
ZY4
~HD
ID FETCH-LOGICAL-c303t-df66a48228ab9b595c6da37a584c96c15f4cd4ae0c6e468c71e5f01d834decf43
ISICitedReferencesCount 31
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000344578700002&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0167-6423
IngestDate Sat Nov 29 03:37:16 EST 2025
Tue Nov 18 22:27:57 EST 2025
Fri Feb 23 02:37:17 EST 2024
IsDoiOpenAccess true
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Keywords Software model checking
Constraint logic programming
Program specialization
Program transformation
Language English
License http://www.elsevier.com/open-access/userlicense/1.0
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-c303t-df66a48228ab9b595c6da37a584c96c15f4cd4ae0c6e468c71e5f01d834decf43
ORCID 0000-0002-7319-8439
OpenAccessLink https://dx.doi.org/10.1016/j.scico.2014.05.017
PageCount 27
ParticipantIDs crossref_primary_10_1016_j_scico_2014_05_017
crossref_citationtrail_10_1016_j_scico_2014_05_017
elsevier_sciencedirect_doi_10_1016_j_scico_2014_05_017
PublicationCentury 2000
PublicationDate 2014-12-01
2014-12-00
PublicationDateYYYYMMDD 2014-12-01
PublicationDate_xml – month: 12
  year: 2014
  text: 2014-12-01
  day: 01
PublicationDecade 2010
PublicationTitle Science of computer programming
PublicationYear 2014
Publisher Elsevier B.V
Publisher_xml – name: Elsevier B.V
References Clarke, Grumberg, Jha, Lu, Veith (br0060) 2000; vol. 1855
Podelski, Rybalchenko (br0410) 2007; vol. 4354
Cousot, Halbwachs (br0100) 1978
Gallagher (br0220) 1993
Grebenshchikov, Lopes, Popeea, Rybalchenko (br0240) 2012
Jhala, Majumdar (br0320) 2009; 21
Gupta, Rybalchenko (br0260) 2009; vol. 5643
McCarthy (br0360) 1963
Ball, Levin, Rajamani (br0010) 2011; 54
De Angelis, Fioravanti, Pettorossi, Proietti (br0120) 2013; vol. 7844
Fioravanti, Pettorossi, Proietti, Senni (br0210) 2013; 13
Bjørner, McMillan, Rybalchenko (br0040) 2012
Etalle, Gabbrielli (br0160) 1996; 166
Leuschel, Martens, De Schreye (br0340) 1998; 20
Beyer (br0020) 2013; vol. 7795
Cousot, Ganty, Raskin (br0090) 2007; vol. 4634
Jaffar, Maher, Marriott, Stuckey (br0280) 1998; 37
Fioravanti, Pettorossi, Proietti (br0180) 2004; vol. 3049
Fioravanti, Pettorossi, Proietti, Senni (br0190) 2011; vol. 6945
Ranzato, Rossi-Doria, Tapparo (br0420) 2008; vol. 4905
Beyer, Henzinger, Jhala, Majumdar (br0030) 2007; 9
Saïdi (br0440) 2000; vol. 1824
Gulavani, Chakraborty, Nori, Rajamani (br0250) 2008; vol. 4963
De Angelis, Fioravanti, Pettorossi, Proietti (br0140) 2014; vol. 8318
Jaffar, Maher (br0270) 1994; 19
Cousot, Cousot (br0080) 1979
Fioravanti, Pettorossi, Proietti (br0170) 2001; vol. 2042
Cousot, Cousot (br0070) 1977
Jaffar, Santosa, Voicu (br0310) 2009; vol. 5732
Jaffar, Navas, Santosa (br0290) 2011
Leuschel, Bruynooghe (br0330) 2002; 2
Peralta, Gallagher, Saglam (br0400) 1998; vol. 1503
Leuschel, Massart (br0350) 2000; vol. 1817
Jaffar, Navas, Santosa (br0300) 2012
De Angelis, Fioravanti, Pettorossi, Proietti (br0130) 2013
De Angelis, Fioravanti, Pettorossi, Proietti (br0150) 2014; vol. 8413
Grebenshchikov, Gupta, Lopes, Popeea, Rybalchenko (br0230) 2012; vol. 7214
Necula, McPeak, Rahul, Weimer CIL (br0380) 2002; vol. 2304
Peralta, Gallagher (br0390) 2003; vol. 2664
Cui, Warren (br0110) 2000; vol. 1861
Rybalchenko (br0430) 2010; vol. 6174
Fioravanti, Pettorossi, Proietti, Senni (br0200) 2012; vol. 7225
Brough, Hogger (br0050) 1991; 9
Miller, Whalen, Cofer (br0370) 2010; 53
Peralta (10.1016/j.scico.2014.05.017_br0390) 2003; vol. 2664
Cui (10.1016/j.scico.2014.05.017_br0110) 2000; vol. 1861
Jaffar (10.1016/j.scico.2014.05.017_br0270) 1994; 19
Bjørner (10.1016/j.scico.2014.05.017_br0040) 2012
Clarke (10.1016/j.scico.2014.05.017_br0060) 2000; vol. 1855
Jaffar (10.1016/j.scico.2014.05.017_br0300)
Fioravanti (10.1016/j.scico.2014.05.017_br0170) 2001; vol. 2042
Fioravanti (10.1016/j.scico.2014.05.017_br0210) 2013; 13
Jaffar (10.1016/j.scico.2014.05.017_br0280) 1998; 37
Cousot (10.1016/j.scico.2014.05.017_br0090) 2007; vol. 4634
De Angelis (10.1016/j.scico.2014.05.017_br0150) 2014; vol. 8413
Fioravanti (10.1016/j.scico.2014.05.017_br0180) 2004; vol. 3049
Gallagher (10.1016/j.scico.2014.05.017_br0220) 1993
Gupta (10.1016/j.scico.2014.05.017_br0260) 2009; vol. 5643
Leuschel (10.1016/j.scico.2014.05.017_br0340) 1998; 20
Beyer (10.1016/j.scico.2014.05.017_br0030) 2007; 9
Cousot (10.1016/j.scico.2014.05.017_br0070) 1977
Cousot (10.1016/j.scico.2014.05.017_br0080) 1979
Fioravanti (10.1016/j.scico.2014.05.017_br0190) 2011; vol. 6945
Ranzato (10.1016/j.scico.2014.05.017_br0420) 2008; vol. 4905
Gulavani (10.1016/j.scico.2014.05.017_br0250) 2008; vol. 4963
Jaffar (10.1016/j.scico.2014.05.017_br0290) 2011
De Angelis (10.1016/j.scico.2014.05.017_br0120) 2013; vol. 7844
Fioravanti (10.1016/j.scico.2014.05.017_br0200) 2012; vol. 7225
Grebenshchikov (10.1016/j.scico.2014.05.017_br0230) 2012; vol. 7214
Rybalchenko (10.1016/j.scico.2014.05.017_br0430) 2010; vol. 6174
De Angelis (10.1016/j.scico.2014.05.017_br0130) 2013
Etalle (10.1016/j.scico.2014.05.017_br0160) 1996; 166
Ball (10.1016/j.scico.2014.05.017_br0010) 2011; 54
Jhala (10.1016/j.scico.2014.05.017_br0320) 2009; 21
Jaffar (10.1016/j.scico.2014.05.017_br0310) 2009; vol. 5732
Leuschel (10.1016/j.scico.2014.05.017_br0330) 2002; 2
Grebenshchikov (10.1016/j.scico.2014.05.017_br0240) 2012
McCarthy (10.1016/j.scico.2014.05.017_br0360) 1963
Podelski (10.1016/j.scico.2014.05.017_br0410) 2007; vol. 4354
Leuschel (10.1016/j.scico.2014.05.017_br0350) 2000; vol. 1817
Necula (10.1016/j.scico.2014.05.017_br0380) 2002; vol. 2304
Peralta (10.1016/j.scico.2014.05.017_br0400) 1998; vol. 1503
Saïdi (10.1016/j.scico.2014.05.017_br0440) 2000; vol. 1824
Beyer (10.1016/j.scico.2014.05.017_br0020) 2013; vol. 7795
Brough (10.1016/j.scico.2014.05.017_br0050) 1991; 9
Miller (10.1016/j.scico.2014.05.017_br0370) 2010; 53
De Angelis (10.1016/j.scico.2014.05.017_br0140) 2014; vol. 8318
Cousot (10.1016/j.scico.2014.05.017_br0100) 1978
References_xml – volume: vol. 4905
  start-page: 248
  year: 2008
  end-page: 262
  ident: br0420
  article-title: A forward–backward abstraction refinement algorithm
  publication-title: Proceedings of the 9th International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI '08
– volume: vol. 1855
  start-page: 154
  year: 2000
  end-page: 169
  ident: br0060
  article-title: Counterexample-guided abstraction refinement
  publication-title: Proceedings of the 12th International Conference on Computer Aided Verification, CAV '00
– volume: vol. 8318
  start-page: 182
  year: 2014
  end-page: 202
  ident: br0140
  article-title: Verifying array programs by transforming verification conditions
  publication-title: Proceedings of the 15th International Conference on Verification, Model Checking, and Abstract Interpretation, VMCAI '14
– volume: 13
  start-page: 175
  year: 2013
  end-page: 199
  ident: br0210
  article-title: Generalization strategies for the verification of infinite state systems
  publication-title: Theory Pract. Log. Program.
– volume: vol. 4354
  start-page: 245
  year: 2007
  end-page: 259
  ident: br0410
  article-title: ARMC: the logical choice for software model checking with abstraction refinement
  publication-title: Practical Aspects of Declarative Languages, PADL '07
– volume: vol. 6174
  start-page: 57
  year: 2010
  end-page: 71
  ident: br0430
  article-title: Constraint solving for program verification: theory and practice by example
  publication-title: Proceedings of the 22nd International Conference on Computer Aided Verification, CAV '10
– volume: 37
  start-page: 1
  year: 1998
  end-page: 46
  ident: br0280
  article-title: The semantics of constraint logic programming
  publication-title: J. Log. Program.
– volume: vol. 1824
  start-page: 377
  year: 2000
  end-page: 396
  ident: br0440
  article-title: Model checking guided abstraction and analysis
  publication-title: Proceedings of the 7th International Symposium on Static Analysis, SAS '00
– volume: vol. 1861
  start-page: 478
  year: 2000
  end-page: 492
  ident: br0110
  article-title: A system for tabled constraint logic programming
  publication-title: Proceedings of the First International Conference on Computational Logic, CL '00
– volume: vol. 2304
  start-page: 209
  year: 2002
  end-page: 265
  ident: br0380
  article-title: Intermediate language and tools for analysis and transformation of C programs
  publication-title: Compiler Construction
– volume: 19
  start-page: 503
  year: 1994
  end-page: 581
  ident: br0270
  article-title: Constraint logic programming: a survey
  publication-title: J. Log. Program.
– volume: 53
  start-page: 58
  year: 2010
  end-page: 64
  ident: br0370
  article-title: Software model checking takes off
  publication-title: Commun. ACM
– volume: vol. 7795
  start-page: 594
  year: 2013
  end-page: 609
  ident: br0020
  article-title: Second competition on software verification (summary of SV-COMP 2013)
  publication-title: Proceedings of the 19th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS '13
– volume: vol. 6945
  start-page: 165
  year: 2011
  end-page: 179
  ident: br0190
  article-title: Improving reachability analysis of infinite state systems by specialization
  publication-title: Proceedings of the 5th International Workshop on Reachability Problems (RP '11)
– volume: vol. 5732
  start-page: 454
  year: 2009
  end-page: 469
  ident: br0310
  article-title: An interpolation method for CLP traversal
  publication-title: Principles and Practice of Constraint Programming, CP '09
– start-page: 84
  year: 1978
  end-page: 96
  ident: br0100
  article-title: Automatic discovery of linear restraints among variables of a program
  publication-title: Proceedings of the Fifth ACM Symposium on Principles of Programming Languages, POPL '78
– year: 2012
  ident: br0300
  article-title: TRACER: a symbolic execution tool for verification
– volume: vol. 2042
  year: 2001
  ident: br0170
  article-title: Automated strategies for specializing constraint logic programs
  publication-title: Proceedings of the Tenth International Workshop on Logic-Based Program Synthesis and Transformation, LOPSTR '00
– volume: vol. 4963
  start-page: 443
  year: 2008
  end-page: 458
  ident: br0250
  article-title: Automatically refining abstract interpretations
  publication-title: Proceedings of the 12th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS '08
– volume: vol. 4634
  start-page: 333
  year: 2007
  end-page: 348
  ident: br0090
  article-title: Fixpoint-guided abstraction refinements
  publication-title: Proceedings of the 14th International Symposium on Static Analysis, SAS '07
– volume: 166
  start-page: 101
  year: 1996
  end-page: 146
  ident: br0160
  article-title: Transformations of CLP modules
  publication-title: Theor. Comput. Sci.
– volume: 2
  start-page: 461
  year: 2002
  end-page: 515
  ident: br0330
  article-title: Logic program specialisation through partial deduction: control issues
  publication-title: Theory Pract. Log. Program.
– start-page: 3
  year: 2012
  end-page: 11
  ident: br0040
  article-title: Program verification as satisfiability modulo theories
  publication-title: Proceedings of the 10th International Workshop on Satisfiability Modulo Theories, SMT-COMP '12
– volume: vol. 7214
  start-page: 549
  year: 2012
  end-page: 551
  ident: br0230
  article-title: HSF(C): a software verifier based on Horn clauses
  publication-title: Proc. of the 18th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS '12
– start-page: 43
  year: 2013
  end-page: 52
  ident: br0130
  article-title: Verifying programs via iterated specialization
  publication-title: Proceedings of the ACM SIGPLAN 2013 Workshop on Partial Evaluation and Program Manipulation, PEPM '13
– start-page: 21
  year: 1963
  end-page: 28
  ident: br0360
  article-title: Towards a mathematical science of computation
  publication-title: Information Processing: Proceedings of IFIP 1962
– volume: 20
  start-page: 208
  year: 1998
  end-page: 258
  ident: br0340
  article-title: Controlling generalization and polyvariance in partial deduction of normal logic programs
  publication-title: ACM Trans. Program. Lang. Syst.
– start-page: 269
  year: 1979
  end-page: 282
  ident: br0080
  article-title: Systematic design of program analysis frameworks
  publication-title: Proceedings of the Sixth ACM-SIGPLAN Symposium on Principles of Programming Languages (POPL '79)
– volume: 9
  start-page: 505
  year: 2007
  end-page: 525
  ident: br0030
  article-title: The software model checker Blast: applications to software engineering
  publication-title: Int. J. Softw. Tools Technol. Transf.
– volume: 9
  start-page: 115
  year: 1991
  end-page: 134
  ident: br0050
  article-title: Grammar-related transformations of logic programs
  publication-title: New Gener. Comput.
– volume: vol. 7844
  start-page: 51
  year: 2013
  end-page: 70
  ident: br0120
  article-title: Specialization with constrained generalization for software model checking
  publication-title: Proceedings of the 22nd International Symposium Logic-Based Program Synthesis and Transformation, LOPSTR '12
– year: 2011
  ident: br0290
  article-title: Symbolic execution for verification
– volume: vol. 7225
  start-page: 106
  year: 2012
  end-page: 122
  ident: br0200
  article-title: Using real relaxations during program specialization
  publication-title: Logic-Based Program Synthesis and Transformation – 21st International Symposium, LOPSTR '11, Revised Selected Papers
– start-page: 405
  year: 2012
  end-page: 416
  ident: br0240
  article-title: Synthesizing software verifiers from proof rules
  publication-title: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI '12
– volume: 21
  start-page: 1
  year: 2009
  ident: br0320
  article-title: Software model checking
  publication-title: ACM Comput. Surv.
– start-page: 88
  year: 1993
  end-page: 98
  ident: br0220
  article-title: Tutorial on specialisation of logic programs
  publication-title: Proceedings of the 1993 ACM SIGPLAN Symposium on Partial Evaluation and Semantics Based Program Manipulation, PEPM '93
– start-page: 238
  year: 1977
  end-page: 252
  ident: br0070
  article-title: Abstract interpretation: a unified lattice model for static analysis of programs by construction of approximation of fixpoints
  publication-title: Proceedings of the 4th ACM-SIGPLAN Symposium on Principles of Programming Languages, POPL '77
– volume: vol. 1503
  start-page: 246
  year: 1998
  end-page: 261
  ident: br0400
  article-title: Analysis of imperative programs through analysis of constraint logic programs
  publication-title: Proceedings of the 5th International Symposium on Static Analysis, SAS '98
– volume: vol. 5643
  start-page: 634
  year: 2009
  end-page: 640
  ident: br0260
  article-title: InvGen: an efficient invariant generator
  publication-title: Proceedings of the 21st International Conference on Computer Aided Verification, CAV '09
– volume: vol. 2664
  start-page: 90
  year: 2003
  end-page: 108
  ident: br0390
  article-title: Convex hull abstractions in specialization of CLP programs
  publication-title: Logic Based Program Synthesis and Transformation, 12th International Workshop, LOPSTR '02, Revised Selected Papers
– volume: vol. 3049
  start-page: 292
  year: 2004
  end-page: 340
  ident: br0180
  article-title: Transformation rules for locally stratified constraint logic programs
  publication-title: Program Development in Computational Logic
– volume: 54
  start-page: 68
  year: 2011
  end-page: 76
  ident: br0010
  article-title: A decade of software model checking with SLAM
  publication-title: Commun. ACM
– volume: vol. 8413
  start-page: 568
  year: 2014
  end-page: 574
  ident: br0150
  article-title: VeriMAP: a tool for verifying programs through transformations
  publication-title: Proceedings of the 20th International Conference on Tools and Algorithms for the Construction and Analysis of Systems TACAS '14
– volume: vol. 1817
  start-page: 63
  year: 2000
  end-page: 82
  ident: br0350
  article-title: Infinite state model checking by abstract interpretation and program specialization
  publication-title: Proceedings of the 9th International Workshop on Logic-Based Program Synthesis and Transformation, LOPSTR '99
– volume: vol. 2664
  start-page: 90
  year: 2003
  ident: 10.1016/j.scico.2014.05.017_br0390
  article-title: Convex hull abstractions in specialization of CLP programs
– volume: vol. 8413
  start-page: 568
  year: 2014
  ident: 10.1016/j.scico.2014.05.017_br0150
  article-title: VeriMAP: a tool for verifying programs through transformations
– volume: vol. 6945
  start-page: 165
  year: 2011
  ident: 10.1016/j.scico.2014.05.017_br0190
  article-title: Improving reachability analysis of infinite state systems by specialization
– volume: vol. 2304
  start-page: 209
  year: 2002
  ident: 10.1016/j.scico.2014.05.017_br0380
  article-title: Intermediate language and tools for analysis and transformation of C programs
– volume: vol. 4905
  start-page: 248
  year: 2008
  ident: 10.1016/j.scico.2014.05.017_br0420
  article-title: A forward–backward abstraction refinement algorithm
– volume: vol. 8318
  start-page: 182
  year: 2014
  ident: 10.1016/j.scico.2014.05.017_br0140
  article-title: Verifying array programs by transforming verification conditions
– volume: vol. 4354
  start-page: 245
  year: 2007
  ident: 10.1016/j.scico.2014.05.017_br0410
  article-title: ARMC: the logical choice for software model checking with abstraction refinement
– volume: 53
  start-page: 58
  issue: 2
  year: 2010
  ident: 10.1016/j.scico.2014.05.017_br0370
  article-title: Software model checking takes off
  publication-title: Commun. ACM
  doi: 10.1145/1646353.1646372
– volume: vol. 7844
  start-page: 51
  year: 2013
  ident: 10.1016/j.scico.2014.05.017_br0120
  article-title: Specialization with constrained generalization for software model checking
– volume: vol. 6174
  start-page: 57
  year: 2010
  ident: 10.1016/j.scico.2014.05.017_br0430
  article-title: Constraint solving for program verification: theory and practice by example
– volume: 54
  start-page: 68
  issue: 7
  year: 2011
  ident: 10.1016/j.scico.2014.05.017_br0010
  article-title: A decade of software model checking with SLAM
  publication-title: Commun. ACM
  doi: 10.1145/1965724.1965743
– volume: 166
  start-page: 101
  year: 1996
  ident: 10.1016/j.scico.2014.05.017_br0160
  article-title: Transformations of CLP modules
  publication-title: Theor. Comput. Sci.
  doi: 10.1016/0304-3975(95)00148-4
– start-page: 21
  year: 1963
  ident: 10.1016/j.scico.2014.05.017_br0360
  article-title: Towards a mathematical science of computation
– start-page: 3
  year: 2012
  ident: 10.1016/j.scico.2014.05.017_br0040
  article-title: Program verification as satisfiability modulo theories
– volume: vol. 4634
  start-page: 333
  year: 2007
  ident: 10.1016/j.scico.2014.05.017_br0090
  article-title: Fixpoint-guided abstraction refinements
– volume: vol. 7214
  start-page: 549
  year: 2012
  ident: 10.1016/j.scico.2014.05.017_br0230
  article-title: HSF(C): a software verifier based on Horn clauses
– volume: vol. 5643
  start-page: 634
  year: 2009
  ident: 10.1016/j.scico.2014.05.017_br0260
  article-title: InvGen: an efficient invariant generator
– volume: 37
  start-page: 1
  year: 1998
  ident: 10.1016/j.scico.2014.05.017_br0280
  article-title: The semantics of constraint logic programming
  publication-title: J. Log. Program.
  doi: 10.1016/S0743-1066(98)10002-X
– volume: 13
  start-page: 175
  issue: 2
  year: 2013
  ident: 10.1016/j.scico.2014.05.017_br0210
  article-title: Generalization strategies for the verification of infinite state systems
  publication-title: Theory Pract. Log. Program.
  doi: 10.1017/S1471068411000627
– volume: 2
  start-page: 461
  issue: 4&5
  year: 2002
  ident: 10.1016/j.scico.2014.05.017_br0330
  article-title: Logic program specialisation through partial deduction: control issues
  publication-title: Theory Pract. Log. Program.
  doi: 10.1017/S147106840200145X
– volume: vol. 1503
  start-page: 246
  year: 1998
  ident: 10.1016/j.scico.2014.05.017_br0400
  article-title: Analysis of imperative programs through analysis of constraint logic programs
– start-page: 43
  year: 2013
  ident: 10.1016/j.scico.2014.05.017_br0130
  article-title: Verifying programs via iterated specialization
– volume: vol. 1824
  start-page: 377
  year: 2000
  ident: 10.1016/j.scico.2014.05.017_br0440
  article-title: Model checking guided abstraction and analysis
– start-page: 269
  year: 1979
  ident: 10.1016/j.scico.2014.05.017_br0080
  article-title: Systematic design of program analysis frameworks
– volume: 9
  start-page: 115
  issue: 1
  year: 1991
  ident: 10.1016/j.scico.2014.05.017_br0050
  article-title: Grammar-related transformations of logic programs
  publication-title: New Gener. Comput.
  doi: 10.1007/BF03037639
– volume: vol. 5732
  start-page: 454
  year: 2009
  ident: 10.1016/j.scico.2014.05.017_br0310
  article-title: An interpolation method for CLP traversal
– volume: vol. 7795
  start-page: 594
  year: 2013
  ident: 10.1016/j.scico.2014.05.017_br0020
  article-title: Second competition on software verification (summary of SV-COMP 2013)
– volume: vol. 1861
  start-page: 478
  year: 2000
  ident: 10.1016/j.scico.2014.05.017_br0110
  article-title: A system for tabled constraint logic programming
– start-page: 84
  year: 1978
  ident: 10.1016/j.scico.2014.05.017_br0100
  article-title: Automatic discovery of linear restraints among variables of a program
– start-page: 238
  year: 1977
  ident: 10.1016/j.scico.2014.05.017_br0070
  article-title: Abstract interpretation: a unified lattice model for static analysis of programs by construction of approximation of fixpoints
– volume: vol. 3049
  start-page: 292
  year: 2004
  ident: 10.1016/j.scico.2014.05.017_br0180
  article-title: Transformation rules for locally stratified constraint logic programs
– start-page: 88
  year: 1993
  ident: 10.1016/j.scico.2014.05.017_br0220
  article-title: Tutorial on specialisation of logic programs
– start-page: 405
  year: 2012
  ident: 10.1016/j.scico.2014.05.017_br0240
  article-title: Synthesizing software verifiers from proof rules
– volume: 9
  start-page: 505
  issue: 5
  year: 2007
  ident: 10.1016/j.scico.2014.05.017_br0030
  article-title: The software model checker Blast: applications to software engineering
  publication-title: Int. J. Softw. Tools Technol. Transf.
  doi: 10.1007/s10009-007-0044-z
– volume: vol. 7225
  start-page: 106
  year: 2012
  ident: 10.1016/j.scico.2014.05.017_br0200
  article-title: Using real relaxations during program specialization
– volume: 20
  start-page: 208
  issue: 1
  year: 1998
  ident: 10.1016/j.scico.2014.05.017_br0340
  article-title: Controlling generalization and polyvariance in partial deduction of normal logic programs
  publication-title: ACM Trans. Program. Lang. Syst.
  doi: 10.1145/271510.271525
– volume: vol. 1855
  start-page: 154
  year: 2000
  ident: 10.1016/j.scico.2014.05.017_br0060
  article-title: Counterexample-guided abstraction refinement
– volume: 19
  start-page: 503
  issue: 20
  year: 1994
  ident: 10.1016/j.scico.2014.05.017_br0270
  article-title: Constraint logic programming: a survey
  publication-title: J. Log. Program.
  doi: 10.1016/0743-1066(94)90033-7
– volume: vol. 4963
  start-page: 443
  year: 2008
  ident: 10.1016/j.scico.2014.05.017_br0250
  article-title: Automatically refining abstract interpretations
– ident: 10.1016/j.scico.2014.05.017_br0300
– volume: 21
  start-page: 1
  year: 2009
  ident: 10.1016/j.scico.2014.05.017_br0320
  article-title: Software model checking
  publication-title: ACM Comput. Surv.
  doi: 10.1145/1592434.1592438
– volume: vol. 2042
  year: 2001
  ident: 10.1016/j.scico.2014.05.017_br0170
  article-title: Automated strategies for specializing constraint logic programs
– year: 2011
  ident: 10.1016/j.scico.2014.05.017_br0290
– volume: vol. 1817
  start-page: 63
  year: 2000
  ident: 10.1016/j.scico.2014.05.017_br0350
  article-title: Infinite state model checking by abstract interpretation and program specialization
SSID ssj0006471
Score 2.276548
Snippet We present a method for verifying properties of imperative programs by using techniques based on the specialization of constraint logic programs (CLP). We...
SourceID crossref
elsevier
SourceType Enrichment Source
Index Database
Publisher
StartPage 149
SubjectTerms Constraint logic programming
Program specialization
Program transformation
Software model checking
Title Program verification via iterated specialization
URI https://dx.doi.org/10.1016/j.scico.2014.05.017
Volume 95
WOSCitedRecordID wos000344578700002&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: 1872-7964
  dateEnd: 20180131
  omitProxy: false
  ssIdentifier: ssj0006471
  issn: 0167-6423
  databaseCode: AIEXJ
  dateStart: 19950201
  isFulltext: true
  titleUrlDefault: https://www.sciencedirect.com
  providerName: Elsevier
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV07T8MwELZ4DSy8EW9lYINUdeL4MSJUBEggBpC6RY5joyIIqC2In885ttPwUAUDS5Q6zSX1ne8-u5_vEDosjSEF1SamnBUxISqNJeVpnEom4QPmpeR1sQl2fc37fXHj6bajupwAqyr-_i5e_lXV0AbKtltn_6DuRig0wDkoHY6gdjj-SvE3jnF1BC9uaUBOwW8DeeQSKAPAHLma834HZhuehpHuuea23ENgcD2FGGdRr01mcq99KfVepzECu98foLmjCJx1Jn53bDMlwPCrXdGkffg8gEt161WnvQCBSYvM4dckwdfCNCZtO1WRtbwidllJfYDFrlTKN9_tlhEeYFYPY8CS7ojLqcomoSr8Pf8lgjW8wkBZe8hrIbkVknezHITMovmEZQIc3_zJRa9_2YRr6mblza8IqalqEuC3d_kZvrQgye0KWvJziejE2cAqmtHVGloOdToir8x11PUmEbVNIgKTiIJJRJ9NYgPdnfVuT89jXykjVgBBxnFpKJUEsB6XhSgykSlaypRJQJdKUIUzQ1RJpO4qqgnlimGdmS4ueUpKrQxJN9Fc9VzpLRSJAifQgBNsFDGKcZBtRGKEAXCsU7yNktABufJp5G01k8d8Sudvo-PmpheXRWX612no2dwDQQfwcrCVaTfu_O05u2hxYtB7aG48fNX7aEG9jQej4YE3lA-1N4B_
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=Program+verification+via+iterated+specialization&rft.jtitle=Science+of+computer+programming&rft.au=De+Angelis%2C+E.&rft.au=Fioravanti%2C+F.&rft.au=Pettorossi%2C+A.&rft.au=Proietti%2C+M.&rft.date=2014-12-01&rft.issn=0167-6423&rft.volume=95&rft.spage=149&rft.epage=175&rft_id=info:doi/10.1016%2Fj.scico.2014.05.017&rft.externalDBID=n%2Fa&rft.externalDocID=10_1016_j_scico_2014_05_017
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0167-6423&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0167-6423&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0167-6423&client=summon