BỘ GD&ĐT CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Trường đại học SPKT Độc lập – Tự do – Hạnh phúc
Khoa: CNTT *******
Chương trình Giáo dục đại học
Ngành đào tạo: Tin học cơ sở trính độ đào tạo: ĐH
Chương trình đào tạo: Công nghệ thông tin
Đề cương chi tiết học phần
1. Tên học phần: Automat và ngôn ngữ hình thức Mã học phần: AUFL330685
2. Tên Tiếng Anh: Automata and Formal Languages
3. Số tín chỉ: 3
4. Phân bố thời gian: (học kỳ 15 tuần) 3(3:0:6) (4)
5. Các giảng viên phụ trách học phần (5)
1/ GV phụ trách chính: Nguyễn Quang Ngọc
2/ Danh sách giảng viên cùng GD:
2.1/ Trần Công Tú
6. Điều kiện tham gia học tập học phần
Môn học trước: Kỹ thuật lập trình, toán cao cấp.
Môn học tiên quyết:
Khác: ……
7. Mô tả tóm tắt học phần
Học phần này cung cấp cho người học những kiến thức cơ bản về các lớp chuỗi, cung cấp
cho người học các thuật toán kiểm tra một chuỗi có thuộc một lớp cho trước hay không. Về mặt ứng
dụng học phần này là bộ phận cơ bản của trình biên dịch. Về mặt lý thuyết nó là cũng là bộ phận cơ
bản của tin học lý thuyết.
8. Chuẩn đầu ra của học phần (8)
Kiến thức:
8.1/ Trình bày được các khái niệm cơ bản của môn học như ngôn ngữ, Automat(dfa/nfa) ngôn ngữ
chính qui, biểu thức chính qui, ngữ pháp chính qui. Hiểu và ứng dụng được trong việc xác định một
ngôn ngữ không là chính qui.
8.2/ Thành thạo phương pháp chuyển một dfa sang dạng đồ thị , phương pháp rút gọn số trạng thái
trong dfa, phương pháp chuyển từ nfa sang dfa, phương pháp chuyển một dfa sang ngữ pháp chính
qui, và ngược lại, chuyển một buểu thức chính qui sang dfa.
8.3/ Xây dựng được các dfa cho các bài toán cụ thể
8.4/ Hiểu được các thuật toán kiểm tra một chuỗi có thuộc một lớp ngôn ngữ chính qui cho trước hay
không
1
8.5/ Cài đặt được các thuật toán ở 8.4
8.6/ Trình bày được các khái niệm ngữ pháp phi ngữ cảnh, ngôn ngữ phi ngữ cảnh, cây dẫn xuất
8.7/ Xây dựng được một ngữ pháp phi ngữ cảnh cho một ngôn ngữ phi ngữ cảnh. Hiểu và sử dụng
được các phương pháp rút gọn luật sinh. Xác định được một ngôn ngữ không là phi ngữ cảnh
8.8/ Trình bày được các khái niệm Automat đẩy xuống không đơn định, ngôn ngữ chấp nhận bởi
Automat đẩy xuống, Automat đẩy xuống đơn định , ngôn ngữ phi ngữ cảnh đơn định, Ngữ pháp cho
ngôn ngữ phi ngữ cảnh đơn định.
8.9/ Hiểu được sự liên hệ giữa Automat đẩy xuống không đơn định và ngôn ngữ phi ngữ cảnh.
8.10/ Thành thạo phương pháp chuyển một ngữ pháp phi ngữ cảnh sang automat đẩy xuống không
đơn định.
8.11/ Trình bày được các khái niệm máy Turing, tiên đề Turing, ngôn ngữ đệ qui kể được , ngôn
ngữ đệ qui, ngữ pháp không giới hạn, ngữ pháp cảm ngữ cảnh.
8.12/ Hiểu được sự liên hệ giữa ngữ pháp không giới hạn và ngôn ngữ đệ qui kể được. Hiểu được sự
liên hệ giữa ngữ pháp cảm ngữ cảnh và các ngôn ngữ.
8.13/ Xây dựng được một máy Turing cho một ngôn ngữ đệ quy kể được cho trước.
Kỹ năng:
8.14/ Áp dụng được các thuật toán đã học cho bài toán cụ thể “kiểm tra một biểu thức có viết đúng
cú pháp không”
Thái độ nghề nghiệp:
8.15/ Hình thành nhận thức về phát hiện vấn đề - thu thập thông tin – chọn thuật toán đúng để giải
các bài toán xử lý chuỗi.
9. Nhiệm vụ của sinh viên
SV không thực hiện đủ chỉ một trong các nhiệm vụ sau đây sẽ bị cấm thi:
- Dự lớp: tối thiểu 80%
- Bài tập: phải hoàn thành 100% bài tập về nhà do GV giao
- Báo cáo : trình bày một cài đặt bằng ngôn ngữ C của một thuật toán xử lý chuỗi cho một bài
tóan cụ thể.
10. Tài liệu học tập (10)
- Sách, giáo trình chính:
- Sách (TLTK) tham khảo:
11. Tỷ lệ Phần trăm các thành phần điểm và các hình thức đánh giá sinh viên : (11)
- Đánh giá quá trình: 30% trong đó:
+ Dự lớp: 10%
+ Làm bài tập: 10%
+ Báo cáo : 10%
2
- Thi cuối học kỳ: 10% (thi tự luận, đề mở (tối thiểu 90 phút) (cộng là 100% = 10 điểm))
12. Thang điểm: 10
13. Kế hoạch thực hiện (Nội dung chi tiết) học phần theo tuần (13)
Tuần thứ 1-2: Chương 1: Automat hữu hạn (6/0/12) Dự kiến các CĐR được
thực hiện sau khi kết thúc
ND
A/ Tóm tắt các ND và PPGD trên lớp: (6) 8.1/ Trình bày được các khái
niệm cơ bản của môn học
như ngôn ngữ, ngôn ngữ
chính qui, Automat( dfa/nfa),
ngữ pháp.
8.2/ Thành thạo phương pháp
chuyển một dfa sang dạng đồ
thị , phương pháp rút gọn số
trạng thái trong dfa, phương
pháp chuyển từ nfa sang dfa.
Nội Dung (ND) GD trên lớp
+ Ngôn ngữ, ngữ pháp, Automat
+ Máy chấp nhận hữu hạn đơn định.
+ Máy chấp nhận đơn định (dfa) và đồ thị chuyển trạng thái
+ Ngôn ngữ và dfa
+Ngôn ngữ chính qui
+Máy chấp nhận hữu hạn không đơn định
+ Sự tương đương giữa máy chấp nhấp nhận đơn định và
không đơn định
+Sự rút gọn số trạng thái trong dfa
Tóm tắt các PPGD:
+ Thuyết trình
+ Thảo luận nhóm
B/ Các nội dung cần tự học ở nhà: (12) Dự kiến các CĐR được
thực hiện sau khi kết thúc
tự học
Các nội dung tự học:
+ Làm 05 bài tập được giao
+ Cài đặt thuật toán bằng ngôn ngữ C cho dfa
-Liệt kê các tài liệu học tập cần thiết (yêu cầu phải thống
nhất với mục 11 nêu trên)
+ An introduction to formal languages and automata, Peter
Linz, University of California at Davis
8.3/ Xây dựng được các dfa
cho các bài toán cụ thể
8.4/ Hiểu các thuật toán kiểm
tra một chuỗi có thuộc một
lớp ngôn ngữ chính qui cho
trước hay không
Tuần thứ 3-4: Chương 2: Ngôn ngữ chính qui và ngữ
pháp chính qui (6/012)
Dự kiến các CĐR được thực
hiện sau khi kết thúc ND
A/ Tóm tắt các ND và PPGD trên lớp: (6) 8.1/ Trình bày được khái niệm
3
về biểu thức chính qui và ngữ
pháp chính qui.
8.2/ Hiểu và thực hiện được các
phương pháp chuyển một biểu
thức chính qui sang dfa, chuyển
một dfa sang ngữ pháp chính
qui, chuyển một ngữ pháp chính
qui sang dfa
Nội Dung (ND) trên lớp:
+ Biểu thức chính qui
+ Biểu thức chính qui và ngôn ngữ chính qui
+ Ngữ pháp chính qui
+ Ngữ pháp chính qui và ngôn ngữ chính qui
Tóm tắt các PPGD:
+ Thuyết trình
+ Thảo luận nhóm
B/ Các nội dung cần tự học ở nhà: (12) Dự kiến các CĐR được thực
hiện sau khi kết thúc tự học
Các nội dung cần tự học:
+ Làm 05 bài tập được giao
+ Đọc phương pháp chuyển một dfa sang biểu thức chính
qui
-Liệt kê các tài liệu học tập cần thiết (yêu cầu phải
thống nhất với mục 11 nêu trên)
+ An introduction to formal languages and automata,
Peter Linz, University of California at Davis
8.2/ Thành thạo các phương
pháp chuyển một biểu thức
chính qui sang dfa, chuyển một
dfa sang ngữ pháp chính qui,
chuyển một ngữ pháp chính qui
sang dfa
Tuần thứ 5: Chương 3: Tính chất của ngôn ngữ chính
qui ( 3/0/6)
Dự kiến các CĐR được thực
hiện sau khi kết thúc ND
A/ Tóm tắt các ND và PPGD trên lớp: (3) 8.1/ Hiểu và ứng dụng được
trong việc xác định một ngôn
ngữ không là chính qui.
Nội Dung (ND) trên lớp:
+ Tính đóng của ngôn ngữ chính qui đối với các phép
tóan giao, hội, bù
+ Nguyên lý chuồng bồ câu và ứng dụng trong việc xác
định một ngôn ngữ có là chính qui không.
Tóm tắt các PPGD:
+ Thuyết trình
B/ Các nội dung cần tự học ở nhà: (6) Dự kiến các CĐR được thực
hiện sau khi kết thúc tự học
Các nội dung cần tự học:
+ Làm 05 bài tập được giao
-Liệt kê các tài liệu học tập cần thiết (yêu cầu phải
thống nhất với mục 11 nêu trên)
+ An introduction to formal languages and automata,
Peter Linz, University of California at Davis
8.1/ Hiểu và ứng dụng được
trong việc xác định một ngôn
ngữ không là chính qui.
4
Tuần thứ 6-9: Chương 4:Ngữ pháp phi ngữ cảnh và
ngôn ngữ phi ngữ cảnh (12/0/24)
Dự kiến các CĐR được thực
hiện sau khi kết thúc ND
A/ Tóm tắt các ND và PPGD trên lớp: (12) 8.6/ Trình bày được các khái
niệm ngữ pháp phi ngữ cảnh,
ngôn ngữ phi ngữ cảnh, cây dẫn
xuất
Nội Dung (ND) trên lớp:
+ Ngữ pháp phi ngữ cảnh
+ Ngôn ngữ phi ngữ cảnh
+ Cây dẫn xuất
+ Cây dẫn xuất và dạng câu
+ Các phương pháp rút gọn luật sinh
+ Tính đóng của ngôn ngữ phi ngữ cảnh
+ Xác định một ngôn ngữ không là phi ngữ cảnh
Tóm tắt các PPGD:
+ Thuyết trình
+ Thảo luận nhóm
B/ Các nội dung cần tự học ở nhà: (24) Dự kiến các CĐR được thực
hiện sau khi kết thúc tự học
Các nội dung cần tự học:
+ Làm 08 bài tập được giao
-Liệt kê các tài liệu học tập cần thiết (yêu cầu phải
thống nhất với mục 11 nêu trên)
+ An introduction to formal languages and automata,
Peter Linz, University of California at Davis
8.7/ Xây dựng được một ngữ
pháp phi ngữ cảnh cho một
ngôn ngữ phi ngữ cảnh. Hiểu và
sử dụng được các phương pháp
rút gọn luật sinh. Xác định được
một ngôn ngữ không là phi ngữ
cảnh
Tuần thứ 10-12: Chương 5: Automat đẩy xuống
(9/0/18)
Dự kiến các CĐR được thực
hiện sau khi kết thúc ND
A/ Tóm tắt các ND và PPGD trên lớp: (9) 8.8/ Trình bày được các khái
niệm Automat đẩy xuống không
đơn định, ngôn ngữ chấp nhận
bởi Automat đẩy xuống,
Automat đẩy xuống đơn định ,
ngôn ngữ phi ngữ cảnh đơn
định, Ngữ pháp cho ngôn ngữ
phi ngữ cảnh đơn định.
8.9/ Hiểu được sự liên hệ giữa
Automat đẩy xuống không đơn
định và ngôn ngữ phi ngữ cảnh.
Nội Dung (ND) trên lớp:
+ Automat đẩy xuống không đơn định
+ Ngôn ngữ chấp nhận bởi Automat đẩy xuống
+ Automat đẩy xuống và ngôn ngữ phi ngữ cảnh
+ Ngữ pháp phi ngữ cảnh cho automat đẩy xuống
+ Automat đẩy xuống đơn định và ngôn ngữ phi ngữ
cảnh đơn định
+ Ngữ pháp cho ngôn ngữ phi ngữ cảnh đơn định
Tóm tắt các PPGD:
5
+ Thuyết trình
+ Thảo luận nhóm
B/ Các nội dung cần tự học ở nhà: (18) Dự kiến các CĐR được thực
hiện sau khi kết thúc tự học
Các nội dung cần tự học:
+ Làm 08 bài tập được giao
+ Cài đặt thuật toán cho 1 trong 08 bài tập trên
-Liệt kê các tài liệu học tập cần thiết (yêu cầu phải
thống nhất với mục 11 nêu trên)
+ An introduction to formal languages and automata,
Peter Linz, University of California at Davis
8.10/ Thành thạo phương pháp
chuyển một ngữ pháp phi ngữ
cảnh sang automat đẩy xuống
không đơn định.
Tuần thứ 13-15: Chương 6: Máy Turing( 9/0/18) Dự kiến các CĐR được thực
hiện sau khi kết thúc ND
A/ Tóm tắt các ND và PPGD trên lớp: (9) 8.11/ Trình bày được các khái
niệm máy Turing, tiên đề
Turing, ngôn ngữ đệ qui kể
được , ngôn ngữ đệ qui, ngữ
pháp không giới hạn, ngữ pháp
cảm ngữ cảnh.
8.12/ Hiểu được sự liên hệ giữa
ngữ pháp không giới hạn và
ngôn ngữ đệ qui kể được. Hiểu
được sự liên hệ giữa ngữ pháp
cảm ngữ cảnh và các ngôn ngữ
Nội Dung (ND) trên lớp:
+ Máy Turing
+ Tiên đề Turing
+ Ngôn ngữ đệ qui kể được và ngôn ngữ đệ qui
+ Ngữ pháp không giới hạn
+ Ngữ pháp không giới hạn và ngôn ngữ đệ qui kể được
+ Ngữ pháp cảm ngữ cảnh và các ngôn ngữ
Tóm tắt các PPGD:
+ Thuyết trình
+ Thảo luận nhóm
B/ Các nội dung cần tự học ở nhà: (18) Dự kiến các CĐR được thực
hiện sau khi kết thúc tự học
Các nội dung cần tự học:
+ Làm 05 bài tập được giao
-Liệt kê các tài liệu học tập cần thiết (yêu cầu phải
thống nhất với mục 11 nêu trên)
+ An introduction to formal languages and automata,
Peter Linz, University of California at Davis
8.13/ Xây dựng được một máy
Turing cho một ngôn ngữ đệ
quy kể được cho trước.
6
14. Đạo đức khoa học:
+ Các bài làm bài tập, các cài đặt nếu bị phát hiện sao chép của nhau sẽ bị trừ 100% điểm quá trình,
nếu ở mức độ nghiêm trọng(cho nhiều người chép-3 người giống nhautrở lên) sẽ bị cấm thi cuối kỳ
cả người sử dụng bài chép và người cho chép bài.
+ Sinh viên không hòan thành nhiệm vụ (mục 9) thì bị cấm thi cuối kỳ.
+ Sinh viên thi hộ thì cả 2 người- thi hộ và nhờ thi hộ sẽ bị đình chỉ học tập hoặc bị đuổi học.
15. Ngày phê duyệt: ngày/tháng/năm
16. Cấp phê duyệt:
Trưởng khoa Tổ trưởng BM Người biên soạn
17. Tiến trình cập nhật ĐCCT
Lấn 1: Nội Dung Cập nhật ĐCCT lần 1: ngày/tháng/năm <người cập nhật ký
và ghi rõ họ tên)
Tổ trưởng Bộ môn:
Lấn 2: Nội Dung Cập nhật ĐCCT lần 2: ngày/tháng/năm <người cập nhật ký
và ghi rõ họ tên)
Tổ trưởng Bộ môn:
7
8