24
1 HỌC VIỆN KỸ THUẬT QUÂN SỰ KHOA CÔNG NGHỆ THÔNG TIN CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1. Thông tin về giáo viên TT Họ tên giáo viên Học hàm Học vị Đơn vị công tác (Bộ môn) 1 Hà Chí Trung GVC TS Khoa học máy tính 2 Võ Minh Phổ GVC TS Khoa học máy tính 3 Nguyễn Trung Tín TG TS Khoa học máy tính Thời gian, địa điểm làm việc: Giờ hành chính, Bộ môn Khoa học máy tính – Tầng 2 nhà A1 – Học viện Kỹ thuật Quân sự. Địa chỉ liên hệ: Bộ môn Khoa học máy tính – Khoa Công nghệ thông tin – Học viện Kỹ thuật Quân sự. 236 Hoàng Quốc Việt. Điện thoại, email: [email protected]; [email protected] Các hướng nghiên cứu chính: Lý thuyết ngôn ngữ 2. Thông tin chung về học phần - Tên học phần: Automat và ngôn ngữ hình thức - Mã học phần: 1222315 - Số tín chỉ: 2 - Học phần (bắt buộc hay lựa chọn): bắt buộc - Các học phần tiên quyết: Toán rời rạc, Lập trình cơ bản - Các yêu cầu đối với học phần (nếu có): - Giờ tín chỉ đối với các hoạt động: Nghe giảng lý thuyết: 30 Làm bài tập trên lớp: 15 Thảo luận: Thực hành, thực tập (ở PTN, nhà máy, thực tập...): Hoạt động theo nhóm: Tự học: 60 - Khoa/Bộ môn phụ trách học phần, địa chỉ: Bộ môn Khoa học máy tính – Khoa Công nghệ thông tin – Học viện Kỹ thuật Quân sự. 236 Hoàng Quốc Việt. 3. Mục tiêu của học phần

Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

Embed Size (px)

Citation preview

Page 1: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

1

HỌC VIỆN KỸ THUẬT QUÂN SỰ

KHOA CÔNG NGHỆ THÔNG TIN

CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM

Độc lập – Tự do – Hạnh phúc

ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN

AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC

1. Thông tin về giáo viên

TT Họ tên giáo viên Học hàm Học vị Đơn vị công tác (Bộ môn)

1 Hà Chí Trung GVC TS Khoa học máy tính

2 Võ Minh Phổ GVC TS Khoa học máy tính

3 Nguyễn Trung Tín TG TS Khoa học máy tính

Thời gian, địa điểm làm việc: Giờ hành chính, Bộ môn Khoa học máy tính –

Tầng 2 nhà A1 – Học viện Kỹ thuật Quân sự.

Địa chỉ liên hệ: Bộ môn Khoa học máy tính – Khoa Công nghệ thông tin –

Học viện Kỹ thuật Quân sự. 236 Hoàng Quốc Việt.

Điện thoại, email: [email protected]; [email protected]

Các hướng nghiên cứu chính: Lý thuyết ngôn ngữ

2. Thông tin chung về học phần

- Tên học phần: Automat và ngôn ngữ hình thức

- Mã học phần: 1222315

- Số tín chỉ: 2

- Học phần (bắt buộc hay lựa chọn): bắt buộc

- Các học phần tiên quyết: Toán rời rạc, Lập trình cơ bản

- Các yêu cầu đối với học phần (nếu có):

- Giờ tín chỉ đối với các hoạt động:

Nghe giảng lý thuyết: 30

Làm bài tập trên lớp: 15

Thảo luận:

Thực hành, thực tập (ở PTN, nhà máy, thực tập...):

Hoạt động theo nhóm:

Tự học: 60

- Khoa/Bộ môn phụ trách học phần, địa chỉ: Bộ môn Khoa học máy tính –

Khoa Công nghệ thông tin – Học viện Kỹ thuật Quân sự. 236 Hoàng

Quốc Việt.

3. Mục tiêu của học phần

Page 2: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

2

- Kiến thức: Ngôn ngữ hình thức (Formal Languages) là môn học cơ sở của

công nghệ thông tin đối với người học. Môn học trang bị cho người học

những kiến thức cơ bản về thuật toán, ngôn ngữ thuật toán, các kỹ thuật

xây dựng chương trình và phương pháp tư duy liên quan đến khoa học

máy tính.

- Kỹ năng: Kỹ năng vận dụng lý thuyết toán, toán rời rạc, lý thuyết ngôn

ngữ vào việc phân tích, giải quyết các vấn đề. Cung cấp khả năng suy

luận, giải quyết các bài toán trong lĩnh vực công nghệ thông tin. Các kỹ

thuật xây dựng chương trình và phương pháp tư duy liên quan đến khoa

học máy tính.

- Thái độ, chuyên cần: Thái độ nghiêm túc trong nghe giảng, làm bài tập

đầy đủ, vận dụng lý thuyết.

4. Tóm tắt nội dung học phần (khoảng 150 từ)

Đây là môn học bắt buộc đối với học viên thuộc nhóm Công nghệ thông

tin. Môn học hướng tới trang bị cho học viên các khái niệm và định hướng của

Automat và ngôn ngữ hình thức. Chương 1 nhắc lại một số khái niệm toán rời

rạc, tập hợp, ngôn biểu diễn thuật toán. Chương 2 giới thiệu về ngôn ngữ hình

thức và văn phạm, biểu diễn phân loại ngôn ngữ. Chương 3 trình bày về

automata hữu hạn và các dạng thức automata. Chương 4 giới thiệu về lớp ngôn

ngữ chính quy, mối quan hệ giữa ngôn ngữ chính quy và automat hữu hạn, các

ứng dụng trong giải quyết các vấn đề toán học. Chương 5 giới thiệu về văn

phạm phi ngữ cảnh. Các dạng chuyển đổi trong văn phạm phi ngữ cảnh. Chương

6. Automata đẩy xuống và mối liên hệ với văn phạm phi ngữ cảnh. Chương 7.

Máy Turing và các lớp ngôn ngữ. Ngoài ra, môn học trang bị khả năng tư duy,

suy luận và định hướng nghiên cứu chương trình dịch, lý thuyết tính toán.

5. Nội dung chi tiết học phần (tên các chương, mục, tiểu mục)

Chương,

mục,

tiểu mục

Nội dung Số

tiết

Giáo

trình,

Tài liệu

tham khảo

(Ghi TT

của TL ở

mục 6)

Ghi

chú

1 Chương 1: Nhập môn lý thuyết

automata và ngôn ngữ hình thức 3 1,2

Page 3: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

3

Giới thiệu về môn học

Bổ túc một số khái niệm toán học liên

quan (tập hợp, quan hệ, đồ thị và cây)

2

Chương 2: Văn phạm và ngôn ngữ

hình thức

Ngôn ngữ và các khái niệm liên quan

Các phép toán trên chuỗi và ngôn ngữ

Văn phạm và các khái niệm liên quan

Phân loại văn phạm theo Chomsky

Tính chất của văn phạm và ngôn ngữ

Sơ lược về automata

Bài tập chương 2

6 1,2,3

3

Chương 3: Automata hữu hạn và ngôn

ngữ hình thức

Các khái niệm chung

Automata hữu hạn đơn định

Automata hữu hạn đa định

Automata đa định với độ dịch chuyển ε

Sự tương đương giữa automata đơn định

với automata đa định

Biểu thức chính quy

Sự tương đương giữa biểu thức chính

quy và automata hữu hạn

Bài tập chương 3

12 1, 2

4

Chương 4: Văn phạm chính quy và

các tính chất

Khái niệm về văn phạm chính quy

Sự tương đương giữa văn phạm chính

quy và automata hữu hạn

Bổ đề bơm cho tập hợp chính quy

Tính đóng của tập hợp chính quy

Bài tập chương 4

6 1,2,3

5 Chương 5: Văn phạm phi ngữ cảnh

Văn phạm phi ngữ cảnh 6 1, 2

Page 4: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

4

Sự nhâp nhằng của văn phạm phi ngữ

cảnh

Rút gọn văn phạm phi ngữ cảnh

Chuẩn hóa văn phạm phi ngữ cảnh

Tính chất của văn phạm phi ngữ cảnh

Bài tập chương 5

6

Chương 6: Pushdown automata

(automata đẩy xuống)

Khái niệm về automata đẩy xuống

Biến đổi giữa automata chấp nhận ngôn

ngữ bằng trạng thái kết thúc với automata

chấp nhận ngôn ngữ bằng stack rỗng

Sự tương đương giữa automata đẩy

xuống và văn phạm phi ngữ cảnh

Quan hệ giữa ngôn ngữ phi ngữ cảnh và

tập hợp chính quy

Bài tập chương 6

6 1, 2

7

Chương 7: Máy Turing, automata

tuyến tính giới nội và văn phạm cảm

ngữ cảnh

Khái niệm, mô hình máy Turing

Các kỹ thuật xây dựng máy Turing

Văn phạm đệ quy đếm được và máy

Turing

Văn phạm cảm ngữ cảnh và automata

tuyến tính giới nội

Các vấn đề toán học liên quan

Bài tập chương 7

6 1, 2

6. Giáo trình, tài liệu tham khảo

TT

Tên giáo trình, tài liệu Tình trạng giáo trình, tài liệu

Giáo trình 1 (Giáo trình bắt buộc

ghi theo thứ tự ưu tiên: tên sách, tên

tác giả, nhà xuất bản, năm xuất

bản,...)

Có ở thư

viện

(website)

Giáo

viên

hoặc

khoa có

Đề

nghị

mua

mới

Đề

nghị

biên

soạn

mới

Page 5: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

5

1

Introduction to Automata Theory,

Languages, and Computation (2nd

Edition) - John E. Hopcropft,

Rareev Motwani, Jeffrey D.

Ullman. Addison-Wesley.-2001.

x

2

Giáo trình lý thuyết ôtômát và ngôn

ngữ hình thức – Hồ Văn Quân –

Nhà xuất bản Đại học quốc gia Tp.

Hồ Chí Minh – 2002.

x

3

Problem Solving in Automata,

Languages, and Complexity. Ding-

Zhu Du and Ker-I Ko. JOHN

WILEY & SONS, INC. 2001

x

7. Hình thức tổ chức dạy học

7.1. Lịch trình chung: (Ghi tổng số giờ cho mỗi cột)

Nội dung

Hình thức tổ chức dạy học học phần

Tổng Lên lớp Thực hành,

thí nghiệm,

thực tập...

Tự học,

tự ng.cứu Lý

thuyết

Bài

tập

Thảo

luận

Chương 1: Nhập môn

lý thuyết automata và

ngôn ngữ hình thức

3 6 9

Chương 2: Văn phạm

và ngôn ngữ hình thức 3 3 6 12

Chương 3: Automata

hữu hạn và ngôn ngữ

hình thức

9 3 18 30

Chương 4: Văn phạm

chính quy và các tính

chất

Khái niệm về văn

phạm chính quy

3 3 6 12

Chương 5: Văn phạm

phi ngữ cảnh 6 12 18

Chương 6: Pushdown 3 3 6 12

Page 6: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

6

automata (automata

đẩy xuống)

Chương 7: Máy

Turing, automata

tuyến tính giới nội và

văn phạm cảm ngữ

cảnh

3 3 6 12

7.2. Lịch trình tổ chức dạy học cụ thể

Bài giảng 01: Nhập môn Automata và ngôn ngữ hình thức.

Chương I, mục:

Tiết thứ: 1-3 Tuần thứ: 1

- Mục đích yêu cầu

Mục đích: Trang bị những hiểu biết chung nhất về môn học; Khái quát lại một

số khái niệm, cơ sở toán học làm cơ sở học tập môn học: Kiến thức về tập hợp,

các phép toán trên tập hợp, lý thuyết về đồ thị và cây.

Yêu cầu: sinh viên phải hệ thống lại các kiến thức cơ sở về toán rời rạc, kiến

thức lập trình, tự nghiên cứu và ôn tập lại những vấn đề lý thuyết khác có liên

quan đến môn học.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Giáo viên giảng: 2 tiết; Thảo luận và làm bài tập trên lớp: 1 tiết;

Sinh viên tự học: 6 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

1.1. Giới thiệu về môn học lý thuyết NNHT và automata hữu hạn

1.2. Bổ túc một số khái niệm toán học

1.2.1. Tập hợp

Tập hợp, tập rỗng tập con, tập tổng quát, tập bằng nhau, tập lũy thừa.

Các phép toán trên tập hợp: phép hợp, phép giao, phần bù, phép trừ, tích đềcác

của hai tập hợp.

1.2.2. Quan hệ:

Page 7: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

7

Quan hệ n-ngôi, quan hệ hai ngôi, các tính chất: phản xạ, đối xứng, bắc cầu của

quan hệ. Quan hệ tương đương.

1.2.3. Phép chứng minh:

Các phương pháp chứng minh: chứng minh trực tiếp, chứng minh lựa chọn,

chứng minh phản chứng, chứng minh bằng quy nạp.

1.2.4. Đồ thị và cây:

Khái niệm đồ thị: đỉnh, cạnh, khuyên, nhãn, biểu diễn đồ thị; Các dạng đồ thị,

các thuật toán duyệt đồ thị.

Cây: đỉnh, nút trong, nút lá, các thuật toán duyệt cây: duyệt thứ tự trước, duyệt

thứ tự sau, duyệt thứ tự giữa.

- Nội dung thảo luận

Chứng minh các bài tập nêu ra trong bài giảng, áp dụng các giải thuật duyệt

khác nhau trên đồ thị và cây.

- Yêu cầu SV chuẩn bị:

Ôn tập lại các kiến thức lý thuyết liên quan đến tập hợp, đồ thị, cây. Các thuật

toán duyệt đồ thị và duyệt cây.

Đọc trước bài giảng của giảng viên (TL1), chương 1 TL 2.

- Tài liệu tham khảo

1. Bài giảng của giảng viên.

2. John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Introduction to

Automata Theory, Languages, and Computation (2nd Edition) -

Addison-Wesley.-2001.

- Câu hỏi ôn tập

1. Thế nào là chu trình Euler, chu trình Hamilton trên đồ thị?

2. Khái niệm về đồ thị liên thông, thành phần liên thông và không liên

thông của đồ thị? Giải thuật xác định thành phần liên thông, không liên

thông?

3. Khái niệm cây, anh chị biết những dạng cấu trúc cây nào?

- Ghi chú: Các môn học tiên quyết : toán rời rạc, cấu trúc dữ liệu và giải thuật,

lập trình căn bản.

Bài giảng 02: Văn phạm và ngôn ngữ hình thức

Page 8: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

8

Chương 2, mục:

Tiết thứ: 1-3 Tuần thứ: 2

- Mục đích yêu cầu

Mục đích: Trang bị những khái niệm cơ bản nhất của môn học: ngôn ngữ, biểu

diễn ngôn ngữ, văn phạm và đưa ra văn phạm.

Yêu cầu: Sinh viên hiểu và nắm vững các khái niệm, làm cơ sở cho việc nắm

nội dung các bài học kế tiếp.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Giáo viên giảng: 2 tiết; Thảo luận và làm bài tập trên lớp: 1 tiết;

Sinh viên tự học: 6 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính

2.1. Ngôn ngữ

2.1.1. Các khái niệm cơ bản

2.1.2. Các phép toán trên từ

Phép nối kết (concatenation), phép đảo ngược (reverse), phép cắt trái, phép cắt

phải chuỗi x cho chuỗi y.

2.1.3. Các phép toán trên ngôn ngữ

Vì mỗi ngôn ngữ có thể xem như là một tập hợp nên ta có các phép toán đại số

tập hợp như là phép hợp, phép giao, phép hiệu, phép lấy bù, tập con,… của các

ngôn ngữ.

Một số phép toán khác: nối kết, Ngôn ngữ lặp (bao đóng kleene, hoặc *-

closure), Ngôn ngữ lặp cắt (bao đóng dương – positive closure), ngôn ngữ

ngược, Ngôn ngữ cắt trái của ngôn ngữ X cho ngôn ngữ Y, Ngôn ngữ cắt phải

của ngôn ngữ X cho ngôn ngữ Y.

2.2. Văn phạm

2.2.1. Văn phạm và các khái niệm liên quan

2.2.2. Phân loại văn phạm theo Chomsky

2.2.3. Tính chất của văn phạm và ngôn ngữ

- Nội dung thảo luận

Page 9: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

9

Các ví dụ về văn phạm, mối liên hệ giữa các thành phần của văn phạm thông

qua ví dụ biểu diễn ngôn ngữ tự nhiên (tiếng việt), ngôn ngữ lập trình (C,

PASCAL…), phân biệt các dạng ngôn ngữ dựa trên đặc điểm văn phạm.

- Yêu cầu SV chuẩn bị:

1. Chứng minh các định lý sau trong bài giảng;

2. Viết chương trình mô phỏng các thao tác làm việc với chuỗi.

3. Giải các bài tập chương 2 do giáo viên cung cấp.

4. Đọc trước tài liệu chương 2 TL2.

- Tài liệu tham khảo

1. Bài giảng số 2 của giảng viên.

2. John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Introduction to

Automata Theory, Languages, and Computation (2nd Edition) -

Addison-Wesley.-2001.

- Câu hỏi ôn tập

1. Khái niệm về ngôn ngữ, từ (chuỗi, xâu), một số phép toán cơ bản trên

từ và trên ngôn ngữ. Các hình thức biểu diễn ngôn ngữ. Cho ví dụ minh

họa tương ứng.

2. Định nghĩa văn phạm, dẫn xuất và ngôn ngữ sinh bởi văn phạm. Cho ví

dụ minh họa.

3. Phân loại văn phạm theo Chomsky, sự khác biệt giữa các loại văn

phạm. Cho ví dụ minh họa tương ứng.

- Ghi chú: Các khái niệm được nêu trong bài 2 sẽ được sử dụng trong suốt quá

trình học tập môn học, sinh viên cần nắm vững các khái niệm này.

Bài giảng 03. Ngôn ngữ và automata hữu hạn

Chương 3, mục:

Tiết thứ: 1-3 Tuần thứ: 3, 4, 5

- Mục đích yêu cầu

Mục đích: Trang bị cho sinh viên những khái niệm cơ bản về automata hữu hạn

(Finite Automatons); Phân biệt các dạng automata hữu hạn; Các thuật toán trên

automata hữu hạn, các phép biến đổi tương đương giữa các loại FA; Biểu thức

chính qui (RE) và sự tương đương với FA;

Page 10: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

10

Yêu cầu: Sinh viên nắm vững các khái niệm, các thuật toán biến đổi và làm các

dạng bài tập trong chương 3.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Giáo viên giảng: 6 tiết; Thảo luận và làm bài tập trên lớp: 3 tiết;

Sinh viên tự học: 18 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

3.1. Các khái niệm sơ lược

3.2. Automata hữu hạn đơn định (DFA)

3.3. Automata hữu hạn đa định (NFA)

3.4. Automata với dịch chuyển ε (NFAε)

Khái niệm về bước chuyển ε, NFAε là automata có các bước chuyển ε.

Các ví dụ minh họa NFAε: NFAε đoán nhận tập hợp các số nguyên, NFAε đoán

nhận tập hợp các số thực.

Mô phỏng quá trình đoán nhận chuỗi và thuật toán đoán nhận chuỗi của NFAε

bằng chương trình JFLAP, ngôn ngữ đoán nhận bởi NFAε.

NFAε như là phương tiện để thiết kế giải thuật tổng quát.

3.5. Sự tương đương giữa DFA và NFA

3.7. Biểu thức chính quy

3.7.1. khái niệm về biểu thức chính quy

3.7.2. Sự tương đương giữa FA và RE

3.7.3. Sự tương đương giữa DFA và RE

- Nội dung thảo luận

Sinh viên thiết kế, xây dựng các automata đoán nhận các tập hợp: các số chia hết

cho 2, 5, 10,… cho một số n bất kỳ.

Chứng minh các tập hữu hạn phần tử với độ dài hữu hạn là các tập hợp chính

quy.

- Yêu cầu SV chuẩn bị:

Sinh viên tự tìm hiểu và sử dụng thành thạo chương trình mô phỏng JFLAP do

giáo viên cung cấp.

Page 11: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

11

Đọc và tìm hiểu các thuật toán xây dựng automata là hợp, giao, tối giản của một

automata cho trước, Tìm hiểu thuật toán xây dựng DFA trực tiếp từ biểu thức

chính quy, chương 3, 4 TL2.

- Bài tập (practices and exercises)

Xây dựng chương trình mô phỏng hoạt động của automata đơn định, đa định,

Giải các bài tập trong chương 3, TL2.

- Tài liệu tham khảo (reading assignments)

1. Bài giảng 3 của giảng viên

2. John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Introduction to

Automata Theory, Languages, and Computation (2nd Edition) -

Addison-Wesley.-2001. Chương 3.

- Câu hỏi ôn tập (Questions)

1. Trình bày khái niệm về automat hữu hạn. Phân biệt các dạng automata

hữu hạn. Ngôn ngữ đoán nhận bởi automata hữu hạn. Ví dụ minh họa.

2. Khái niệm về automata Mealy, automata Moore, phân biệt chúng với

automata hữu hạn. Lấy ví dụ minh họa.

3. Trình bày các phương pháp biểu diễn automata hữu hạn. Ví dụ minh

họa.

4. Trình bày thuật toán đoán nhận chuỗi bởi một automata hữu hạn cho

trước. Ví dụ minh họa.

5. Trình bày phương pháp biến đổi từ automata không đơn định về

automata đơn định (đưa NFA về DFA).

6. Trình bày phương pháp biến đổi từ automata không đơn định có dịch

chuyển-ε về automata không đơn định và không có dịch chuyển-ε (đưa

NFAε về NFA). Dẫn ví dụ minh họa.

7. Trình bày phương pháp biến đổi từ automata không đơn định có dịch

chuyển-ε về automata đơn định (đưa NFAε về DFA). Dẫn ví dụ minh

họa.

8. Định nghĩa biểu thức chính quy. Thuật toán để xây dựng automata từ

biểu thức chính quy gọi là thuật toán Thomson, trình bày thuật toán

Thomson.

9. Định nghĩa biểu thức chính quy, trình bày thuật toán xây dựng biểu

thức chính quy từ một automata hữu hạn cho trước.

Page 12: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

12

- Ghi chú (Notes): Kiến thức về automata hữu hạn là nền tảng để xây dựng các

chương trình nhận dạng (Recognizer). Ứng dụng trong giai đoạn phân tích từ

vựng, phân tích cú pháp của các chương trình dịch.

Bài giảng 04: Văn phạm chính quy và automata hữu hạn.

Chương 4, mục:

Tiết thứ: 1-3 Tuần thứ: 6, 7

- Mục đích yêu cầu

Mục đích: Nhằm giúp cho sinh viên hiểu về lớp ngôn ngữ loại 3 và văn phạm

chính quy; Các tính chất của văn phạm tính quy; Hiểu và nắm được mối liên hệ

giữa lớp ngôn ngữ loại 3 với văn phạm chính quy và automata hữu hạn. Nắm

được các thuật toán biến đổi tương đương giữa RG và FA.

Yêu cầu: Sinh viên nắm vững các khái niệm về văn phạm chính quy, các thuật

tóan biến đổi tương đương giữa RG và FA; Về nhà, cụ thể hóa các thuật toán

bằng chương trình.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Giáo viên giảng: 4 tiết; Thảo luận và làm bài tập trên lớp: 2 tiết;

Sinh viên tự học: 12 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính

4.1. Văn phạm chính quy

4.2. Sự tương đương giữa RG và FA

Định lý 4.1: Tập rỗng, tập tổng quát, tập hữu hạn các chuỗi được xây trên bảng

chữ cái hữu hạn là tập hợp chính quy.

Chứng minh:

Cách 1: Dựa trên khái niệm biểu thức chính quy đã học trong bài trước.

Cách 2: Giải thuật xây dựng FA cho tập hữu hạn.

Định lý 4.2: Nếu L được sinh ra từ một văn phạm chính quy thì L là tập hợp

chính quy.

Ý nghĩa: như vậy, một RG có thể được biểu diễn bởi một FA.

Chứng minh: giải thuật xây dựng FA tương đương.

4.2.1. Giải thuật biến đổi từ RG sang FA

4.2.2. Giải thuật biến đổi từ FA sang RG

Page 13: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

13

Định lý 4.3: Nếu L là một tập hợp chính quy thì L được sinh ra từ một RG (văn

phạm tuyến tính trái hoặc tuyến tính phải) nào đó.

4.3. Bổ đề bơm (pumping lemma) cho RS

Pumping lemma: nếu L là RS thì có tồn tại hằng số n sao cho nếu z là một từ

bất kỳ thuộc L và |z| ≥ n thì ta có thể viết z dưới dạng:

ta có uvi

Cách khác: (∀L)(∃n)(∀z)[ z thuộc L và | z | ≥ n ta có (∃u, v, w)(z = uvw, |uv| ≤

n, |v| ≥ 1 và (∀i)(uviw L))]

Ứng dụng của bổ đề bơm: dùng để chứng tỏ một tập hợp không là RS theo

phương pháp phản chứng.

4.4. Tính đóng của tập hợp chính quy

Một phép toán trên các tập RS được gọi là đóng nếu kết quả của phép toán đó là

tập hợp cùng loại.

Định lý 4.4: tập hợp chính quy đóng với các phép toán: hợp, nối kết và bao

đóng Kleen (bao đóng sao).

Định lý 4.5: tập hợp chính quy đóng với phép lấy phần bù.

Định lý 4.6: tập hợp chính quy đóng với phép giao.

Định lý 4.7: tập hợp các chuỗi được chấp nhận bởi FA có n trạng thái là: không

rỗng nếu và chỉ nếu nó chấp nhận chuỗi có độ dài nhỏ hơn n, hoặc vô hạn nếu và

chỉ nếu nó chấp nhận chuỗi có độ dài m với n ≤ m< 2n.

Định lý 4.8: Tồn tại giải thuật để xác định hai FA là tương đương (chấp nhận

cùng một ngôn ngữ)

- Nội dung thảo luận

Chứng minh rằng tập tất cả các số nguyên tố không phải tập chính quy.

- Yêu cầu sinh viên chuẩn bị:

Chứng minh các định lý đã nêu trong phần tính chất của tập hợp chính quy. Xem

trước slide bài giảng 4. Chương 4 tài liệu 2.

- Bài tập (practices and exercises)

Viết chương trình mô phỏng thực hiện việc biến đổi từ văn phạm chính quy sang

automata hữu hạn và ngược lại

- Tài liệu tham khảo (reading assignments)

1. Bài giảng 4 của giảng viên.

Page 14: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

14

2. John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Introduction to

Automata Theory, Languages, and Computation (2nd Edition) -

Addison-Wesley.-2001. Chương 4.

- Câu hỏi ôn tập (Questions)

1. Khái niệm về văn phạm chính quy. Trình bày thuật toán xây dựng một

automata hữu hạn từ một văn phạm chính chính quy tuyến tính phải.

2. Khái niệm về văn phạm chính quy. Trình bày thuật toán xây dựng một

automata hữu hạn từ một văn phạm chính chính quy tuyến tính trái.

3. Khái niệm về văn phạm chính quy. Trình bày thuật toán xây dựng văn

phạm chính chính quy tuyến tính phải từ một automata hữu hạn cho

trước. Ví dụ minh họa.

4. Khái niệm về văn phạm chính quy. Trình bày thuật toán xây dựng văn

phạm chính chính quy tuyến tính trái từ một automata hữu hạn cho

trước. Ví dụ minh họa.

5. Phát biểu bổ đề bơm (pumping lemma) cho tập hợp chính quy, giải

thích, ý nghĩa của bổ đề bơm. Lấy ví dụ minh họa.

6. Những phép toán nào là đóng với tập hợp chính quy? Lấy ví dụ minh

họa.

7. Cho L là ngôn ngữ chính quy. Anh chị hãy xác định LR, Pref(L),

Suf(L), hay Suf(pref(L)) có phải ngôn ngữ chính quy không?

Ôn tập và kiểm tra giữa học phần

Chương 1, 2, 3, 4, mục:

Tiết thứ: 1-3 Tuần thứ: 8

- Mục đích yêu cầu

Mục đích: Hệ thống lại các kiến thức về về ngôn ngữ chính quy và automata

hữu hạn. Kiểm tra đánh chất lượng nắm kiến thức của sinh viên, giao bài tập

môn học

Yêu cầu: Sinh viên nắm vững các kiến thức được trang bị trong chương 1, 2, 3,

4.

- Hình thức tổ chức dạy học: thảo luận, tự học, tự nghiên cứu

- Thời gian: Thảo luận và làm bài tập trên lớp: 3 tiết; Sinh viên tự học: 6 tiết.

- Địa điểm: Giảng đường do P2 phân công.

Page 15: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

15

- Nội dung chính:

Rà soát lại các nội dung đã học trong phần 1 về ngôn ngữ chính quy và automata

hữu hạn.

Làm bài test đánh giá.

- Yêu cầu SV chuẩn bị

Hệ thống lại các bài giảng số 2, 3, 4.

Đọc và làm bài tập các chương 2, 3, 4 TL1.

- Tài liệu tham khảo (reading assignments)

1. Introduction to Automata Theory, Languages, and Computation (2nd

Edition) - John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Addison-

Wesley.-2001. Chương 2, 3, 4.

Bài giảng 05: Văn phạm phi ngữ cảnh.

Chương I, mục:

Tiết thứ: 1-3 Tuần thứ: 9, 10

- Mục đích yêu cầu

Mục đích: Trang bị những khái niệm về văn phạm phi ngữ cảnh và ngôn ngữ

phi ngữ cảnh. Giúp sinh viên hiểu cách thức xây dựng và biểu diễn một ngôn

ngữ lập trình. Sự nhập nhằng trong văn phạm phi ngữ cảnh; Rút gọn và chuẩn

văn phạm phi ngữ cảnh; Các tính chất của văn phạm phi ngữ cảnh.

Yêu cầu: Sinh viên nắm vững các khái niệm và các thuật toán biến đổi liên quan

tới CFG và ngôn ngữ loại 2. Về nhà, cụ thể hóa các thuật toán bằng chương

trình.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Giáo viên giảng: 4 tiết; Thảo luận và làm bài tập trên lớp: 2 tiết;

Sinh viên tự học: 12 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

5.1. Khái niệm văn phạm phi ngữ cảnh

5.2. Dẫn xuất, cây dẫn xuất trong CFG và CFL

5.3. Sự nhập nhằng trong CFG

5.4. Rút gọn văn phạm phi ngữ cảnh

Page 16: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

16

Trong CFG có thể chứa các yếu tố thừa:

Các ký hiệu không tham gia vào quá trình dẫn xuất ra chuỗi ký hiệu kết thúc;

Khái niệm văn phạm rút gọn: vẫn giữ khả năng sản sinh ngôn ngữ đó mà không

chứa những yếu tố vô ích không sinh ra chuỗi, làm phức tạp hay kéo dài dẫn

xuất sinh chuỗi.

Mọi x ∈ (Σ ∪ Δ), tồn tại chuỗi w sử dụng nó trong dẫn xuất;

∈ Δ)

Nếu ngôn ngữ không chấp nhận chuỗi rỗng ε ε.

5.4.1. Loại bỏ các ký hiệu thừa

5.4.2. Loại bỏ các luật sinh ε

5.4.3. Loại bỏ các luật sinh đơn vị

5.5. Chuẩn hóa các văn phạm phi ngữ cảnh

5.5.1. Dạng chuẩn Chomsky

Dạng chuẩn Chomsky (CNF): Văn phạm CFG G(Σ, Δ, S, P) có dạng chuẩn

Chomsky nếu tất cả các luật sinh của nó có dạng A → BC hoặc A → a (nếu ε ∉

L, ngược lại chỉ cần luật sinh S → ε).

Giải thuật đưa về dạng chuẩn Chomsky: giả sử CFL L=L(G) với CFG G=(Σ,

Δ, S, P)

Bước 1: thay thế tất cả các luật sinh có độ dài vế phải là 1

Áp dụng định lý 5.4 để loại bỏ luật sinh đơn vị và ε

Bước 2: thay thế tất cả luật sinh có độ dài vế phải lớn hơn 1 và có chứa ký hiệu

kết thúc:

Bước 3: thay thế các luật sinh mà vế phải có nhiều hơn 2 ký hiệu chưa kết thúc

5.5.2. Dạng chuẩn Greibach

Dạng chuẩn Greibach (GNF): Văn phạm CFG G(Σ, Δ, S, P) có dạng chuẩn

Greibach nếu các luật sinh của nó có dạng A → aα (α là chuỗi các ký hiệu phụ

hoặc ε nếu ε ∉ L; ngược lại thêm vào luật sinh S → ε).

5.6. Các tính chất của văn phạm phi ngữ cảnh

Pumping lemma: cho L là một CFL bất kỳ, tồn tại một số n chỉ phụ thuộc vào

iwxi

Ý nghĩa: dùng để chứng minh một ngôn ngữ có phải là CFL hay không.

Page 17: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

17

Định lý 5.7: CFL đóng với phép hợp, phép kết nối và phép bao đóng Kleen.

Định lý 5.8: CFL không đóng với phép giao

Hệ quả: CFL không đóng với phép lấy phần bù.

- Yêu cầu SV chuẩn bị:

Đọc trước slides bài giảng 5. Chương 5 TL2. Làm các bài tập chương 4 TL2.

- Tài liệu tham khảo (reading assignments)

1. Bài giảng 5.

2. John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Introduction to

Automata Theory, Languages, and Computation (2nd Edition) -

Addison-Wesley.-2001. Chương 3.

- Câu hỏi ôn tập (Questions)

1. khái niệm về dẫn xuất và cây dẫn xuất, sự nhập nhằng của văn phạm.

Ví dụ minh họa.

2. Những phép toán nào là đóng với văn phạm phi ngữ cảnh? Ví dụ minh

họa.

3. Phát biểu bổ đề bơm (pumping lemma) cho tập hợp (ngôn ngữ) phi ngữ

cảnh. Ví dụ minh họa.

4. Định nghĩa pushdown automata, giải thích các thành phần. Cho ví dụ

minh họa.

5. Phân biệt PDA đơn định và PDA không đơn định.

Bài giảng 06: Automata đẩy xuống (pushdown automata)

Chương 6, mục:

Tiết thứ: 1-3 Tuần thứ: 11, 12

- Mục đích yêu cầu

Mục đích: Thiết kế PDA chấp nhận CFL bằng stack rỗng hoặc bằng trạng thái

kết thúc; Biến đổi tương đương giữa PDA chấp nhận ngôn ngữ bằng trạng thái

kết thúc sang PDA chấp nhận bằng stack rỗng. Biến đổi tương đương giữa

NPDA và CFG.

Yêu cầu: Sinh viên cụ thể hóa các thuật toán bằng chương trình.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

Page 18: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

18

- Thời gian: Giáo viên giảng: 4 tiết; Thảo luận và làm bài tập trên lớp: 2 tiết;

Sinh viên tự học: 12 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

6.1. Khái niệm về Pushdown Automata (PDA)

6.1.1. PDA và các khái niệm liên quan

PDA là một FA với sự bổ sung thêm một ngăn xếp (stack) đóng vai trò bộ

nhớ, do vậy khả năng ghi nhớ của FA được tăng lên, dẫn đến PDA có khả

năng đoán nhận lớp ngôn ngữ rộng hơn là RL (RG, RE);

Stack hoạt động theo nguyên lý FILO (LIFO), do đó FA sử dụng bộ nhớ

có tên gọi là Pushdown automata;

Tại mỗi thời điểm, PDA điều khiển đồng thời cả dòng dữ liệu nhập vào

(băng nhập- tape) và bộ nhớ - bộ đẩy xuống (stack). Khi đọc một tín hiệu

vào, PDA có thể chuyển sang một trạng thái mới, hoặc thêm, xóa đi dữ

liệu từ stack, hoặc đồng thời cả hai;

Lớp PDA có khả năng đoán nhận lớp CFL, trong đó bao gồm các ngôn

ngữ lập trình hiện đại;

Có 2 dạng chuyển trạng thái (transitions):

Dạng 1: phụ thuộc vào ký hiệu nhập. Tại mỗi trạng thái, với 1 ký hiệu đọc vào

và đỉnh stack, PDA sẽ lựa chọn trạng thái kế tiếp và một chuỗi ký hiệu thay thế

trên stack, đầu đọc dịch sang phải 1 ký hiệu;

Dạng 2: không phụ thuộc vào ký hiệu nhập (dịch chuyển ε). Đầu đọc đứng im.

Ngăn xếp biến đổi.

Có 2 cách định nghĩa ngôn ngữ chấp nhận bởi PDA:

Ngôn ngữ chấp nhận bởi stack rỗng: Gồm các chuỗi nhập mà sau bước chuyển

cuối cùng stack trở về trạng thái rỗng;

Ngôn ngữ chấp nhận bởi trạng thái kết thúc: Gồm các chuỗi nhập mà sau bước

chuyển cuối cùng rơi vào một trong các trạng thái kết thúc;

6.1.2. PDA không đơn định (NPDA)

6.1.3. PDA đơn định (DPDA)

6.2. Sự tương đương giữa 2 dạng PDA

6.2.1. Biến đổi tương đương từ dạng 2 sang dạng 1

Page 19: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

19

Định lý 6.1: Nếu một CFL L được chấp nhận bởi một PDA chấp nhận chuỗi bởi

trạng thái kết thúc A2 thì L cũng được chấp nhận bởi một PDA chấp nhận chuỗi

bởi Stack rỗng A1

6.2.2. Biến đổi tương đương từ dạng 1 sang dạng 2

Định lý 6.2: Nếu một CFL L được chấp nhận bởi một PDA chấp nhận chuỗi bởi

stack rỗng thì L cũng được chấp nhận bởi một PDA chấp nhận chuỗi bởi trạng

thái kết thúc.

6.3. Sự tương đương giữa PDA và CFG

6.3.1. Biến đổi tương đương từ CFG sang PDA

Định lý 6.3: Nếu L là một ngôn ngữ phi ngữ cảnh thì tồn tại PDA chấp nhận

chuỗi với stack rỗng A sao cho L = N(A).

6.3.2. Biến đổi tương đương từ PDA sang CFG

Định lý 6.4: Nếu L được chấp nhận bởi một PDA chấp nhận chuỗi bởi stack

rỗng thì L là CFL.

- Yêu cầu SV chuẩn bị

Đọc trước bài giảng số 06.

Đọc trước chương 6 TL 1.

- Bài tập (practices and exercises)

Bài tập: Thiết kế PDA cho các CFL sau:

1. {ambn 0 m < n}.

2. {ambn 0 n < m}.

3. {ambncndm | m 0, n 0}.

4. {ambmcndn | m 0, n 0}.

5. {ambncpdq | m + n = p + q}.

6. {ambnck | m = n or m = k}.

7. {anbmc2n | m 0, n 0}.

- Tài liệu tham khảo (reading assignments)

1. Introduction to Automata Theory, Languages, and Computation (2nd Edition)

- John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Addison-Wesley.-

2001. Chương 7.

- Câu hỏi ôn tập (Questions)

Page 20: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

20

1. Định nghĩa pushdown automata, giải thích các thành phần. Cho ví dụ

minh họa.

2. Phân biệt PDA đơn định và PDA không đơn định.

Bài giảng 07: Máy Turing

Chương 7, mục:

Tiết thứ: 1-3 Tuần thứ: 13, 14

- Mục đích yêu cầu

Mục đích: Thiết kế PDA chấp nhận CFL bằng stack rỗng hoặc bằng trạng thái

kết thúc; Biến đổi tương đương giữa PDA chấp nhận ngôn ngữ bằng trạng thái

kết thúc sang PDA chấp nhận bằng stack rỗng. Biến đổi tương đương giữa

NPDA và CFG.

Yêu cầu: Sinh viên cụ thể hóa các thuật toán bằng chương trình.

- Hình thức tổ chức dạy học: Lý thuyết, thảo luận, tự học, tự nghiên cứu

- Thời gian: Giáo viên giảng: 4 tiết; Thảo luận và làm bài tập trên lớp: 2 tiết;

Sinh viên tự học: 12 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

7.1. Máy hữu hạn trạng thái có đầu ra

Một trong những hạn chế của FA là chỉ có khả năng đoán nhận từ hay

chấp nhận ngôn ngữ (acceptors and recognizers) , với mỗi chuỗi nhập vào thì

chỉ có tín hiệu ra dạng true (đạt đến trạng thái kết thúc) hoặc false (không thể

xử lý hoặc không rơi vào trạng thái kết thúc);

Trong bài toán thực tế, rõ ràng qua từng bước tính toán, FA có thể đưa ra

các xử lý tương ứng (các OUPUT). Như vậy, hoàn toàn có thể mở rộng FA để

giải quyết các lớp bài toán rộng hơn (FA có đầu ra – transducers):

Mealy machine (Developed by G.H. Mealy in 1955)

Moore machine (Developed by E.F. Moore in 1956)

7.2. Khái niệm về máy Turing

A. Turing vào năm 1936 đã đề xuất máy có khả năng biểu diễn các thuật

toán:

Page 21: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

21

Thực chất TM là một automata, nó phân rã họat động của một quá trình

tính toán thành các thao tác đơn giản;

TM sử dụng bộ nhớ ngoài vô hạn, đầu đọc có thể dịch chuyển theo chiều

bất kỳ, có thể đọc và sửa đồi giá trị ghi trên bộ nhớ.

TM có khả năng đoán nhận lớp ngôn ngữ đệ quy đếm được (ngôn ngữ loại

0 – recursively enumerable).

TM không đơn định có bộ nhớ giới hạn thì gọi là một automata tuyến tính

giới nội (Linear Baunded Automata -LBA), LBA có khả năng đoán nhận CSL

(ngôn ngữ loại 1)

7.3. Kỹ thuật thiết kế TM

Việc xây dựng máy Turing bằng cách liệt kê tất cả các hàm chuyển của nó

trên băng nhập có thể là một công việc thiếu hiệu quả. Ta cần sử dụng những

công cụ hay phương pháp thiết kế “thông minh” hơn:

Lưu trữ trong bộ điều khiển (Storage in the finite control);

Sử dụng nhiều rãnh trên băng (multiple tracks);

Đánh dấu ký hiệu (Checking off symbols);

Dịch qua (Shifting over);

Kỹ thuật chu trình con (subrountines);

7.3.1. Kỹ thuật lưu trữ trong bộ điều kiển

7.3.2. Kỹ thuật dịch qua

7.3.3. Kỹ thuật chu trình con

7.3.4. Sử dụng nhiều rãnh trên băng

ĐL 7.1: Nếu L được nhận diện bởi TM với băng vô hạn hai chiều thì L cũng

được nhận diện bằng TM vô hạn một chiều băng

ĐL 7.2: Nếu L được nhận dạng bởi máy Turing nhiều băng vô hạn hai chiều thì

nó cũng được nhận dạng bởi máy Turing một băng vô hạn hai chiều.

ĐL 7.3: Nếu L được chấp nhận bởi máy Turing không đơn định M1 thì L cũng

được chấp nhận bởi một máy Turing đơn định M2 nào đó.

ĐL 7.4: Nếu L được chấp nhận bởi máy Turing k chiều M1 thì L cũng được

chấp nhận bởi một máy Turing một chiều M2 nào đó.

7.4. Sự tương đương giữa TM và REL

ĐL 7.5: Nếu L được chấp nhận bởi máy Turing k đầu đọc M1 thì L cũng được

chấp nhận bởi một TM một đầu đọc M2 nào đó.

Page 22: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

22

ĐL 7.6: Một máy Turing có thể mô phỏng một RAM (Random Access

Machine), với điều kiện là mỗi chỉ thị RAM cũng có thể được mô phỏng bởi

một TM

ĐL 7.7: Một ngôn ngữ là tập đệ qui liệt kê nếu và chỉ nếu nó là G(M2) với TM

M2 nào đó.

ĐL 7.8: Nếu L là L(G) với một văn phạm không hạn chế G thì L là ngôn ngữ đệ

quy liệt kê.

ĐL 7.9: Nếu L là ngôn ngữ đệ quy liệt kê thì L = L(G) với một văn phạm không

hạn chế G nào đó.

7.5. Automata tuyến tính giới nội (LBA)

LBA (Linear Bounded Automata) là một TM không đơn định và băng nhập có

giới hạn ở hai đầu (cận phải và cận trái). Vì vậy, nó phải thỏa mãn hai điều kiện

sau:

Bộ chữ cái nhập có chứa thêm hai ký hiệu đặc biệt ⊄ và $ dùng làm ký hiệu

đánh dấu mút trái và mút phải.

LBA không thực hiện phép chuyển sang trái (L) từ ⊄ và không thực hiện phép

chuyển sang phải (R) từ $, và cũng không viết các ký hiệu khác lên ⊄ và $.

ĐL 7.6: Tồn tại giải thuật để xác định với mọi ngôn ngữ cảm ngữ cảnh CSG

G(V, T, P, S) bất kỳ và một chuỗi nhập w ∈ T*, liệu chuỗi w có thuộc ngôn ngữ

L(G) hay không.

ĐL 7.6: Nếu L là một CSG thì L sẽ được chấp nhận bởi một LBA nào đó.

ĐL 7.6: Nếu L = L(M) với một LBA M (Q, Σ, Γ,δ,qo,⊄, $, F) thì L – {ε} là một

ngôn ngữ cảm ngữ cảnh.

- Yêu cầu SV chuẩn bị

Đọc trước bài giảng số 07 của giảng viên.

Đọc chương 7 tài liệu 2.

- Tài liệu tham khảo (reading assignments)

1. Bài giảng số 07 của giảng viên.

2. Introduction to Automata Theory, Languages, and Computation (2nd Edition)

- John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Addison-Wesley.-

2001. Chương 7.

Page 23: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

23

- Câu hỏi ôn tập (Questions)

1. Nêu khái niệm về máy Turing, các kỹ thuật xây dựng máy Turing, lớp

ngôn ngữ đoán nhận bởi máy Turing.

2. Nêu khái niệm automata tuyến tính giới nội, lớp ngôn ngữ đoán nhận

bởi automata tuyến tính giới nội.

Bài ôn tập và kiểm tra

Chương 5, 6, 7, mục:

Tiết thứ: 1-3 Tuần thứ: 15

- Mục đích yêu cầu

Mục đích: Hệ thống lại các kiến thức môn học, nội dung thi kiểm tra. Kiểm tra

đánh chất lượng sinh viên

Yêu cầu: Sinh viên nắm vững các kiến thức môn học trang bị

- Hình thức tổ chức dạy học: thảo luận, tự học, tự nghiên cứu

- Thời gian: Thảo luận và làm bài tập trên lớp: 3 tiết; Sinh viên tự học: 6 tiết.

- Địa điểm: Giảng đường do P2 phân công.

- Nội dung chính:

Rà soát lại các nội dung ôn tập

Làm bài test đánh giá.

- Yêu cầu SV chuẩn bị

Hệ thống lại các bài giảng số 5, 6, 7.

Đọc và làm bài tập các chương 5, 6, 7 TL1.

- Tài liệu tham khảo (reading assignments)

1. Introduction to Automata Theory, Languages, and Computation (2nd

Edition) - John E. Hopcropft, Rareev Motwani, Jeffrey D. Ullman. Addison-

Wesley.-2001. Chương 5, 6, 7.

8. Chính sách đối với học phần và các yêu cầu khác của giáo viên

Tham gia học tập đầy đủ: có điểm danh, không mất trật tự, đi học đúng

giờ. Làm bài tập, tham gia thảo luận: làm đủ bài tập, tham gia các buổi thảo luận

Kiểm tra, thi: Luôn bao gồm 2 phần lý thuyết và thực hành với trọng số

như nhau. Học viên có thể được đặc cách miễn thi nếu tham gia tốt quá trình học

Page 24: Mẫu Đề cương môn họcfit.mta.edu.vn/files/FileMonHoc/DCCT HP Ngôn ngữ hình thức.pdf · ĐỀ CƯƠNG CHI TIẾT HỌC PHẦN AUTOMAT VÀ NGÔN NGỮ HÌNH THỨC 1

24

tập và đạt kết quả xuất sắc trong các bài kiểm tra định kỳ, tích cực tham gia thảo

luận.

9. Phương pháp, hình thức kiểm tra - đánh giá kết quả học tập học phần

9.1. Kiểm tra – đánh giá thường xuyên:

Thường xuyên điểm danh vào thời điểm thích hợp

9.2. Kiểm tra - đánh giá định kì:

- Tham gia học tập trên lớp (đi học đầy đủ, chuẩn bị bài tốt và tích cực

thảo luận,…): hệ số 0.10.

- Hoàn thành tốt Bài tập về nhà , Kiểm tra giữa kì : hệ số 0.2 Kiểm tra 2

lần sau khi hết chương 2 và chương 7.

- Thi kết thúc học phần tốt: hệ số 0.7

Chủ nhiệm Khoa

(Ký và ghi rõ họ tên)

Chủ nhiệm Bộ môn

(Ký và ghi rõ họ tên)

Giảng viên biên soạn

(Ký và ghi rõ họ tên)