{"title":"Testing-Based Formal Verification for Algorithmic Function Theorems and Its Application to Software Verification and Validation","authors":"Shaoying Liu","doi":"10.1109/ISSSR.2016.010","DOIUrl":null,"url":null,"abstract":"After briefly discussing the strength and weakness of the major techniques for verification of software, such as formal proof, model checking, program analysis, software review, and software testing, we put forward a testing-based formal verification (TBFV) technique to check algorithmic function theorems that represent software properties. An algorithmic function theorem is a first-order logic theorem in which mathematical functions may be defined with an executable algorithm rather than with a mathematical expression. The testing-based formal verification is used to check the validity of the theorem using predicate-based testing. We also propose a scenario-based approach to applying the technique to verify and validate programs. Both the benefits and challenges of the technique are discussed to indicate the potential applications and future research directions.","PeriodicalId":257409,"journal":{"name":"2016 International Symposium on System and Software Reliability (ISSSR)","volume":"58 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 International Symposium on System and Software Reliability (ISSSR)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ISSSR.2016.010","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3
Abstract
After briefly discussing the strength and weakness of the major techniques for verification of software, such as formal proof, model checking, program analysis, software review, and software testing, we put forward a testing-based formal verification (TBFV) technique to check algorithmic function theorems that represent software properties. An algorithmic function theorem is a first-order logic theorem in which mathematical functions may be defined with an executable algorithm rather than with a mathematical expression. The testing-based formal verification is used to check the validity of the theorem using predicate-based testing. We also propose a scenario-based approach to applying the technique to verify and validate programs. Both the benefits and challenges of the technique are discussed to indicate the potential applications and future research directions.