形式文法
在计算机科学中,形式语言是某个字母表上一些有限长字串的集合,而形式文法是描述这个集合的一种方法。形式文法之所以这样命名,是因为它与人类自然语言中的文法相似的缘故。
形式文法描述形式语言的基本想法是,从一个特殊的初始符合出发,不断的应用一些产生式规则,从而生成出一个字串的集合。产生式规则指定了某些符号组合如何被另外一些符号组合替换。举例来说,假设字母表只包含 'a' 和 'b' 两个字符,初始符号是 'S' ,我们应用下述规则:
1. S -> aSb
2. S -> ba
于是我们可以通过把 "S" 重写为 "aSb"(规则1),我们还可以继续应用这条规则把 "aSb" 重写为 "aaSbb"。这个重写的过程不断重复,直到结果中只包含字母表中的字母为止。在例子中,我们可以得到 S -> aSb -> aaSbb -> aababb 这样的结果。由文法刻画的语言包含了所有可以这样产生的字串,比如 ba, abab, aababb, aaababbb 等等。
形式定义
一个形式文法 G 是下述元素构成的一个元组(N, Σ, P, S):----有些书上也写成(V,T,S,P)
非终结符号集合 N。
终结符号集合 Σ ,Σ 与 N 无交。
取如下形式的一组产生式规则 P,
(Σ ∪ N)*中
形式文法概述
最新推荐文章于 2022-01-14 22:32:34 发布
本文介绍了形式文法的概念,它是计算机科学中描述形式语言的一种方法。形式文法通过产生式规则从初始符号生成字串集合,文中给出了具体的文法示例及推导过程。此外,还探讨了形式文法的四种类型——无限制文法、上下文相关文法、上下文无关文法和正规文法,以及它们与自然语言和程序设计语言的关系。
摘要由CSDN通过智能技术生成