{"title":"A computer program for discovering and proving recognition rules for Backus Normal Form grammars","authors":"R. L. London","doi":"10.1145/800257.808887","DOIUrl":null,"url":null,"abstract":"This paper is based upon a running computer program which will discover rules for the recognition of grammatical strings when given a simple Backus Normal Form (BNF) grammar [10]. The program attempts to prove that these rules are both necessary and sufficient to characterize grammatical strings. The main mathematical techniques that are mechanized are induction and case analysis. In addition, the program is capable of producing counter-examples. There are two reasons for writing this program. First, we are interested in constructing efficient recognizers for simple BNF grammars. Second, the task of proving that a proposed recognizer is indeed a recognizer is sufficiently complex and difficult to make it a convenient area for proving theorems by machines, especially theorems whose proofs may use fairly involved case analysis.","PeriodicalId":167902,"journal":{"name":"Proceedings of the 1964 19th ACM national conference","volume":"33 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1964-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 1964 19th ACM national conference","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/800257.808887","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2
Abstract
This paper is based upon a running computer program which will discover rules for the recognition of grammatical strings when given a simple Backus Normal Form (BNF) grammar [10]. The program attempts to prove that these rules are both necessary and sufficient to characterize grammatical strings. The main mathematical techniques that are mechanized are induction and case analysis. In addition, the program is capable of producing counter-examples. There are two reasons for writing this program. First, we are interested in constructing efficient recognizers for simple BNF grammars. Second, the task of proving that a proposed recognizer is indeed a recognizer is sufficiently complex and difficult to make it a convenient area for proving theorems by machines, especially theorems whose proofs may use fairly involved case analysis.
本文基于一个正在运行的计算机程序,当给定一个简单的巴克斯范式(Backus Normal Form, BNF)语法时,该程序将发现识别语法字符串的规则[10]。程序试图证明这些规则对于描述语法字符串是必要和充分的。机械化的主要数学技术是归纳和案例分析。此外,该程序还能够生成反例。编写这个程序有两个原因。首先,我们感兴趣的是为简单的BNF语法构造高效的识别器。其次,证明一个被提议的识别器确实是一个识别器的任务是足够复杂和困难的,这使得它成为一个方便机器证明定理的领域,特别是那些证明可能使用相当复杂的案例分析的定理。