Bai giang 4 phan tich cu phap co ban

20 222 0
Bai giang 4   phan tich cu phap co ban

Đ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

Bi ging - Phõn tớch cỳ phỏp v cỏc phng phỏp phõn tớch c bn Nguyn Phng Thỏi B mụn Khoa hc Mỏy tớnh http://www.coltech.vnu.vn/~thainp/ Bi toỏn u vo: cõu vo cha ton cỏc t t Phõn tỏch cõu vo thnh cỏc phn theo phm v biu din cu trỳc ny bng mt cõy (gi l cõy phõn tớch) hoc theo mt cu trỳc no ú tng ng vi cõy Bi toỏn (tip) Chổồng trỗnh nguọửn Phỏn tờch tổỡ vổỷng yóu cỏửu lỏỳy tổỡ tọỳ tổỡ tọỳ Phỏn tờch cuù phaùp cỏy phỏn tờch Phỏn tờch ngổợ nghộa Baớng kyù hióỷu Vn phm Mi ngụn ng lp trỡnh u cỏc lut mụ t cỏc cu trỳc cỳ phỏp Mt chng trỡnh ngun vit ỳng phi tuõn theo cỏc lut mụ t ny - tc l vit ỳng phm (hay ỳng ng phỏp) Vn phm ca mt ngụn ng lp trỡnh cu trỳc th mụ t bng phm phi ng cnh v biu din theo ký phỏp BNF hoc th chuyn Cỏc phng phỏp phõn tớch C s ca phõn tớch cỳ phỏp i vi lp VPPNC l nh lý Bi toỏn thnh viờn vi ngụn ng phi ng cnh Ngi ta ó chng minh c nh lý ny bng cỏch a cỏc gii thut ci t trờn thc t, vớ d nh: Thut toỏn phõn tớch Top-Down Thut toỏn phõn tớch Bottom - Up Thut toỏn phõn tớch CYK (Coke-YoungerKasami) Thut toỏn phõn tớch Earley Cỏc phng phỏp phõn tớch (tip) Vic phõn tớch mt cõu l khụi phc hoc xõy dng suy dn sinh nú, ú ta s dng c cõy suy dn Thụng thng cỏc thut toỏn phõn tớch, ta hay tin hnh t mt phớa ca cõu, kim tra ln lt cỏc thnh phn ca cõu ú cho n ht (a s t trỏi sang phi) Hai chin lc phõn tớch chớnh Chin lc phõn tớch top-down (trờn xung): cho mt phm phi ng cnh G = (, , P, S) v mt cõu cn phõn tớch w Ta xut phỏt t im u, ngha l t S, ỏp dng cỏc suy dn trỏi, tin t trỏi qua phi th to cõu a vo phõn tớch w Chin lc phõn tớch bottom-up (di lờn): Quỏ trỡnh ngc li vi phõn tớch top-down, xut phỏt t chớnh cõu vo phõn tớch w, bng cỏch ỏp dng thu gn cỏc suy dn phi, tin hnh t trỏi qua phi i ti ký hiu u S ca phm + Hai chin lc phõn tớch chớnh (tip) iu kin cỏc thut toỏn trờn l dng nh sau: Phõn tớch top-down (phõn tớch trỏi) l dng v ch G khụng quy trỏi Phõn tớch bottom-up (phõn tớch phi) l dng v ch G khụng cha suy dn A=>+ A v khụng sn xut B (sn xut rng) Khú khn phõn tớch Gp cỏc lut nhiu la chn v phi nh: A | | | k, k Gii quyt: hai chin lc: Phõn tớch quay lui (backtrack): ta th ln lt cỏc i (1 i k) tỡm i thớch hp Rt tn thi gian Phõn tớch khụng quay lui (without-backtrack) Trong vic tỡm sn xut thớch hp, ta bit cỏch xỏc nh sn xut nht thớch hp m khụng cn phi th cỏc sn xut khỏc Cỏc phng phỏp phõn tớch nh vy gi l phõn tớch tt nh (deterministic parsing) Phõn tớch Top-Down Chun b: Vi mt VPPNC cho trc, ỏnh du mi la chn tng sn xut Vớ d: nu cỏc sn xut dng SaSbS | aS | c thỡ aSbS l la chn th nht, aS l la chn th hai v c l la chn cui ca sn xut S Dựng mt tr ch n xõu vo Ký hiu trờn xõu vo tr ch n gi l ký hiu vo hin ti V trớ u tiờn ca tr l ký hiu bờn trỏi nht ca xõu vo 10 Phõn tớch Top-Down (tip) Tin hnh cỏc bc quy sau: Nu nỳt ang xột l mt nỳt ký hiu khụng kt thỳc A thỡ ly la chn u tiờn, ký hiu l X1 Xk Li ly nỳt X1 lm nỳt ang xột Trng hp k = (sn xut ) thỡ ly nỳt bờn phi A lm nỳt ang xột Nu nỳt ang xột l nỳt ký hiu kt thỳc a, thỡ so sỏnh nú vi ký hiu vo hin ti: Nu ging thỡ ly nỳt bờn trỏi a lm nỳt ang xột v chuyn tr xõu vo sang bờn phi mt ký hiu Nu a khụng ging thỡ quay li nỳt sn xut trc to ra, iu chnh li tr xõu vo nu cn thit, sau ú ta li th la chn tip theo Nu khụng cũn la chn no na thỡ li qua li nỳt trc ú v c nh vy 11 Vớ d VPPNC G=(, , P, S) P: SaSbS | aS | c w =aacbc 12 Vớ d VPPNC G=(, , P, S) P: SaSbS | aS | c w =aacbc 13 14 Phõn tớch Bottom-Up Ngc li vi phng phỏp top-down: bt u t lỏ c gng xõy dng thnh cõy bng cỏch hng lờn gc Phõn tớch bottom-up c gi l phõn tớch gt thu gn (shift-reduce parsing) 15 Vớ d SAB, Aab, Baba ababa 16 Thi gian, b nh v phc ca top-down & bottom-up Vi xõu vo w di n, phc ca thut toỏn cn Hỡnh dung: c = 3, n = 20 3n = 320 = trờn t Vi mỏy tớnh kh nng thc hin c 1000 phộp xột t t mi giõy, tng thi gian cn phõn tớch mi mt cõu lnh ny l 3t / 1000/60/60 > 80 gi Nu mỏy tớnh kh nng x lý gp 10 ln (10.000 t t mi giõy) thỡ cng cn n gi x lý xong cõu lnh ú 17 Phỏt hin li Nu mt chng trỡnh dch ch phi dch cỏc chng trỡnh mỏy tớnh vit ỳng thỡ thit k v hot ng ca nú s rt n gin Mt chng trỡnh dch tt phi phỏt hin, nh v, phõn loi c tt c cỏc li giỳp ngi vit Ngi thit k chng trỡnh dch phi t quyt nh bt v bỏo li nh th no 18 Phỏt hin li (tip) Giai on phõn tớch cỳ phỏp phỏt hin v khc phc c khỏ nhiu li do: Nhiu loi li khỏc ng thi cng l li cỳ phỏp Vớ d li chui t t t b phõn tớch t vng khụng theo th t ca lut phm ca ngụn ng lp trỡnh Nh s chớnh xỏc ca cỏc phng phỏp phõn tớch 19 Cỏc chin lc phc hi li Phc hi kiu trng pht Khụi phc cm t Gia c lut (sn xut) hay gp li Chnh lý ton cc 20 ... c w =aacbc 13 14 Phõn tớch Bottom-Up Ngc li vi phng phỏp top-down: bt u t lỏ c gng xõy dng thnh cõy bng cỏch hng lờn gc Phõn tớch bottom-up c gi l phõn tớch gt thu gn (shift-reduce parsing)... cỏc gii thut ci t trờn thc t, vớ d nh: Thut toỏn phõn tớch Top-Down Thut toỏn phõn tớch Bottom - Up Thut toỏn phõn tớch CYK (Coke-YoungerKasami) Thut toỏn phõn tớch Earley Cỏc phng phỏp phõn... biu din cu trỳc ny bng mt cõy (gi l cõy phõn tớch) hoc theo mt cu trỳc no ú tng ng vi cõy Bi toỏn (tip) Chổồng trỗnh nguọửn Phỏn tờch tổỡ vổỷng yóu cỏửu lỏỳy tổỡ tọỳ tổỡ tọỳ Phỏn tờch cu phaùp

Ngày đăng: 22/12/2016, 12:40

Từ khóa liên quan

Mục lục

  • Bài giảng 4 - Phân tích cú pháp và các phương pháp phân tích cơ bản

  • Bài toán

  • Bài toán (tiếp)

  • Văn phạm

  • Các phương pháp phân tích

  • Các phương pháp phân tích (tiếp)

  • Hai chiến lược phân tích chính

  • Hai chiến lược phân tích chính (tiếp)

  • Khó khăn khi phân tích

  • Phân tích Top-Down

  • Phân tích Top-Down (tiếp)

  • Ví dụ

  • Slide 13

  • Slide 14

  • Phân tích Bottom-Up

  • Slide 16

  • Thời gian, bộ nhớ và độ phức tạp của top-down & bottom-up

  • Phát hiện lỗi

  • Phát hiện lỗi (tiếp)

  • Các chiến lược phục hồi lỗi

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

Tài liệu liên quan