1 votes 1 votes why do first sets can have epsilon symbol but follow sets don’t? P.S: I’ve a silly doubt :P Compiler Design compiler-design parsing first-and-follow + – aditi19 asked May 12, 2019 aditi19 1.7k views answer comment Share Follow See all 4 Comments See all 4 4 Comments reply srestha commented May 12, 2019 i reshown by srestha May 12, 2019 reply Follow Share It is the rule. If the follow set has epsilon, then we have to remove it, with certain rules of Compiler. I think u know those rules. 0 votes 0 votes aditi19 commented May 12, 2019 reply Follow Share I know the rule. but what may happen if follow set has epsilon 0 votes 0 votes srestha commented May 12, 2019 i edited by srestha May 12, 2019 reply Follow Share Follow set can never contain $\epsilon$ entry. If u derive derive FOLLOW set property, then u can found out, why it cannot contain. First of all, where we use a FOLLOW set?? When there is a $\epsilon$ entry in FIRST set of LL(1) entry, there we use follow set. Now, if this NON-TERMINAL doesnot follow by anything, then what do we do? We just go to that NON-TERMINAL from where it derived, and check it's FOLLOW set If nothing found , then go from where derived And , at last if nothing found it returns dolor $S\rightarrow aS|aA$ $A\rightarrow bB|\epsilon $ $B\rightarrow b$ Now, FIRST of $A$ contains $\epsilon$, and $A$ doesnot FOLLOW by anything, So, go for FOLLOW of S Now, FOLLOW of S contains nothing but dolor. So, $\epsilon$ never possible. 1 votes 1 votes aditi19 commented May 12, 2019 reply Follow Share got it. nice explaination 1 votes 1 votes Please log in or register to add a comment.