JavaScript is required

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 }

A.

{a,b}

B.

{a,b, epsilon }

C.

{b, 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}.

Câu hỏi liên quan