Mục tiêu của học phần: Sinh viên nắm được các mô hình tính toán tổng quát, các khái niệm cơ bản về độ phức tạp tính toán, phương pháp chứng minh hình thức. Có khả năng minh họa hoạt động của các mô hình đó bằng chương trình.
BÀI GING MÔN HC LÝ THUYT ÔTÔMÁT & NNHT Ging Viên: H Vn Quân E-mail: hcquan@dit.hcmut.edu.vn Web site: http://www.dit.hcmut.edu.vn/~hcquan/student.htm Trng i hc Bách khoa Khoa Công Ngh Thông Tin Trang 2 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin NI DUNG MÔN HC ̈ Chng 1 Gii thiu v lý thuyt tính toán ̈ Chng 2 Ôtômát hu hn ̈ Chng 3 Ngôn ng chính qui và vn phm chính qui ̈ Chng 4 Các tính cht ca ngôn ng chính qui ̈ Chng 5 Ngôn ng phi ng cnh ̈ Chng 6 n gin hóa vn phm phi ng cnh và các dng chun ̈ Chng 7 Ôtômát đy xung ̈ Chng 8 Các tính cht ca ngôn ng phi ng cnh ̈ Chng 9 Máy Turing Trang 3 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin TÀI LIU THAM KHO 1. Bài ging lý thuyt Ngôn ng Hình thc và Automat - H Vn Quân [2002]. 2. An Introduction to Formal Languages and Automata - Peter Linz [1990]. Trang 4 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin HÌNH THC ÁNH GIÁ ̈ S có thông báo c th cho tng khóa hc. Tuy nhiên, thng là nh đc cho bên di. ̈ Thi trc nghim ̈ Thi gian: 120 phút ̈ S lng: 50 câu ̈ c phép xem tài liu trong 4 t giy A4 ̈ Làm bài tp ln cng đim (không bt buc) ̈ Np bài tp ln và báo cáo vào cui hc k ̈ Cng ti đa 2 đim Trang 5 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin CÁC MÔN LIÊN QUAN ̈ Ngôn ng lp trình ̈ Trình biên dch (*) ̈ Toán tin hc Trang 6 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin Chng 1 Gii thiu v lý thuyt tính toán 1.1 Gii thiu 1.2 Yêu cu v kin thc nn 1.3 Ba khái nim c bn ̈ Ngôn ng (languages) ̈ Vn phm (grammar) ̈ Ôtômát (máy t đng) 1.4 Mt vài ng dng Trang 7 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin Gii thiu ̈ Ôtômát ̈ Các mô hình tính toán t đng ̈ Ngôn ng hình thc (formal languages): ̈ nh ngha ̈ Phân loi ngôn ng ̈ Quan h vi ôtômát ̈ ng dng vào vic xây dng các ngôn ng lp trình ̈ Trang 8 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin Yêu cu v kin thc nn ̈ Lý thuyt ̈ Tp hp ̈ th ̈ K thut chng minh ̈ Qui np ̈ Phn chng ̈ K thut mô phng Trang 9 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin Ba khái nim c bn ̈ Ngôn ng (languages) ̈ Vn phm (grammar) ̈ Ôtômát (automata) Trang 10 Lý thuyt Ôtômát & NNHT - Khoa Công Ngh Thông Tin Ngôn ng ̈ Ngôn ng là gì? ̈ Các t đin đnh ngha ngôn ng mt cách không chính xác là mt h thng thích hp cho vic biu th các ý ngh, các s kin, hay các khái nim, bao gm mt tp các kí hiu và các qui tc đ vn dng chúng. ̈ nh ngha trên cha đ chính xác đ nghiên cu v NNHT ̈ Chúng ta cn xây dng mt đnh ngha toán hc cho khái nim ngôn ng [...]... Trang 11 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Các khái ni m (tt) ̈ Chu i (string), w ̈ ̈ Ví d ̈ ̈ Là m t dãy h u h n các kí hi u t b ng ch cái V i Qui ̈ = {a, b}, thì abab và aaabbba là các chu i trên c V i m t vài ngo i l , chúng ta s s d ng các ch cái th ng a, b, c, cho các ph n t c a còn các ch cái u, v, w, cho các tên chu i Trang 12 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông... Trang 13 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Các khái ni m (tt) Cho chu i w = uv ̈ Ti p u ng (prefix) ̈ ̈ u ng c aw v c g i lá ti p v ng c a w Chi u dài c a chu i w ̈ ̈ c g i là ti p Ti p v ng (suffix) ̈ ̈ u Là s kí hi u trong chu i, và c kí hi u là |w| Chu i tr ng (empty string) ̈ Là chu i không có kí hi u nào, th ng c kí hi u là Trang 14 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông... = wn c b ng cách k t n i w w n laàn Trang 15 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Các khái ni m (tt) ̈ *, ̈ ̈ ̈ ̈ + (bao óng sao và bao óng d ng) * là t p t t c các chu i trên k c chu i tr ng + là t p t t c các chu i trên ngo i tr chu i tr ng *= + { }; += *-{ } thì h u h n còn + và * là vô h n m Trang 16 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin c nh ngh a ngôn ng ̈ Ngôn ng ̈ ̈... Ôtômát & NNHT - Khoa Công Ngh Thông Tin Các phép toán trên ngôn ng ̈ Bù (complement), L ̈ ̈ c kí hi u là: K t n i, L1L2 ̈ ̈ Bù c a ngôn ng L trên b ng ch cái , L= *-L Cho 2 ngôn ng L1, L2 K t n i c a 2 ngôn ng L1, L2 là: L1L2 = { xy : x L1 , y L2 } L y th a, Ln ̈ ̈ L y th a b c n c a L, kí hi u là Ln, là vi c k t n i L v i chính nó n l n L0 = { } n L L L n laàn Trang 18 Lý thuy t Ôtômát & NNHT - Khoa... thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin nh ngh a v n ph m (tt) ̈ ̈ ̈ Các lu t sinh có d ng x y trong ó x ít nh t m t bi n, y (V T)* Các lu t sinh (production) ôi khi còn (rule) hay lu t vi t l i (written rule) (V T)+ và có ch a c g i là các qui t c Ví d ̈ Cho v n ph m sau: G = ({S, A, B}, {a, b}, S, P), v i P: S aAS | bBS | , A aaA | b, B bbB | a, Trang 22 Lý thuy t Ôtômát & NNHT - Khoa Công... n và các terminal Trang 23 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Các khái ni m ̈ D n xu t tr c ti p (directly derive), ̈ ̈ ̈ Cho lu t sinh x y và chu i w = uxv Lu t sinh trên có th áp d ng t i chu i w Khi áp d ng ta s nh n c chu i m i z = uyv w d n xu t ra z hay ng c l i z c d n xu t ra t w và kí hi u là: uxv uyv Trang 24 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Ngôn ng ̈ D n xu... NNHT - Khoa Công Ngh Thông Tin Các khái ni m (tt) ̈ S d n xu t câu (derivation) ̈ N uw Dãy này ̈ D ng câu (sentential forms) ̈ ̈ L(G) thì ph i t n t i dãy d n xu t: S w1 w2 wn w c g i là m t s d n xu t câu c a w Dãy S, w1, w2,… , wn c g i là các d ng câu c a s d n xu t Câu w c ng c xem là m t d ng câu c bi t Ví d ̈ Cho v n ph m G = ({S}, { a, b}, S, P), v i P S aSb | Trang 26 Lý thuy t Ôtômát & NNHT. .. ng c a v n ph m S E T F aSbS | bSaS | E+T|T T*F|F (E) | a | b Trang 28 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Bài t p v n ph m (tt) ̈ Xây d ng v n ph m cho ngôn ng ̈ ̈ ̈ ̈ Ngôn ng L1 và L2 trang trên L3 = {wwR : w {a, b}*} L4 = {anbmcn+m : n, m 0} L5 = {anbn+mcm : n, m 0} Trang 29 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin Ôtômát ̈ Ôtômát là gì? ̈ ̈ ̈ Ôtômát, d ch ngh a là máy t ng,... Máy tính s ngày nay chính là m t máy t ng i n hình và m nh nh t hi n nay Trang 30 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin nh ngh a ôtômát ̈ Ôtômát ̈ Là m t mô hình tr u t ph n ch y u sau ng c a máy tính s bao g m các thành Input file Control unit Storage Output Trang 31 Lý thuy t Ôtômát & NNHT - Khoa Công Ngh Thông Tin nh ngh a ôtômát (tt) ̈ ̈ ̈ Thi t b u vào (input file): là n i mà các chu... Ôtômát & NNHT - Khoa Công Ngh Thông Tin Ho t ̈ ̈ ng c a ôtômát (tt) Tr ng thái n i c a n v i u khi n t i th i i m k ti p c xác nh b i tr ng thái k (next state) hay b i hàm chuy n tr ng thái (transition function) Trong su t quá trình chuy n tr ng thái t kho ng th i gian này n kho ng th i gian k , k t qu (output) có th c sinh ra và thông tin trong b nh l u tr có th c thay i Trang 34 Lý thuy t Ôtômát & NNHT