Automation of C Program Deductive Verification without Using Loop Invariants

Automation of C program verification is an important problem in modern software development. To solve this problem, the solution of the following problems must be automated: loop invariants, proof of verification conditions, and localization of errors in the case of invalid verification conditions....

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Programming and computer software Jg. 48; H. 5; S. 331 - 346
Hauptverfasser: Kondratyev, D. A., Nepomniaschy, V. A.
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Moscow Pleiades Publishing 01.10.2022
Springer Nature B.V
Schlagworte:
ISSN:0361-7688, 1608-3261
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Abstract Automation of C program verification is an important problem in modern software development. To solve this problem, the solution of the following problems must be automated: loop invariants, proof of verification conditions, and localization of errors in the case of invalid verification conditions. To this end, the C-lightVer system is under development in the Ershov Institute of Informatics Systems of the Siberian Branch of the Russian Academy of Sciences. This system uses an integrated approach to the automated deductive verification of C programs. This approach includes a symbolic method of verification of definite iterations for eliminating loop invariants, strategies for proving verification conditions, and a method for error localization. The symbolic method of verification of definite iterations is based on replacing the action of certain loops by the application of a special recursive function rep. The error localization method is based on matching the verification conditions to the source code and on generation of a report about the correspondence between the verification conditions and program fragments. Thus, the problem of automation of verification of C programs containing nested loops naturally arises. The application of the symbolic method of verification of definite iterations for such programs leads to a composition of the functions rep for outer and inner loops. A novel result obtained in this paper is a strategy of automation of proof of verification conditions for such programs. This strategy is based on induction on the index of iteration in the outer loop. To prove the induction step, another result obtained in this paper is used. This is a strategy for programs the specification of which contains functions with the concatenation property. The paper also describes strategies of error localization and modifications of the error localization method for the case of nested loops. These strategies are also used for verifying the loop properties that may indicate the presence of errors. As an example of applying the results obtained in this paper, automatic verification of insertion sort without loop invariants is considered.
AbstractList Automation of C program verification is an important problem in modern software development. To solve this problem, the solution of the following problems must be automated: loop invariants, proof of verification conditions, and localization of errors in the case of invalid verification conditions. To this end, the C-lightVer system is under development in the Ershov Institute of Informatics Systems of the Siberian Branch of the Russian Academy of Sciences. This system uses an integrated approach to the automated deductive verification of C programs. This approach includes a symbolic method of verification of definite iterations for eliminating loop invariants, strategies for proving verification conditions, and a method for error localization. The symbolic method of verification of definite iterations is based on replacing the action of certain loops by the application of a special recursive function rep. The error localization method is based on matching the verification conditions to the source code and on generation of a report about the correspondence between the verification conditions and program fragments. Thus, the problem of automation of verification of C programs containing nested loops naturally arises. The application of the symbolic method of verification of definite iterations for such programs leads to a composition of the functions rep for outer and inner loops. A novel result obtained in this paper is a strategy of automation of proof of verification conditions for such programs. This strategy is based on induction on the index of iteration in the outer loop. To prove the induction step, another result obtained in this paper is used. This is a strategy for programs the specification of which contains functions with the concatenation property. The paper also describes strategies of error localization and modifications of the error localization method for the case of nested loops. These strategies are also used for verifying the loop properties that may indicate the presence of errors. As an example of applying the results obtained in this paper, automatic verification of insertion sort without loop invariants is considered.
Automation of C program verification is an important problem in modern software development. To solve this problem, the solution of the following problems must be automated: loop invariants, proof of verification conditions, and localization of errors in the case of invalid verification conditions. To this end, the C-lightVer system is under development in the Ershov Institute of Informatics Systems of the Siberian Branch of the Russian Academy of Sciences. This system uses an integrated approach to the automated deductive verification of C programs. This approach includes a symbolic method of verification of definite iterations for eliminating loop invariants, strategies for proving verification conditions, and a method for error localization. The symbolic method of verification of definite iterations is based on replacing the action of certain loops by the application of a special recursive function rep. The error localization method is based on matching the verification conditions to the source code and on generation of a report about the correspondence between the verification conditions and program fragments. Thus, the problem of automation of verification of C programs containing nested loops naturally arises. The application of the symbolic method of verification of definite iterations for such programs leads to a composition of the functions rep for outer and inner loops. A novel result obtained in this paper is a strategy of automation of proof of verification conditions for such programs. This strategy is based on induction on the index of iteration in the outer loop. To prove the induction step, another result obtained in this paper is used. This is a strategy for programs the specification of which contains functions with the concatenation property. The paper also describes strategies of error localization and modifications of the error localization method for the case of nested loops. These strategies are also used for verifying the loop properties that may indicate the presence of errors. As an example of applying the results obtained in this paper, automatic verification of insertion sort without loop invariants is considered.
Author Kondratyev, D. A.
Nepomniaschy, V. A.
Author_xml – sequence: 1
  givenname: D. A.
  orcidid: 0000-0002-9387-6735
  surname: Kondratyev
  fullname: Kondratyev, D. A.
  email: apple-66@mail.ru
  organization: A. P. Ershov Institute of Informatics Systems, Siberian Branch, Russian Academy of Sciences
– sequence: 2
  givenname: V. A.
  orcidid: 0000-0003-1364-5281
  surname: Nepomniaschy
  fullname: Nepomniaschy, V. A.
  organization: A. P. Ershov Institute of Informatics Systems, Siberian Branch, Russian Academy of Sciences
BookMark eNp1kN1LwzAUxYNMcJv-Ab4FfK7mq1n6OObXoKCgE99KmiY1wyUzSSf-97ZU8EF8uvdyfudcODMwcd5pAM4xusSYsqsnRDlecCEIQTlC-esRmGKOREYJxxMwHeRs0E_ALMYtQhghxqagXHbJ72Sy3kFv4Ao-Bt8GuYPXuulUsgcNX3SwxqqR-bTpzXcJbqJ1LSy938O1O8hgpUvxFBwb-R712c-cg83tzfPqPisf7tarZZkpXIiUccOE4nVOa8mIUVQbLYxeGFSLBplGFYbltab9TXkhJGuIoawZFsm5lorOwcWYuw_-o9MxVVvfBde_rEiBRV4QVvCewiOlgo8xaFPtg93J8FVhVA2lVX9K6z1k9MSeda0Ov8n_m74BpdtxhA
Cites_doi 10.1016/j.jlamp.2018.05.003
10.4204/EPTCS.284.1
10.4204/EPTCS.338.10
10.1023/B:PACS.0000004134.24714.e5
10.1007/978-3-030-03421-4_15
10.1007/978-3-030-11932-4_7
10.1007/978-3-540-79980-1_12
10.3103/S0146411620070093
10.1007/s11086-005-0007-7
10.3103/S0146411614070141
10.1145/363235.363259
10.1109/ITNEC.2017.8284998
10.1145/3477355.3477359
10.3103/S0146411619070101
10.1145/2506375
10.4204/EPTCS.296.8
10.1134/S0361768820040027
10.1007/978-3-030-37487-7_20
10.1007/s10817-017-9426-4
10.1007/978-3-642-45221-5_27
10.1007/978-3-030-81688-9_42
10.1007/s10009-012-0223-4
10.1023/A:1021045909505
10.1109/TSE.2015.2431688
10.1109/ISPRAS.2018.00012
10.1007/978-3-030-41600-3_6
10.1007/s00165-019-00490-3
10.1007/978-3-030-20652-9_6
10.1007/s00165-019-00501-3
10.1007/978-3-319-73721-8_11
10.1007/978-3-030-40271-6_20
10.1145/3470569
10.1007/978-3-319-13338-6_8
10.1007/978-3-030-63461-2_14
10.1145/2489837.2489838
10.1016/j.entcs.2009.05.052
10.1007/978-3-030-23250-4_9
10.1134/S0361768816050054
10.1016/j.jlamp.2021.100645
10.1145/3453483.3454036
10.1145/3477355.3477362
10.1007/978-3-030-88701-8_20
10.1007/978-3-030-16722-6
10.1007/978-3-030-53291-8_14
ContentType Journal Article
Copyright Pleiades Publishing, Ltd. 2022. ISSN 0361-7688, Programming and Computer Software, 2022, Vol. 48, No. 5, pp. 331–346. © Pleiades Publishing, Ltd., 2022. Russian Text © The Author(s), 2022, published in Programmirovanie, 2022, Vol. 48, No. 5.
Copyright_xml – notice: Pleiades Publishing, Ltd. 2022. ISSN 0361-7688, Programming and Computer Software, 2022, Vol. 48, No. 5, pp. 331–346. © Pleiades Publishing, Ltd., 2022. Russian Text © The Author(s), 2022, published in Programmirovanie, 2022, Vol. 48, No. 5.
DBID AAYXX
CITATION
8FE
8FG
AFKRA
ARAPS
AZQEC
BENPR
BGLVJ
CCPQU
DWQXO
GNUQQ
HCIFZ
JQ2
K7-
P5Z
P62
PHGZM
PHGZT
PKEHL
PQEST
PQGLB
PQQKQ
PQUKI
DOI 10.1134/S036176882205005X
DatabaseName CrossRef
ProQuest SciTech Collection
ProQuest Technology Collection
ProQuest Central UK/Ireland
Advanced Technologies & Computer Science Collection
ProQuest Central Essentials
ProQuest Central
Technology collection
ProQuest One Community College
ProQuest Central
ProQuest Central Student
SciTech Premium Collection
ProQuest Computer Science Collection
Computer Science Database
ProQuest advanced technologies & aerospace journals
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Premium
ProQuest One Academic
ProQuest One Academic Middle East (New)
ProQuest One Academic Eastern Edition (DO NOT USE)
ProQuest One Applied & Life Sciences
ProQuest One Academic (retired)
ProQuest One Academic UKI Edition
DatabaseTitle CrossRef
Advanced Technologies & Aerospace Collection
Computer Science Database
ProQuest Central Student
Technology Collection
ProQuest One Academic Middle East (New)
ProQuest Advanced Technologies & Aerospace Collection
ProQuest Central Essentials
ProQuest Computer Science Collection
ProQuest One Academic Eastern Edition
SciTech Premium Collection
ProQuest One Community College
ProQuest Technology Collection
ProQuest SciTech Collection
ProQuest Central
Advanced Technologies & Aerospace Database
ProQuest One Applied & Life Sciences
ProQuest One Academic UKI Edition
ProQuest Central Korea
ProQuest Central (New)
ProQuest One Academic
ProQuest One Academic (New)
DatabaseTitleList Advanced Technologies & Aerospace Collection

Database_xml – sequence: 1
  dbid: P5Z
  name: ProQuest advanced technologies & aerospace journals
  url: https://search.proquest.com/hightechjournals
  sourceTypes: Aggregation Database
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISSN 1608-3261
EndPage 346
ExternalDocumentID 10_1134_S036176882205005X
GroupedDBID -59
-5G
-BR
-EM
-Y2
-~C
.86
.DC
.VR
06D
0R~
0VY
123
1N0
29P
2J2
2JN
2JY
2KG
2KM
2LR
2P1
2VQ
2~H
30V
4.4
406
408
409
40D
40E
5VS
67Z
6NX
8TC
95-
95.
95~
96X
AAAVM
AABHQ
AACDK
AAHNG
AAIAL
AAJBT
AAJKR
AANZL
AARHV
AARTL
AASML
AATNV
AATVU
AAUYE
AAWCG
AAYIU
AAYQN
AAYTO
AAYZH
ABAKF
ABBBX
ABBXA
ABDZT
ABECU
ABFTD
ABFTV
ABHQN
ABJNI
ABJOX
ABKCH
ABKTR
ABMNI
ABMQK
ABNWP
ABQBU
ABQSL
ABSXP
ABTEG
ABTHY
ABTKH
ABTMW
ABULA
ABWNU
ABXPI
ACAOD
ACBXY
ACDTI
ACGFS
ACHSB
ACHXU
ACKNC
ACMDZ
ACMLO
ACOKC
ACOMO
ACPIV
ACSNA
ACZOJ
ADHHG
ADHIR
ADINQ
ADKNI
ADKPE
ADRFC
ADTPH
ADURQ
ADYFF
ADZKW
AEBTG
AEFQL
AEGAL
AEGNC
AEJHL
AEJRE
AEMSY
AENEX
AEOHA
AEPYU
AETLH
AEVLU
AEXYK
AFBBN
AFGCZ
AFKRA
AFLOW
AFQWF
AFWTZ
AFZKB
AGAYW
AGDGC
AGJBK
AGMZJ
AGQMX
AGRTI
AGWIL
AGWZB
AGYKE
AHAVH
AHBYD
AHKAY
AHSBF
AHYZX
AIAKS
AIGIU
AIIXL
AILAN
AITGF
AJBLW
AJRNO
ALMA_UNASSIGNED_HOLDINGS
ALWAN
AMKLP
AMXSW
AMYLF
AMYQR
AOCGG
ARAPS
ARMRJ
ASPBG
AVWKF
AXYYD
AZFZN
B-.
BA0
BDATZ
BENPR
BGLVJ
BGNMA
BSONS
CAG
CCPQU
COF
CS3
CSCUP
DDRTE
DL5
DNIVK
DPUIP
DU5
EBLON
EBS
EIOEI
EJD
ESBYG
FEDTE
FERAY
FFXSO
FIGPU
FINBP
FNLPD
FRRFC
FSGXE
FWDCC
GGCAI
GGRSB
GJIRD
GNWQR
GQ6
GQ7
GQ8
GXS
H13
HCIFZ
HF~
HG6
HMJXF
HQYDN
HRMNR
HVGLF
HZ~
IHE
IJ-
IKXTQ
IWAJR
IXC
IXD
IXE
IZIGR
IZQ
I~X
I~Z
J-C
JBSCW
JCJTX
JZLTJ
K7-
KDC
KOV
LAK
LLZTM
M4Y
MA-
N2Q
NB0
NPVJJ
NQJWS
NU0
O9-
O93
O9J
OAM
OVD
P2P
P9O
PF0
PT4
QOS
R89
R9I
RIG
RNI
RNS
ROL
RPX
RSV
RZC
RZE
S16
S1Z
S27
S3B
SAP
SCO
SDH
SHX
SISQX
SJYHP
SNE
SNPRN
SNX
SOHCF
SOJ
SPISZ
SRMVM
SSLCW
STPWE
SZN
T13
TEORI
TN5
TSG
TSK
TSV
TUC
U2A
UG4
UOJIU
UTJUX
UZXMN
VC2
VFIZW
W23
W48
WK8
XU3
YLTOR
Z7R
Z7X
Z83
Z88
ZMTXR
~A9
AAPKM
AAYXX
ABDBE
ABFSG
ABRTQ
ACSTC
ADHKG
AEZWR
AFDZB
AFFHD
AFHIU
AFOHR
AGQPQ
AHPBZ
AHWEU
AIXLP
ATHPR
CITATION
PHGZM
PHGZT
PQGLB
8FE
8FG
AZQEC
DWQXO
GNUQQ
JQ2
P62
PKEHL
PQEST
PQQKQ
PQUKI
ID FETCH-LOGICAL-c198t-6f48c6b53ba42fc3efe8fe7f0b8d0fdc9f45be3f0b3698a4d2f34d8a4da66eac3
IEDL.DBID P5Z
ISICitedReferencesCount 0
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000853051800004&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0361-7688
IngestDate Fri Nov 07 23:33:39 EST 2025
Sat Nov 29 04:55:44 EST 2025
Fri Feb 21 02:44:49 EST 2025
IsPeerReviewed true
IsScholarly true
Issue 5
Language English
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c198t-6f48c6b53ba42fc3efe8fe7f0b8d0fdc9f45be3f0b3698a4d2f34d8a4da66eac3
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ORCID 0000-0002-9387-6735
0000-0003-1364-5281
PQID 2918592496
PQPubID 2043762
PageCount 16
ParticipantIDs proquest_journals_2918592496
crossref_primary_10_1134_S036176882205005X
springer_journals_10_1134_S036176882205005X
PublicationCentury 2000
PublicationDate 20221000
2022-10-00
20221001
PublicationDateYYYYMMDD 2022-10-01
PublicationDate_xml – month: 10
  year: 2022
  text: 20221000
PublicationDecade 2020
PublicationPlace Moscow
PublicationPlace_xml – name: Moscow
– name: New York
PublicationTitle Programming and computer software
PublicationTitleAbbrev Program Comput Soft
PublicationYear 2022
Publisher Pleiades Publishing
Springer Nature B.V
Publisher_xml – name: Pleiades Publishing
– name: Springer Nature B.V
References Denney, E. and Fischer, B., Explaining verification conditions, Proc. AMAST 2008. Lect. Notes Comput. Sci., 2008, vol. 5140, pp. 145–159.
Blanchard, A., Loulergue, F., and Kosmatov, N., Towards full proof automation in Frama-C using auto-active verification, Proc. NFM 2019. Lect. Notes Comput. Sci., 2019, vol. 11460, pp. 88–105.
BeckerB.LourençoC.B.MarchéC.Explaining counterexamples with giant-step assertion checking, Proc. F-IDE 2021.Electron. Proc. Theor. Comput. Sci.2021338828810.4204/EPTCS.338.10
MooreJ.S.Milestones from the pure lisp theorem prover to ACL2Formal Aspects Comput.201931699732403904010.1007/s00165-019-00490-3
Sammler, M., Lepigre, R., Krebbers, R., Memarian, K., Dreyer, D., and Garg, D., RefinedC: Automating the foundational verification of C code with refined ownership types, Proc. 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation, 2021, pp. 158–174.
Imine, A. and Ranise, S., Building satisfiability procedures for verification: The case study of sorting algorithms, Proc. LOPSTR’03, 2003.
DaillerS.MarchéC.MoyY.Lightweight interactive proving inside an automatic program verifier, Proc. F-IDE 2018Electron. Proc. in Theoretical Computer Science201828411510.4204/EPTCS.284.1
HähnleR.HuismanM.Deductive software verification: From pen-and-paper proofs to industrial tools, Comput.20191482.68139
Raad, A., Berdine, J., Dang, H.H., Dreyer, D., O’Hearn, P., and Villard, J., Local reasoning about the presence of bugs: Incorrectness separation logic, Proc. CAV 2020. Lect. Notes Comput. Sci., 2020, vol. 12225, pp. 225–252.
BaudinP.BobotF.BühlerD.CorrensonL.KirchnerF.KosmatovN.MaronezeA.PerrelleV.PrevostoV.SignolesJ.WilliamsN.The dogged pursuit of bug-free C programs: the Frama-C software analysis platformCommun. ACM202164566810.1145/3470569
SrivastavaS.GulwaniS.FosterJ.S.Template-based program verification and program synthesisInt. J. Software Tools Technol. Transfer20131549751810.1007/s10009-012-0223-4
Maryasov, I.V., Nepomniaschy, V.A., Promsky, A.V., and Kondratyev, D.A., Automatic C program verification based on mixed axiomatic semantics Autom. Control Comput. Sci., 2014, vol. 48, pp. 407–414.
Kondratyev, D., Maryasov, I., and Nepomniaschy, V., Towards automatic deductive verification of C programs over linear arrays, Proc. PSI 2019. Lect. Notes Comput. Sci., 2019, vol. 11964, pp. 232–242.
Volkov, G., Mandrykin, M., and Efremov, D., Lemma functions for Frama-C: C programs as proofs, Proc. 2018 Ivannikov ISP RAS Open Conference, 2018, pp. 31–38.
NepomniaschyV.A.AnureevI.S.MikhailovI.N.PromskiiA.V.Towards verification of C programs. C-light language and its formal semanticsProgram. Comput. Software200228314323202363110.1023/A:1021045909505
Filliâtre, J.-C., Simpler proofs with decentralized invariants, J. Logical Algebraic Methods Program., 2021, vol. 121, Article ID: 100645.
Jiang, D., and Zhou, M., A comparative study of insertion sorting algorithm verification, Proc. 2017 IEEE 2nd Information Technology, Networking, Electronic and Automation Control Conference, 2017, pp. 321–325.
Humenberger, A., Jaroschek, M., and Kovács, L., Invariant generation for multi-path loops with polynomial assignments, Proc. VMCAI 2018. Lect. Notes Comput. Sci., 2018, vol. 10747, pp. 226–246.
KondratyevD.A.PromskyA.V.The complex approach of the C-lightVer system to the automated error localization in C-ProgramsAutom. Control Comput. Sci.20205472873910.3103/S0146411620070093
NepomniaschyV.A.Symbolic method of verification of definite iterations over altered data structuresProgram. Comput. Software20053119214113110.1007/s11086-005-0007-7
de AngelisE.FioravantiF.PettorossiA.ProiettiM.Proving properties of sorting programs: A case study in Horn clause verification, Proc. HCVS/PERR 2019.Electron. Proc. Theor. Comput. Sci.2019296487510.4204/EPTCS.296.8
de Carvalho, D., Hussain, R., Khan, A., Khazeev, M., Lee, JY., Masiagin, S., Mazzara, M., Mustafin, R., Naumchev, A., and Rivera, V., Teaching programming and design-by-contract, Proc. ICL 2018, Advances in Intelligent Systems and Computing, 2020, vol. 916, pp. 68–76.
KondratyevD.A.MaryasovI.V.NepomniaschyV.A.The automation of C Program verification by the symbolic method of loop invariant eliminationAutom. Control Comput. Sci.20195365366210.3103/S0146411619070101
DaillerS.HauzarD.MarchéC.MoyY.Instrumenting a weakest precondition calculus for counterexample generationJ. Logical Algebraic Methods Program.20189997113381116810.1016/j.jlamp.2018.05.003
MandrykinM.U.KhoroshilovA.V.Towards deductive verification of C programs with shared dataProgram. Comput. Software20164232433210.1134/S0361768816050054
AnureevI.S.GaraninaN.O.LyakhT.V.RozovA.S.ZyubinV.E.GorlatchS.P.Dedicative verification of Reflex programsProgram. Comput. Software202046261272413686710.1134/S0361768820040027
NepomniaschyV.A.AnureevI.S.PromskiiA.V.Towards verification of C programs: Axiomatic semantics of the C-kernel languageProgram. Comput. Software200329338350208279210.1023/B:PACS.0000004134.24714.e5
Müller, P. and Shankar, N., The first fifteen years of the verified software project, Theories of Programming: The Life and Works of Tony Hoare, 2021, pp. 93–124.
Furia, C.A., Meyer, B., and Velder, S., Loop invariants: Analysis, classification, and examples, ACM Comput. Surveys, 2014, vol. 46, no. 3, Article 34, pp. 1–51.
Blanc, R., Kuncak, V., Kneuss, E., and Suter, P., An overview of the Leon verification system: verification by translation to recursive functions, Proc. 4th Workshop on Scala. 2013. Article 1, pp. 1–10.
Safari, M. and Huisman, M., A Generic approach to the verification of the permutation property of sequential and parallel swap-based sorting algorithms, Proc. IFM 2020. Lect. Notes Comput. Sci., 2020, vol. 12546, pp. 257–275.
Tuerk, T., Local reasoning about while-loops, Proc. Theory Workshop at VSTTE 2010, 2010, pp. 29–39.
Kondratyev, D.A., Automatic verification of insertion sorting. https://bitbucket.org/Kondratyev/verify-loops. Cited November 11, 2021.
Filliâtre, J.–C. and Magaud, N., Certification of sorting algorithms in the Coq system, Proc. conf. on “Theorem Proving in Higher Order Logics: Emerging Trends,” Nice, 1999.
AptK.R.OlderogE.-R.Fifty years of Hoare’s logicFormal Aspects Comput.201931751807403904210.1007/s00165-019-00501-3
Apt, K.R. and Olderog, E.-R., Assessing the success and impact of Hoare’s logic, Theories of Programming: The Life and Works of Tony Hoare, 2021, pp. 41–76.
de GouwS.de BoerF.S.BubelR.HähnleR.RotJ.SteinhöfelD.Verifying OpenJDK’s sort method for generic collectionsJ. Autom. Reasoning20196293126390195610.1007/s10817-017-9426-4
Efremov, D., Mandrykin, M., and Khoroshilov, A., Deductive verification of unmodified Linux kernel library functions, Proc. ISoLA 2018, Lect. Notes Comput. Sci., 2018, vol. 11245, pp. 216–234.
HoareC.A.R.An axiomatic basis for computer programmingCommun. ACM19691257658010.1145/363235.363259
MyreenM.O.GordonM.J.C.Transforming programs into recursive functionsElectron. Notes Theor. Comput. Sci.200924018520010.1016/j.entcs.2009.05.052
Chakraborty, S., Gupta, A., and Unadkat, D., Inductive reasoning of array programs using difference invariants, Proc. of CAV 2021. Lect. Notes Comput. Sci., 2021, vol. 12760, pp. 911–935.
Khazeev, M., Mazzara, M., Aslam, H., and de Carvalho, D., Towards a broader acceptance of formal verification tools, Proc. ICL 2019. Advances in Intelligent Systems and Computing, 2020, vol . 1135, pp. 188–200.
GaleottiJ.P.FuriaC.A.MayE.FraserG.ZellerA.Inferring loop invariants by mutation, dynamic analysis, and static checkingIEEE Trans. Software Eng.2015411019103710.1109/TSE.2015.2431688
Könighofer, R., Toegl, R., and Bloem, R., Automatic error localization for software using deductive verification, Proc. HVC 2014. Lect. Notes Comput. Sci., 2014, vol. 8855, pp. 92–98.
Johansson, M., Lemma discovery for induction, Proc. CICM 2019. Lect. Notes Comput. Sci., 2019, vol. 11617, pp. 125–139.
Heras, J., Komendantskaya, E., Johansson, M., and Maclean, E., Proof-pattern recognition and lemma discovery in ACL2, Proc. LPAR 2013. Lect. Notes Comput. Sci., 2013, vol. 8312, pp. 389–406.
Grebing, S., Klamroth, J., and Ulbrich, M., Seamless Interactive Program Verification, Proc. VSTTE 2019. Lect. Notes Comput. Sci., 2020. vol. 12031, pp. 68–86.
Möller, B., O’Hearn, P., and Hoare, T., On algebra of program correctness and incorrectness, Proc. RAMiCS 2021. Lect. Notes Comput. Sci., 2021, vol. 13027, pp. 325–343.
P. Baudin (3680_CR29) 2021; 64
K.R. Apt (3680_CR5) 2019; 31
D.A. Kondratyev (3680_CR9) 2019; 53
3680_CR7
J.P. Galeotti (3680_CR18) 2015; 41
3680_CR8
M.O. Myreen (3680_CR14) 2009; 240
3680_CR3
3680_CR4
3680_CR40
3680_CR20
3680_CR42
3680_CR41
S. Srivastava (3680_CR19) 2013; 15
3680_CR22
S. Dailler (3680_CR31) 2018; 99
3680_CR44
3680_CR21
3680_CR43
I.S. Anureev (3680_CR47) 2020; 46
R. Hähnle (3680_CR2) 2019
3680_CR24
3680_CR23
3680_CR26
3680_CR48
3680_CR25
3680_CR28
3680_CR27
S. Dailler (3680_CR38) 2018; 284
V.A. Nepomniaschy (3680_CR46) 2003; 29
V.A. Nepomniaschy (3680_CR12) 2005; 31
M.U. Mandrykin (3680_CR39) 2016; 42
V.A. Nepomniaschy (3680_CR45) 2002; 28
C.A.R. Hoare (3680_CR6) 1969; 12
E. de Angelis (3680_CR30) 2019; 296
3680_CR1
3680_CR33
3680_CR10
B. Becker (3680_CR32) 2021; 338
D.A. Kondratyev (3680_CR11) 2020; 54
3680_CR34
3680_CR15
S. de Gouw (3680_CR35) 2019; 62
3680_CR37
3680_CR36
3680_CR17
3680_CR16
J.S. Moore (3680_CR13) 2019; 31
References_xml – reference: HähnleR.HuismanM.Deductive software verification: From pen-and-paper proofs to industrial tools, Comput.20191482.68139
– reference: HoareC.A.R.An axiomatic basis for computer programmingCommun. ACM19691257658010.1145/363235.363259
– reference: DaillerS.MarchéC.MoyY.Lightweight interactive proving inside an automatic program verifier, Proc. F-IDE 2018Electron. Proc. in Theoretical Computer Science201828411510.4204/EPTCS.284.1
– reference: Filliâtre, J.–C. and Magaud, N., Certification of sorting algorithms in the Coq system, Proc. conf. on “Theorem Proving in Higher Order Logics: Emerging Trends,” Nice, 1999.
– reference: Könighofer, R., Toegl, R., and Bloem, R., Automatic error localization for software using deductive verification, Proc. HVC 2014. Lect. Notes Comput. Sci., 2014, vol. 8855, pp. 92–98.
– reference: Möller, B., O’Hearn, P., and Hoare, T., On algebra of program correctness and incorrectness, Proc. RAMiCS 2021. Lect. Notes Comput. Sci., 2021, vol. 13027, pp. 325–343.
– reference: NepomniaschyV.A.AnureevI.S.MikhailovI.N.PromskiiA.V.Towards verification of C programs. C-light language and its formal semanticsProgram. Comput. Software200228314323202363110.1023/A:1021045909505
– reference: Volkov, G., Mandrykin, M., and Efremov, D., Lemma functions for Frama-C: C programs as proofs, Proc. 2018 Ivannikov ISP RAS Open Conference, 2018, pp. 31–38.
– reference: GaleottiJ.P.FuriaC.A.MayE.FraserG.ZellerA.Inferring loop invariants by mutation, dynamic analysis, and static checkingIEEE Trans. Software Eng.2015411019103710.1109/TSE.2015.2431688
– reference: MyreenM.O.GordonM.J.C.Transforming programs into recursive functionsElectron. Notes Theor. Comput. Sci.200924018520010.1016/j.entcs.2009.05.052
– reference: Safari, M. and Huisman, M., A Generic approach to the verification of the permutation property of sequential and parallel swap-based sorting algorithms, Proc. IFM 2020. Lect. Notes Comput. Sci., 2020, vol. 12546, pp. 257–275.
– reference: de Carvalho, D., Hussain, R., Khan, A., Khazeev, M., Lee, JY., Masiagin, S., Mazzara, M., Mustafin, R., Naumchev, A., and Rivera, V., Teaching programming and design-by-contract, Proc. ICL 2018, Advances in Intelligent Systems and Computing, 2020, vol. 916, pp. 68–76.
– reference: Blanc, R., Kuncak, V., Kneuss, E., and Suter, P., An overview of the Leon verification system: verification by translation to recursive functions, Proc. 4th Workshop on Scala. 2013. Article 1, pp. 1–10.
– reference: Imine, A. and Ranise, S., Building satisfiability procedures for verification: The case study of sorting algorithms, Proc. LOPSTR’03, 2003.
– reference: MooreJ.S.Milestones from the pure lisp theorem prover to ACL2Formal Aspects Comput.201931699732403904010.1007/s00165-019-00490-3
– reference: BaudinP.BobotF.BühlerD.CorrensonL.KirchnerF.KosmatovN.MaronezeA.PerrelleV.PrevostoV.SignolesJ.WilliamsN.The dogged pursuit of bug-free C programs: the Frama-C software analysis platformCommun. ACM202164566810.1145/3470569
– reference: Raad, A., Berdine, J., Dang, H.H., Dreyer, D., O’Hearn, P., and Villard, J., Local reasoning about the presence of bugs: Incorrectness separation logic, Proc. CAV 2020. Lect. Notes Comput. Sci., 2020, vol. 12225, pp. 225–252.
– reference: SrivastavaS.GulwaniS.FosterJ.S.Template-based program verification and program synthesisInt. J. Software Tools Technol. Transfer20131549751810.1007/s10009-012-0223-4
– reference: KondratyevD.A.MaryasovI.V.NepomniaschyV.A.The automation of C Program verification by the symbolic method of loop invariant eliminationAutom. Control Comput. Sci.20195365366210.3103/S0146411619070101
– reference: Denney, E. and Fischer, B., Explaining verification conditions, Proc. AMAST 2008. Lect. Notes Comput. Sci., 2008, vol. 5140, pp. 145–159.
– reference: KondratyevD.A.PromskyA.V.The complex approach of the C-lightVer system to the automated error localization in C-ProgramsAutom. Control Comput. Sci.20205472873910.3103/S0146411620070093
– reference: Blanchard, A., Loulergue, F., and Kosmatov, N., Towards full proof automation in Frama-C using auto-active verification, Proc. NFM 2019. Lect. Notes Comput. Sci., 2019, vol. 11460, pp. 88–105.
– reference: Apt, K.R. and Olderog, E.-R., Assessing the success and impact of Hoare’s logic, Theories of Programming: The Life and Works of Tony Hoare, 2021, pp. 41–76.
– reference: de AngelisE.FioravantiF.PettorossiA.ProiettiM.Proving properties of sorting programs: A case study in Horn clause verification, Proc. HCVS/PERR 2019.Electron. Proc. Theor. Comput. Sci.2019296487510.4204/EPTCS.296.8
– reference: NepomniaschyV.A.AnureevI.S.PromskiiA.V.Towards verification of C programs: Axiomatic semantics of the C-kernel languageProgram. Comput. Software200329338350208279210.1023/B:PACS.0000004134.24714.e5
– reference: AnureevI.S.GaraninaN.O.LyakhT.V.RozovA.S.ZyubinV.E.GorlatchS.P.Dedicative verification of Reflex programsProgram. Comput. Software202046261272413686710.1134/S0361768820040027
– reference: Kondratyev, D.A., Automatic verification of insertion sorting. https://bitbucket.org/Kondratyev/verify-loops. Cited November 11, 2021.
– reference: Maryasov, I.V., Nepomniaschy, V.A., Promsky, A.V., and Kondratyev, D.A., Automatic C program verification based on mixed axiomatic semantics Autom. Control Comput. Sci., 2014, vol. 48, pp. 407–414.
– reference: NepomniaschyV.A.Symbolic method of verification of definite iterations over altered data structuresProgram. Comput. Software20053119214113110.1007/s11086-005-0007-7
– reference: Heras, J., Komendantskaya, E., Johansson, M., and Maclean, E., Proof-pattern recognition and lemma discovery in ACL2, Proc. LPAR 2013. Lect. Notes Comput. Sci., 2013, vol. 8312, pp. 389–406.
– reference: Grebing, S., Klamroth, J., and Ulbrich, M., Seamless Interactive Program Verification, Proc. VSTTE 2019. Lect. Notes Comput. Sci., 2020. vol. 12031, pp. 68–86.
– reference: Chakraborty, S., Gupta, A., and Unadkat, D., Inductive reasoning of array programs using difference invariants, Proc. of CAV 2021. Lect. Notes Comput. Sci., 2021, vol. 12760, pp. 911–935.
– reference: Müller, P. and Shankar, N., The first fifteen years of the verified software project, Theories of Programming: The Life and Works of Tony Hoare, 2021, pp. 93–124.
– reference: Furia, C.A., Meyer, B., and Velder, S., Loop invariants: Analysis, classification, and examples, ACM Comput. Surveys, 2014, vol. 46, no. 3, Article 34, pp. 1–51.
– reference: Johansson, M., Lemma discovery for induction, Proc. CICM 2019. Lect. Notes Comput. Sci., 2019, vol. 11617, pp. 125–139.
– reference: Filliâtre, J.-C., Simpler proofs with decentralized invariants, J. Logical Algebraic Methods Program., 2021, vol. 121, Article ID: 100645.
– reference: MandrykinM.U.KhoroshilovA.V.Towards deductive verification of C programs with shared dataProgram. Comput. Software20164232433210.1134/S0361768816050054
– reference: Sammler, M., Lepigre, R., Krebbers, R., Memarian, K., Dreyer, D., and Garg, D., RefinedC: Automating the foundational verification of C code with refined ownership types, Proc. 42nd ACM SIGPLAN International Conference on Programming Language Design and Implementation, 2021, pp. 158–174.
– reference: DaillerS.HauzarD.MarchéC.MoyY.Instrumenting a weakest precondition calculus for counterexample generationJ. Logical Algebraic Methods Program.20189997113381116810.1016/j.jlamp.2018.05.003
– reference: de GouwS.de BoerF.S.BubelR.HähnleR.RotJ.SteinhöfelD.Verifying OpenJDK’s sort method for generic collectionsJ. Autom. Reasoning20196293126390195610.1007/s10817-017-9426-4
– reference: Kondratyev, D., Maryasov, I., and Nepomniaschy, V., Towards automatic deductive verification of C programs over linear arrays, Proc. PSI 2019. Lect. Notes Comput. Sci., 2019, vol. 11964, pp. 232–242.
– reference: AptK.R.OlderogE.-R.Fifty years of Hoare’s logicFormal Aspects Comput.201931751807403904210.1007/s00165-019-00501-3
– reference: Khazeev, M., Mazzara, M., Aslam, H., and de Carvalho, D., Towards a broader acceptance of formal verification tools, Proc. ICL 2019. Advances in Intelligent Systems and Computing, 2020, vol . 1135, pp. 188–200.
– reference: Jiang, D., and Zhou, M., A comparative study of insertion sorting algorithm verification, Proc. 2017 IEEE 2nd Information Technology, Networking, Electronic and Automation Control Conference, 2017, pp. 321–325.
– reference: Efremov, D., Mandrykin, M., and Khoroshilov, A., Deductive verification of unmodified Linux kernel library functions, Proc. ISoLA 2018, Lect. Notes Comput. Sci., 2018, vol. 11245, pp. 216–234.
– reference: Humenberger, A., Jaroschek, M., and Kovács, L., Invariant generation for multi-path loops with polynomial assignments, Proc. VMCAI 2018. Lect. Notes Comput. Sci., 2018, vol. 10747, pp. 226–246.
– reference: BeckerB.LourençoC.B.MarchéC.Explaining counterexamples with giant-step assertion checking, Proc. F-IDE 2021.Electron. Proc. Theor. Comput. Sci.2021338828810.4204/EPTCS.338.10
– reference: Tuerk, T., Local reasoning about while-loops, Proc. Theory Workshop at VSTTE 2010, 2010, pp. 29–39.
– volume: 99
  start-page: 97
  year: 2018
  ident: 3680_CR31
  publication-title: J. Logical Algebraic Methods Program.
  doi: 10.1016/j.jlamp.2018.05.003
– ident: 3680_CR23
– volume: 284
  start-page: 1
  year: 2018
  ident: 3680_CR38
  publication-title: Electron. Proc. in Theoretical Computer Science
  doi: 10.4204/EPTCS.284.1
– volume: 338
  start-page: 82
  year: 2021
  ident: 3680_CR32
  publication-title: Electron. Proc. Theor. Comput. Sci.
  doi: 10.4204/EPTCS.338.10
– volume: 29
  start-page: 338
  year: 2003
  ident: 3680_CR46
  publication-title: Program. Comput. Software
  doi: 10.1023/B:PACS.0000004134.24714.e5
– ident: 3680_CR40
  doi: 10.1007/978-3-030-03421-4_15
– ident: 3680_CR41
  doi: 10.1007/978-3-030-11932-4_7
– ident: 3680_CR7
  doi: 10.1007/978-3-540-79980-1_12
– volume: 54
  start-page: 728
  year: 2020
  ident: 3680_CR11
  publication-title: Autom. Control Comput. Sci.
  doi: 10.3103/S0146411620070093
– volume: 31
  start-page: 1
  year: 2005
  ident: 3680_CR12
  publication-title: Program. Comput. Software
  doi: 10.1007/s11086-005-0007-7
– ident: 3680_CR8
  doi: 10.3103/S0146411614070141
– volume: 12
  start-page: 576
  year: 1969
  ident: 3680_CR6
  publication-title: Commun. ACM
  doi: 10.1145/363235.363259
– ident: 3680_CR44
  doi: 10.1109/ITNEC.2017.8284998
– ident: 3680_CR1
  doi: 10.1145/3477355.3477359
– volume: 53
  start-page: 653
  year: 2019
  ident: 3680_CR9
  publication-title: Autom. Control Comput. Sci.
  doi: 10.3103/S0146411619070101
– ident: 3680_CR4
  doi: 10.1145/2506375
– ident: 3680_CR26
– volume: 296
  start-page: 48
  year: 2019
  ident: 3680_CR30
  publication-title: Electron. Proc. Theor. Comput. Sci.
  doi: 10.4204/EPTCS.296.8
– volume: 46
  start-page: 261
  year: 2020
  ident: 3680_CR47
  publication-title: Program. Comput. Software
  doi: 10.1134/S0361768820040027
– ident: 3680_CR10
  doi: 10.1007/978-3-030-37487-7_20
– volume: 62
  start-page: 93
  year: 2019
  ident: 3680_CR35
  publication-title: J. Autom. Reasoning
  doi: 10.1007/s10817-017-9426-4
– ident: 3680_CR22
  doi: 10.1007/978-3-642-45221-5_27
– ident: 3680_CR17
  doi: 10.1007/978-3-030-81688-9_42
– volume: 15
  start-page: 497
  year: 2013
  ident: 3680_CR19
  publication-title: Int. J. Software Tools Technol. Transfer
  doi: 10.1007/s10009-012-0223-4
– volume: 28
  start-page: 314
  year: 2002
  ident: 3680_CR45
  publication-title: Program. Comput. Software
  doi: 10.1023/A:1021045909505
– volume: 41
  start-page: 1019
  year: 2015
  ident: 3680_CR18
  publication-title: IEEE Trans. Software Eng.
  doi: 10.1109/TSE.2015.2431688
– ident: 3680_CR27
  doi: 10.1109/ISPRAS.2018.00012
– ident: 3680_CR37
  doi: 10.1007/978-3-030-41600-3_6
– volume: 31
  start-page: 699
  year: 2019
  ident: 3680_CR13
  publication-title: Formal Aspects Comput.
  doi: 10.1007/s00165-019-00490-3
– ident: 3680_CR24
– ident: 3680_CR28
  doi: 10.1007/978-3-030-20652-9_6
– volume: 31
  start-page: 751
  year: 2019
  ident: 3680_CR5
  publication-title: Formal Aspects Comput.
  doi: 10.1007/s00165-019-00501-3
– ident: 3680_CR16
  doi: 10.1007/978-3-319-73721-8_11
– ident: 3680_CR42
  doi: 10.1007/978-3-030-40271-6_20
– volume: 64
  start-page: 56
  year: 2021
  ident: 3680_CR29
  publication-title: Commun. ACM
  doi: 10.1145/3470569
– ident: 3680_CR33
  doi: 10.1007/978-3-319-13338-6_8
– ident: 3680_CR25
  doi: 10.1007/978-3-030-63461-2_14
– ident: 3680_CR15
  doi: 10.1145/2489837.2489838
– volume: 240
  start-page: 185
  year: 2009
  ident: 3680_CR14
  publication-title: Electron. Notes Theor. Comput. Sci.
  doi: 10.1016/j.entcs.2009.05.052
– ident: 3680_CR21
  doi: 10.1007/978-3-030-23250-4_9
– volume: 42
  start-page: 324
  year: 2016
  ident: 3680_CR39
  publication-title: Program. Comput. Software
  doi: 10.1134/S0361768816050054
– ident: 3680_CR20
  doi: 10.1016/j.jlamp.2021.100645
– ident: 3680_CR43
  doi: 10.1145/3453483.3454036
– ident: 3680_CR3
  doi: 10.1145/3477355.3477362
– ident: 3680_CR36
  doi: 10.1007/978-3-030-88701-8_20
– volume-title: Deductive software verification: From pen-and-paper proofs to industrial tools, Comput.
  year: 2019
  ident: 3680_CR2
  doi: 10.1007/978-3-030-16722-6
– ident: 3680_CR34
  doi: 10.1007/978-3-030-53291-8_14
– ident: 3680_CR48
SSID ssj0010044
Score 2.225184
Snippet Automation of C program verification is an important problem in modern software development. To solve this problem, the solution of the following problems must...
SourceID proquest
crossref
springer
SourceType Aggregation Database
Index Database
Publisher
StartPage 331
SubjectTerms Artificial Intelligence
Automation
Computer Science
Errors
Integrated approach
Invariants
Linear algebra
Localization
Localization method
Machine learning
Nested loops
Operating Systems
Program verification (computers)
Recursive functions
Software development
Software Engineering
Software Engineering/Programming and Operating Systems
Source code
SummonAdditionalLinks – databaseName: SpringerLINK Contemporary 1997-Present
  dbid: RSV
  link: http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwnV07T8MwED5BYWChPEV5yQMTyCKJHdceq0IFUlVVKlTdosSxJZakatP-fs55UPEaYEqiWKfocr77zvcCuAlN6MeBsDQxXUt54MVUKm5pwBO8arQ6uuwzO-yORnI2U-O6jnvZZLs3IclSU1dzR_j9BHWtj-BYutJQlJ3ZNuyErgOSc9En04_QgQtRVgFKn7rldSjzRxKfjdEGYX4Jipa2ZtD-11cewH4NLUmvkoVD2DLZEbSbsQ2k3sXHMOytiryqWCS5JX0yrnK0yINr4-rUH5miXNr6NI-4o9p8VZAyu4AM83xOnrM1-tguheYEXgePL_0nWg9VoNpXsqDCcqlFErIk5oHVzFgjLf4nL5GpZ1OtLA8Tw_CZCSVjngaW8dTdxEKglman0MryzJwBiZXQPNSGx4gRELkpz0090ggCEqZTITpw23A3mle9M6LS52A8-sanDlw2_I_qbbSMAoVwwnmISOuu4ffm9a_Ezv-0-gL2AlfUUKboXUKrWKzMFezqdfG2XFyX0vUOjTPJEQ
  priority: 102
  providerName: Springer Nature
Title Automation of C Program Deductive Verification without Using Loop Invariants
URI https://link.springer.com/article/10.1134/S036176882205005X
https://www.proquest.com/docview/2918592496
Volume 48
WOSCitedRecordID wos000853051800004&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: PRVPQU
  databaseName: Computer Science Database
  customDbUrl:
  eissn: 1608-3261
  dateEnd: 20241214
  omitProxy: false
  ssIdentifier: ssj0010044
  issn: 0361-7688
  databaseCode: K7-
  dateStart: 20000101
  isFulltext: true
  titleUrlDefault: http://search.proquest.com/compscijour
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: ProQuest advanced technologies & aerospace journals
  customDbUrl:
  eissn: 1608-3261
  dateEnd: 20241214
  omitProxy: false
  ssIdentifier: ssj0010044
  issn: 0361-7688
  databaseCode: P5Z
  dateStart: 20000101
  isFulltext: true
  titleUrlDefault: https://search.proquest.com/hightechjournals
  providerName: ProQuest
– providerCode: PRVPQU
  databaseName: ProQuest Central
  customDbUrl:
  eissn: 1608-3261
  dateEnd: 20241214
  omitProxy: false
  ssIdentifier: ssj0010044
  issn: 0361-7688
  databaseCode: BENPR
  dateStart: 20000101
  isFulltext: true
  titleUrlDefault: https://www.proquest.com/central
  providerName: ProQuest
– providerCode: PRVAVX
  databaseName: SpringerLINK Contemporary 1997-Present
  customDbUrl:
  eissn: 1608-3261
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0010044
  issn: 0361-7688
  databaseCode: RSV
  dateStart: 20000101
  isFulltext: true
  titleUrlDefault: https://link.springer.com/search?facet-content-type=%22Journal%22
  providerName: Springer Nature
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpR1NS8Mw9OHUgxe_xekcOXhSwromzdqT-DFRHKM4HcNLadMEvLRz6_z95rWpQ0UvXvqRQijvvbzvD4BTT3nd2BWaJqqnKXedmPoB19TliblLI3Vk2Wd20BsO_ckkCK3DbW7TKmueWDLqNJfoI--4gZEsaCyIi-kbxalRGF21IzQasIZdEnB0Q-i9fEYRMFpZxSq71KjVvo1qdhnvjHAR17DQ1FDi5KtcWiqb3-Kjpdi53frvD2_DplU4yWVFITuworJd2KqHORB7tvdgcLko8qqOkeSaXJOwytwiN9jcFZkiGRtq1dbHR9CBmy8KUuYckEGeT8l99m4sb0ys2Yfn2_7T9R21oxao7AZ-QYXmvhSJx5KYu1oypZWvDfacxE8dncpAcy9RzLwzEfgxT13NeIoPsRCGd7MDWM3yTB0CiQMhuScVj43mYPS5wMFZSNKoBgmTqRBNOKsBHU2rjhpRaYkwHv3AShNaNXAje7jm0RKyTTiv0bP8_OtmR39vdgwbLtY2lJl6LVgtZgt1AuvyvXidz9qwdtUfho9taDz0aLukM3N9HI0_AI_P168
linkProvider ProQuest
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMw1R1LS8Mw-MMX6MW3OJ2ag16U4JakWXsQER9srA7BB7vVNk3ASztdp_in_I1-6cOhojcPntqmEJp-7zfArqOdZsikoZFuGSpYI6SuJwxlIsKrQqmj8j6zfqvXc_t972oC3qpaGJtWWfHEnFHHqbI-8kPmoWSxxoI8HjxSOzXKRlerERoFWnT16wuabMOjzhnCd4-xi_Ob0zYtpwpQhQZ2RqURrpKRw6NQMKO4Nto1-KGNyI0bJlaeEU6kOT5z6bmhiJnhIrY3oZTIpjjuOwnTgrvS9urvtuhH1MJGR4vYaJOiGu-WUdQmF4fXdtGu2cJWxPz-Zzk4Vm6_xGNzMXex8N9-0CLMlwo1OSkoYAkmdLIMC9WwClLyrhXwT0ZZWtRpktSQU3JVZKaRM9u81jJ9cofUaEofJrEO6nSUkTyngvhpOiCd5DlEek2y4Src_smZ1mAqSRO9DiT0pBKO0iJEzQj1Va9hZz0pVH0irmIpa7BfATYYFB1DgtzS4iL4hgU1qFfADErmMQzGkKzBQYUO49c_brbx-2Y7MNu-ufQDv9PrbsIcs3UceVZiHaayp5Heghn1nD0Mn7ZzrCZw_9dY8g7zeTXK
linkToPdf http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwpV3NT8IwFH9RNMaL-BlR1B48aRrY2pXuSEAicSFElHBbtq5NvGwEBn-_7dZJ_DoYT9vSplleX9_7vb4vgFtPek7kMoVj2VGYuu0Ic58q7NJYP4XWOqKoMxt0RiM-m_lj2-d0WUW7Vy7JMqfBVGlK89Y8UbYHCW1NtNx1NFDmJk1U89FsG3aoNmQMiz9Pph9uBOOuLJ2VDjbTrVvzxyU-K6YN2vziIC30zqD-7z8-hAMLOVG35JEj2JLpMdSrdg7Inu4TCLqrPCszGVGmUA-Ny9gt1DflXY1YRFPNr8re8iFzhZutclREHaAgy-ZomK617W1Ca07hdfDw0nvEttkCFo7Pc8wU5YLFHokj6ipBpJJc6f1rxzxpq0T4inqxJPqbMJ9HNHEVoYl5iRjT0pucQS3NUnkOKPKZoJ6QNNLYQSM6v226IQkNDmIiEsYacFdROpyXNTXCwhYhNPxGpwY0q70I7fFahq6vYYaxHPVa9xXtN8O_Lnbxp9k3sDfuD8JgOHq6hH3X5D0UUXxNqOWLlbyCXbHO35aL64Lp3gFIDtTZ
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=Automation+of+C+Program+Deductive+Verification+without+Using+Loop+Invariants&rft.jtitle=Programming+and+computer+software&rft.au=Kondratyev%2C+D.+A.&rft.au=Nepomniaschy%2C+V.+A.&rft.date=2022-10-01&rft.issn=0361-7688&rft.eissn=1608-3261&rft.volume=48&rft.issue=5&rft.spage=331&rft.epage=346&rft_id=info:doi/10.1134%2FS036176882205005X&rft.externalDBID=n%2Fa&rft.externalDocID=10_1134_S036176882205005X
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0361-7688&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0361-7688&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0361-7688&client=summon