Cho văn phạm gồm các luật sinh: epsilon; epsilon; S → A; A → BC hoặc A-> DBC; B → bBʼ hoặc B-> epsilon; B’→ bB’ hoặc B’- > C → c hoặc C-> D → a hoặc D-> d, FIRST(B’) =?
Trả lời:
Đáp án đúng: D
Để tìm FIRST(B’), ta xem xét các luật sinh của B’:
B’ → bB’ hoặc B’ → epsilon
Vì B’ có thể sinh ra 'b' (thông qua luật B’ → bB’) và cũng có thể sinh ra epsilon (thông qua luật B’ → epsilon), nên FIRST(B’) sẽ bao gồm 'b' và epsilon.
Vậy, FIRST(B’) = { b, epsilon }