Cho văn phạm với các luật sinh: S -> AB; A -> aA ; A -> epsilon; B -> bB ; B-> epsilon, First(S) = ? A {a, epsilon }
Trả lời:
Đáp án đúng: C
Để tìm First(S), ta cần xem xét các luật sinh của S. Trong trường hợp này, S -> AB. Do đó, First(S) sẽ chứa tất cả các phần tử có thể bắt đầu từ A và B.
- A -> aA | epsilon, vậy First(A) = {a, epsilon}
- B -> bB | epsilon, vậy First(B) = {b, epsilon}
Vì S -> AB, nên First(S) sẽ chứa First(A). Nếu epsilon thuộc First(A), thì First(S) cũng sẽ chứa First(B). Trong trường hợp này, epsilon thuộc First(A), vì vậy First(S) sẽ chứa {a} (từ First(A)) và {b} (từ First(B)). Do đó, First(S) = {a, b}.