{"title":"HOL中机械化程序验证","authors":"Sten Agerholm","doi":"10.1109/HOL.1991.596288","DOIUrl":null,"url":null,"abstract":"Proofs of program correctness are usually large and complex. This advocates mechanical assistance for managing the complexity and details of proofs. This paper presents a program verifier for imperative programs based on the HOL system. We describe a formalization of the weakest precondition semantics of a small programming language, a verification condition generator for total correctness specafications, and a number of simplification tools for proving subparts of verification conditions, automatically. Examples are considered an order to evaluate the usability of the program verifier.","PeriodicalId":213603,"journal":{"name":"1991., International Workshop on the HOL Theorem Proving System and Its Applications","volume":"4 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1991-08-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"24","resultStr":"{\"title\":\"Mechanizing Program Verification in HOL\",\"authors\":\"Sten Agerholm\",\"doi\":\"10.1109/HOL.1991.596288\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Proofs of program correctness are usually large and complex. This advocates mechanical assistance for managing the complexity and details of proofs. This paper presents a program verifier for imperative programs based on the HOL system. We describe a formalization of the weakest precondition semantics of a small programming language, a verification condition generator for total correctness specafications, and a number of simplification tools for proving subparts of verification conditions, automatically. Examples are considered an order to evaluate the usability of the program verifier.\",\"PeriodicalId\":213603,\"journal\":{\"name\":\"1991., International Workshop on the HOL Theorem Proving System and Its Applications\",\"volume\":\"4 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1991-08-28\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"24\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"1991., International Workshop on the HOL Theorem Proving System and Its Applications\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/HOL.1991.596288\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"1991., International Workshop on the HOL Theorem Proving System and Its Applications","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HOL.1991.596288","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Proofs of program correctness are usually large and complex. This advocates mechanical assistance for managing the complexity and details of proofs. This paper presents a program verifier for imperative programs based on the HOL system. We describe a formalization of the weakest precondition semantics of a small programming language, a verification condition generator for total correctness specafications, and a number of simplification tools for proving subparts of verification conditions, automatically. Examples are considered an order to evaluate the usability of the program verifier.