{"title":"具有共享变量的并行程序的基于跟踪的验证","authors":"S. Gjessing, E. Munthe-Kaas","doi":"10.1109/HICSS.1989.48005","DOIUrl":null,"url":null,"abstract":"A partial correctness proof method for a language with parallel programs and shared variables based on reasoning about process traces is presented. A main advantage of the approach is that properties of each process are first proved in isolation. The properties of the complete system are then found by using these process properties in a proof rule for parallel composition. This supports a modular construction and verification technique. A (mythical) trace variable is added to each process. When a Boolean expression is evaluated, a side effect is to record in the trace variable, the expression and its (Boolean) value. Write operations are also recorded in the trace. It is possible to reduce the amount of information recorded in the trace variable and hence make the proofs of weak properties even more manageable. An example verification is given.<<ETX>>","PeriodicalId":325958,"journal":{"name":"[1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1989-01-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":"{\"title\":\"Trace based verification of parallel programs with shared variables\",\"authors\":\"S. Gjessing, E. Munthe-Kaas\",\"doi\":\"10.1109/HICSS.1989.48005\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"A partial correctness proof method for a language with parallel programs and shared variables based on reasoning about process traces is presented. A main advantage of the approach is that properties of each process are first proved in isolation. The properties of the complete system are then found by using these process properties in a proof rule for parallel composition. This supports a modular construction and verification technique. A (mythical) trace variable is added to each process. When a Boolean expression is evaluated, a side effect is to record in the trace variable, the expression and its (Boolean) value. Write operations are also recorded in the trace. It is possible to reduce the amount of information recorded in the trace variable and hence make the proofs of weak properties even more manageable. An example verification is given.<<ETX>>\",\"PeriodicalId\":325958,\"journal\":{\"name\":\"[1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track\",\"volume\":\"7 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1989-01-03\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"3\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"[1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/HICSS.1989.48005\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"[1989] Proceedings of the Twenty-Second Annual Hawaii International Conference on System Sciences. Volume II: Software Track","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/HICSS.1989.48005","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Trace based verification of parallel programs with shared variables
A partial correctness proof method for a language with parallel programs and shared variables based on reasoning about process traces is presented. A main advantage of the approach is that properties of each process are first proved in isolation. The properties of the complete system are then found by using these process properties in a proof rule for parallel composition. This supports a modular construction and verification technique. A (mythical) trace variable is added to each process. When a Boolean expression is evaluated, a side effect is to record in the trace variable, the expression and its (Boolean) value. Write operations are also recorded in the trace. It is possible to reduce the amount of information recorded in the trace variable and hence make the proofs of weak properties even more manageable. An example verification is given.<>