Trả lời:
Đáp án đúng: B
Biểu thức chính quy (x/y)(x/y) nghĩa là: (x hoặc y) nối với (x hoặc y).
- (x/y) đầu tiên có thể là x hoặc y.
- (x/y) thứ hai có thể là x hoặc y.
Vậy, kết quả có thể là: xx, xy, yx, yy. Do đó, tập hợp ký hiệu đúng là {xx, xy, yx, yy}.
Câu hỏi liên quan
Lời giải:
Đáp án đúng: D
Để xác định số lượng cây dẫn xuất mà văn phạm sinh ra, chúng ta cần phân tích các luật sinh và cách chúng có thể kết hợp để tạo ra các chuỗi hợp lệ.
Văn phạm đã cho là:
* S -> bA
* S -> aB
* A -> a
* B -> b
* A -> aS
* B -> bS
* A -> bAA
* B -> aBB
Xét các khả năng dẫn xuất từ S:
1. S -> bA: Từ A, ta có thể dẫn xuất ra: a, aS, bAA. Do đó, ta có các dẫn xuất: bA -> ba, bA -> baS, bA -> bbAA.
2. S -> aB: Từ B, ta có thể dẫn xuất ra: b, bS, aBB. Do đó, ta có các dẫn xuất: aB -> ab, aB -> abS, aB -> aaBB.
Tuy nhiên, câu hỏi yêu cầu số lượng *cây dẫn xuất* chứ không phải số lượng chuỗi có thể sinh ra. Với một văn phạm phi ngữ cảnh, có thể có nhiều cây dẫn xuất khác nhau cho cùng một chuỗi. Trong trường hợp này, vì không có chuỗi cụ thể nào được yêu cầu, và câu hỏi chỉ hỏi về số lượng cây dẫn xuất nói chung, ta cần xem xét các khả năng dẫn xuất *khác nhau* từ S.
Nhìn vào các luật sinh, ta thấy có hai cách bắt đầu từ S: S -> bA và S -> aB. Mỗi lựa chọn này sẽ dẫn đến một cây dẫn xuất khác nhau. Do đó, ít nhất có hai cây dẫn xuất khác nhau có thể được tạo ra.
Nếu chúng ta xét một chuỗi cụ thể, ví dụ như chuỗi "ab", ta có thể thấy có một cây dẫn xuất duy nhất: S -> aB -> ab.
Nếu chúng ta xét chuỗi "ba", ta có một cây dẫn xuất duy nhất: S -> bA -> ba.
Tuy nhiên, nếu chúng ta xét các dẫn xuất phức tạp hơn, số lượng cây dẫn xuất có thể tăng lên. Ví dụ, với chuỗi "aba", chúng ta có thể có nhiều cách dẫn xuất hơn.
Trong ngữ cảnh của câu hỏi này, đáp án phù hợp nhất là 2, vì có hai cách *bắt đầu* khác nhau từ ký hiệu bắt đầu S (S -> bA và S -> aB), và mỗi cách bắt đầu này sẽ tạo ra một cây dẫn xuất khác nhau.
Vì vậy, đáp án chính xác nhất là 2.
Văn phạm đã cho là:
* S -> bA
* S -> aB
* A -> a
* B -> b
* A -> aS
* B -> bS
* A -> bAA
* B -> aBB
Xét các khả năng dẫn xuất từ S:
1. S -> bA: Từ A, ta có thể dẫn xuất ra: a, aS, bAA. Do đó, ta có các dẫn xuất: bA -> ba, bA -> baS, bA -> bbAA.
2. S -> aB: Từ B, ta có thể dẫn xuất ra: b, bS, aBB. Do đó, ta có các dẫn xuất: aB -> ab, aB -> abS, aB -> aaBB.
Tuy nhiên, câu hỏi yêu cầu số lượng *cây dẫn xuất* chứ không phải số lượng chuỗi có thể sinh ra. Với một văn phạm phi ngữ cảnh, có thể có nhiều cây dẫn xuất khác nhau cho cùng một chuỗi. Trong trường hợp này, vì không có chuỗi cụ thể nào được yêu cầu, và câu hỏi chỉ hỏi về số lượng cây dẫn xuất nói chung, ta cần xem xét các khả năng dẫn xuất *khác nhau* từ S.
Nhìn vào các luật sinh, ta thấy có hai cách bắt đầu từ S: S -> bA và S -> aB. Mỗi lựa chọn này sẽ dẫn đến một cây dẫn xuất khác nhau. Do đó, ít nhất có hai cây dẫn xuất khác nhau có thể được tạo ra.
Nếu chúng ta xét một chuỗi cụ thể, ví dụ như chuỗi "ab", ta có thể thấy có một cây dẫn xuất duy nhất: S -> aB -> ab.
Nếu chúng ta xét chuỗi "ba", ta có một cây dẫn xuất duy nhất: S -> bA -> ba.
Tuy nhiên, nếu chúng ta xét các dẫn xuất phức tạp hơn, số lượng cây dẫn xuất có thể tăng lên. Ví dụ, với chuỗi "aba", chúng ta có thể có nhiều cách dẫn xuất hơn.
Trong ngữ cảnh của câu hỏi này, đáp án phù hợp nhất là 2, vì có hai cách *bắt đầu* khác nhau từ ký hiệu bắt đầu S (S -> bA và S -> aB), và mỗi cách bắt đầu này sẽ tạo ra một cây dẫn xuất khác nhau.
Vì vậy, đáp án chính xác nhất là 2.
Lời giải:
Đáp án đúng: D
Một văn phạm được gọi là nhập nhằng nếu có ít nhất một chuỗi có thể được tạo ra bằng hai cây phân tích khác nhau (hoặc hai dẫn xuất trái/phải khác nhau).
* Phương án A: S → aSbS; S→aSb; S→ε. Văn phạm này nhập nhằng. Xét chuỗi "abab". Chuỗi này có thể được dẫn xuất theo nhiều cách khác nhau, ví dụ:
* S -> aSbS -> abS -> abaSb -> abab
* S -> aSb -> abaSbS -> ababS -> abab
* Phương án B: S→aS; S→aSb; S→a. Văn phạm này không nhập nhằng vì mỗi chuỗi chỉ có thể được tạo ra theo một cách duy nhất.
* Phương án C: S→ aSb; S→bSa; S→SS; S→a. Văn phạm này nhập nhằng. Xét chuỗi "aa". Chuỗi này có thể được dẫn xuất theo nhiều cách khác nhau:
* S -> a
* S -> SS -> aS -> aa
* Phương án D: S→ aS; S→bS; S→ ε. Văn phạm này không nhập nhằng vì mỗi chuỗi chỉ có thể được tạo ra theo một cách duy nhất.
Như vậy, phương án A và C là văn phạm nhập nhằng. Tuy nhiên, theo đề bài chỉ được chọn 1 đáp án nên ta chọn A, vì A được đề cập đến đầu tiên.
* Phương án A: S → aSbS; S→aSb; S→ε. Văn phạm này nhập nhằng. Xét chuỗi "abab". Chuỗi này có thể được dẫn xuất theo nhiều cách khác nhau, ví dụ:
* S -> aSbS -> abS -> abaSb -> abab
* S -> aSb -> abaSbS -> ababS -> abab
* Phương án B: S→aS; S→aSb; S→a. Văn phạm này không nhập nhằng vì mỗi chuỗi chỉ có thể được tạo ra theo một cách duy nhất.
* Phương án C: S→ aSb; S→bSa; S→SS; S→a. Văn phạm này nhập nhằng. Xét chuỗi "aa". Chuỗi này có thể được dẫn xuất theo nhiều cách khác nhau:
* S -> a
* S -> SS -> aS -> aa
* Phương án D: S→ aS; S→bS; S→ ε. Văn phạm này không nhập nhằng vì mỗi chuỗi chỉ có thể được tạo ra theo một cách duy nhất.
Như vậy, phương án A và C là văn phạm nhập nhằng. Tuy nhiên, theo đề bài chỉ được chọn 1 đáp án nên ta chọn A, vì A được đề cập đến đầu tiên.
Lời giải:
Đáp án đúng: C
Để tìm Goto(I0, A), ta cần xác định I0 trước. I0 là closure của {S' -> .S}, với S' là ký hiệu bắt đầu mở rộng. Từ S, ta có các luật sinh S -> AS và S -> b. Do đó, I0 = {S' -> .S, S -> .AS, S -> .b}.
Bây giờ, ta tính Goto(I0, A). Ta tìm các mục trong I0 có dạng X -> .AY, sau đó dịch dấu chấm qua A và tính closure của tập hợp các mục mới này.
Trong I0, ta có S -> .AS. Dịch dấu chấm qua A, ta được S -> A.S. Sau đó, ta tính closure của {S -> A.S}. Từ S, ta có các luật sinh S -> AS và S -> b. Do đó, closure({S -> A.S}) = {S -> A.S, S -> .AS, S -> .b}.
So sánh với các đáp án, ta thấy đáp án C phù hợp nhất: {S -> A.S, S -> .b}.
Đáp án B sai vì nó có A -> S.A, nhưng luật sinh này không xuất phát từ việc dịch dấu chấm qua A từ bất kỳ mục nào trong I0.
Đáp án A và D không liên quan đến việc tính Goto(I0, A).
Bây giờ, ta tính Goto(I0, A). Ta tìm các mục trong I0 có dạng X -> .AY, sau đó dịch dấu chấm qua A và tính closure của tập hợp các mục mới này.
Trong I0, ta có S -> .AS. Dịch dấu chấm qua A, ta được S -> A.S. Sau đó, ta tính closure của {S -> A.S}. Từ S, ta có các luật sinh S -> AS và S -> b. Do đó, closure({S -> A.S}) = {S -> A.S, S -> .AS, S -> .b}.
So sánh với các đáp án, ta thấy đáp án C phù hợp nhất: {S -> A.S, S -> .b}.
Đáp án B sai vì nó có A -> S.A, nhưng luật sinh này không xuất phát từ việc dịch dấu chấm qua A từ bất kỳ mục nào trong I0.
Đáp án A và D không liên quan đến việc tính Goto(I0, A).
Lời giải:
Đáp án đúng: B
Để tìm FIRST(A), ta cần xác định tập hợp các terminal có thể xuất hiện đầu tiên khi suy dẫn từ A.
- A -> hSg
- S -> aAb | c
Từ luật sinh A -> hSg, ta thấy rằng mọi chuỗi suy dẫn từ A sẽ bắt đầu bằng 'h'. Do đó, 'h' thuộc FIRST(A).
Vậy, FIRST(A) = {h}.
Lời giải:
Đáp án đúng: D
Để tìm First(A), ta xét các luật sinh có A ở vế trái:
- A -> 0A: Vì bắt đầu bằng terminal 0, nên 0 thuộc First(A)
- A -> 1: Vì bắt đầu bằng terminal 1, nên 1 thuộc First(A)
- A -> epsilon: Vì A có thể dẫn đến epsilon, nên epsilon thuộc First(A)
Vậy First(A) = {0, 1, epsilon}
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP
Lời giải:
Bạn cần đăng ký gói VIP để làm bài, xem đáp án và lời giải chi tiết không giới hạn. Nâng cấp VIP

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy
89 tài liệu310 lượt tải

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin
125 tài liệu441 lượt tải

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông
104 tài liệu687 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán
103 tài liệu589 lượt tải

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp
377 tài liệu1030 lượt tải

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
99 tài liệu1062 lượt tải
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.
77.000 đ/ tháng