First 集 Follow 集 Select 集分别有什么意义

本文最后更新于:2020年8月16日 下午

这三个集合是为了后期规约与分解方便

前言

记录一下,方便以后查阅

First 集

First 集表示对于非终结符 A,First(A) 表示这个非终结符转换为终结符形式后的第一个终结符的集合。

Follow 集

Follow 集表示对于非终结符 A,Follow(A) 表示这个终结符转换为终结符型时候的紧跟在它最后的第一个终结符的集合。

Select 集

Select 集表示对于生成式 A->α,Select(A->α) 表示

  1. α不能推出空的时候,α转换为终结符形式后的第一个终结符的集合
  2. α可以推出空的时候,α转换为终结符形式后的第一个终结符且去除空集的集合,与 A 转换为终结符型时候的紧跟在它最后的第一个终结符的集合的并集。