Ngôn ngữ hình thức và ôtômat chương 3

11 214 0
Ngôn ngữ hình thức và ôtômat   chương 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Ch \ Ngôn ng hình th c Ôtômat (Formal Language & Automata) PGS.TS Phan Huy Khá Khánh ng V n ph m nh ngh a m t ngôn ng l p trì trình (NNLT) \ Khá Khái ni m v n ph m \ Phân c p cá lo i v n ph m c a Chomsky \ V n ph m chí qui \ Ngôn ng chí quy \ Tính ch t c a ngôn ng chí quy khanhph@vnn.vn \ Ch ng (Grammar) V n ph m (Grammar) Grammar) nh lílí "b "b m" m" (Pumping Theorem) \ ng d ng c a ngôn ng chí qui 2/61 2/61 nh ngh a m t ngôn ng l p trì trình (NNLT) \ Các ngôn ng l p trì trình (NNLT) b c cao đ c xây d ng mô ph ng (m t cá cách thô thi n) ngôn ng t nhiên, nhiên, th th ng là ti ng Anh (ho c ti ng Nga), t b n y u t : u B ký t (Character Set) u B t v ng (Vocabulary) u Cú phá pháp (Semantic) u Ng ngh a (Semantic) B ký t \ B ký t (Character Set) u G m m t t p h p h u h n cá ký t đ c phé phép dù dùng ngôn ng , th th ng là ký t ASCII u Có th hi u b ký t có vai trò nh b ng ch (Alphabet) c a m t ngôn ng t nhiên ¬C n c vào cú cú phá pháp c a NNLT, ng i l p trì trình vi t ch ng trì trình g m cá câu l nh đ gi i quy t bà toá toán c a mì ¬ đ t đ c m c đí đích đó, m i câu l nh vi t không nh ng đ n v m t cú cú phá pháp, mà mà ph i đú đ n c v m t ng ngh a, hay ý ngh a logic c a câu l nh, đ gi i quy t bà toá toán \ Ngoà Ngoài ra, ng i ta c ng th ng thêm y u t m t th n m là tính th c d ng (Pragmatic) 3/61 3/61 4/61 4/61 B t v ng Cú phá pháp \ B t v ng (Vocabulary) u u \ Cú phá pháp (Syntax) (Syntax) hay v n ph m (Grammar) là t p h p cá quy t c cho phé phép : G m cá t (Word) (Word) hay đ n v t v ng (Token) dù dùng đ t o thành câu l nh và đ c phân lo i tu theo vai trò c a chúng ngôn ng M i lo i t v ng l i đ c chia thành cá nhó nhóm nh h n tu theo ch c n ng s d ng \ Ví d : Ch ng trình Pascal Program P; Var ×, y : Integer; Begin Read(x); y:=x+2; Write(y) End u Quy đ nh cá cách th c k t h p cá ký t thành t , k t h p cá t thành câu l nh đú (Statement - Instruction), k t h p câu l nh đú trình hoà hoàn ch nh thành m t ch ng trì u Có th hình dung cá cách k t h p nà gi ng cá cách đ t câu m t ngôn ng t nhiên Các đ n v t v ng u - Tên, hay đ nh danh (Identifier) : Read, Write, P, x, y th đ nh ngh a cú cú phá pháp m t ngôn ng l p trì trình, ng ng ng s d ng : ¬ Ho - H ng (Constants) : - Toán t (Operators) : + , := - D u phân cách (Delimiters) : Program, Var, :, (, ), Begin, End i ta c s đ cú phá pháp (Syntax Diagram) c d ng chu n BackusBackus-Naur (BNF− (BNF−BackusNaur Normal Form), hay d ng BackusBackus-Naur m r ng (EBNF− (EBNF−Extended BNF) ¬ Ho 5/61 5/61 6/61 6/61 Ví d s đ cú phá pháp câu ti ng Anh Ví d v n ph m ti ng Anh \ Gi s câu ti ng Anh đ c xây d ng theo nh ng quy t c nh sau : u Câu (Phrase/Sentence) g m có có hai thành ph n : ¬ Ch ¬ u u u t (subject) ng t (Verbe) \ Trong ti ng Anh, m t câu đ n gi n g m thành ph n : u Ch t (Subject), ch ng h n “I” “You” You” ng t (Verb), ch ng h n “like” like” “see” see” u u B ng (Complement), ch ng h n “him” him” “her” her” \ Dùng s đ cú phá pháp, ta có có : Ch t có th He ho c She ng t có th sleep hay eat câu T đó có th xây d ng đ ¬ He sleep ¬ He eat ¬ She sleep ¬ She eat ch t c cá câu : ch t đ ng t b ng I You b ng đ ng t like him her see \ T đó có th xây d ng cá câu đú : “I see him” him”, “I like her” her”, v.v 7/61 7/61 8/61 8/61 Khá Khái ni m BNF Ví d d ng BNF \ BNF g m m t dãy cá quy t c, hay d ng th c u M i quy t c có có d ng : ::= u th th ng là m t ký hi u ph i đ c đ nh ngh a rõ u u là m t dãy ký hi u, ho c đ c th a nh n, ho c đ c đ nh ngh a tr c đó, tuân theo m t quy c đó D u ::= (ho c →, ho c = ) đ c “đ c đ nh ngh a là ” u N u có nhi u v ph i cù đ nh ngh a m t v trá trái, ng s d ng d u | đ phân cá cách theo ngh a lo i tr u D ng BNF m r ng s d ng hai c p d u quy i ta c: { } : v ph i có có m t chu i t đ n nhi u m c li t kê < >* [ ] : v ph i có có ho c có có m c li t kê (option) \ D ng BNF cá câu ti ng Anh đ n gi n nh sau : ::= < ng t > < B ng > ::= “I” | “You” You” < ng t > ::= “like” like” | “see” see” ::= “him” him” | “her” her” \ Tên ngôn ng Pascal : = { | } Ho c đ nh ngh a đ quy : = | | = ‘A’ | | ‘Z’ | ‘a’ | | ‘z’ = ‘0’ | | ‘9’ 9/61 9/61 10/61 10/61 S đ cú phá pháp c a tên Ví d m t NNLT đ n gi n \ Tên ngôn ng Pascal có có s đ cú phá pháp nh sau : \ V n ph m c a m t NNLT đ n gi n d ng EBNF nh sau : S Tên Ch Ch S ::= program * end ::= | ::= := ; Ch A Z a z := while + done ::= | + | [...]...Bài t p ch ng 3 1 Mô t các ngôn ng cho b i cá các v n ph m sau đây : u S → aS | Sb | aSb | c u S → SS | a | b u S → aA | bB | c A → Sa B → Sb u S → AB A → Sc | a B → dB | b u S → SaS | b u S → aS | bS | a | b u S → X | Y X→ε Y → aY | bY | a | b 2 Mô t v n ph m s n sinh cá các ngôn ng sau đây : u a*b u (a+b)(ab)*(baab)* 61/61 61/61 11 ... ng thá thái cu i nh t là h ) Nh v y L(G) là ngôn ng đ c M th a nh n và NNCQ 33 /61 33 /61 34 /61 34 /61 Ví d Ví d Cho VP3 G g m cá sx nh sau : Cho VP3 G g m cá sx nh sau : { S → aS | bS | abb... A b Chú cu i m i thêm Chú ý A là tr ng thá th vvào thái 35 /61 35 /61 Chú cu i m i thêm Chú ý A là tr ng thá th vvào thái 36 /61 36 /61 Bài t p Các ngôn ng chí quy Cho NNCQ L, ta ta xé xét b n... m và ôtômat B ng tó tóm t t v tính t ng đ ng gi a v n ph m và ôtômat c a cá l p v n ph m theo Chomsky : Σ* Lo i VP0 VP1 VP2 V n ph m D ng s n xu t Ví d Ôtômat T Không có h n ch Máy Turing Ngôn

Ngày đăng: 04/12/2015, 00:35

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan