2.29k likes | 2.97k Vues
TRÍ TUỆ NHÂN TẠO Artificial Intelligent. Khoa Công Nghệ Thông Tin Đại Học Bách Khoa – Tp. HCM. Nội dung môn học – Giới thiệu. Chương 1: Giới thiệu Ngành Trí tuệ nhân tạo là gì? Mục tiêu nghiên cứu của ngành Trí tuệ nhân tạo Lịch sử hình thành và hiện trạng Turing Test
E N D
TRÍTUỆNHÂNTẠOArtificialIntelligent Khoa Công Nghệ Thông Tin Đại Học Bách Khoa – Tp. HCM
Nộidungmônhọc–Giớithiệu • Chương 1: Giới thiệu • Ngành Trí tuệ nhân tạo là gì? • Mục tiêu nghiên cứu của ngành Trí tuệ nhân tạo • Lịch sử hình thành và hiện trạng • Turing Test • Chương 2: Logic vị từ • Mệnh đề & logic vị từ • Logic vị từ dưới góc nhìn của AI
Nộidungmônhọc–Cáckỹthuậttìmkiếm • Chương 3:Tìm kiếm trên không gian trạng thái (State Space Search) • AI : Biểu diễn và tìm kiếm • Các giải thuật tìm kiếm trên không gian trạng thái • Depth first search (DFS) - Breath first search (BFS) • Chương 4:Tìm kiếm theo Heuristic • Heuristic là gì? • Tìm kiếm theo heuristic • Các giải thuật Best first search (BFS), Giải thuật A* • Chiến lược Minimax, Alpha Beta
Nộidungmônhọc–Kỹthuậtpháttriểnứngdụng • Chương 5:Hệ luật sinh • Tìm kiếm đệ qui • Hệ luật sinh: Định nghĩa và ứng dụng • Tìm kiếm trên hệ luật sinh • Chương 6:Hệ chuyên gia • Giới thiệu về hệ chuyên gia • Mô hình hệ chuyên gia: dự trên luật, dựa trên frame • Phát triển một hệ chuyên gia • Chương 7:Biểu diển tri thức • Biểu diển tri thức trong AI: vai trò và ứng dụng • Các kỹ thuật biểu diển tri thức: semantic network, lưu đồ phụ thuộc khái niệm, frame, script
Thựchành &Tàiliệuthamkhảo • Thực hành Prolog và CLISP • Prolog : Các giải thuật tìm kiếm • CLISP : Biểu diển tri thức • Bài tập lớn • Tài liệu tham khảo • Bài giảng “Trí tuệ nhân tạo” – ThS Nguyễn Cao Trí – KS Lê Thành Sách • Artificial Inteligent –George F. Luget & Cilliam A. Stubblefied • Giáo trình “Trí tuệ nhân tạo” – KS Nguyễn Đức Cường • Trí tuệ nhận tạo – Nguyễn Quang Tuấn – Hà nội
Chương 1: GIỚITHIỆU Ngành Trí tuệ nhân tạo là gì? Mục tiêu nghiên cứu của ngành Trí tuệ nhân tạo Lịch sử hình thành và hiện trạng Turing Test
ĐốitượngnghiêncứucủaAI • Đối tượng nghiên cứu của ngành AI AI là ngành nghiên cứu về các hành xử thông minh (intelligent behaviour) bao gồm: thu thập, lưu trữ tri thức, suy luận, hoạt động và kỹ năng. Đối tượng nghiên cứu là các “hành xử thông minh” chứ không phải là “sự thông minh”. ‘Không có’ Sự Thông Minh Chỉ có Biểu hiện thông minh qua hành xử
SựThôngMinh • Thông minh hay Hành xử thông minh là gì? • Hành xử thông minh: là các hoạt động của một đối tượng như là kết quả của một quá trình thu thập, xử lý và điều khiển theo những tri thức đã có hay mới phát sinh (thường cho kết quả tốt theo mong đợi so với các hành xử thông thường) là biểu hiện cụ thể, cảm nhận được của “Sự thông minh” • Khái niệm về tính thông minh của một đối tượng thường biểu hiện qua các hoạt động: • Sự hiểu biết và nhận thức được tri thức • Sự lý luận tạo ra tri thức mới dựa trên tri thức đã có • Hành động theo kết quả của các lý luận • Kỹ năng (Skill) TRITHỨC ???
Trithức(Knowledge) • Tri thức là những thông tin chứa đựng 2 thành phần • Các khái niệm: • Các khái niệm cơ bản: là các khái niệm mang tính quy ước • Các khái niệm phát triển: Được hình thành từ các khác niệm cơ bản thành các khái niệm phức hợp phức tạp hơn. • Các phương pháp nhận thức: • Các qui luật, các thủ tục • Phương pháp suy diễn, lý luận,.. • Tri thức là điều kiện tiên quyết của các hành xử thông minh hay “Sự thông minh” • Tri thức có được qua sự thu thập tri thức và sản sinh tri thức • Quá trình thu thập và sản sinh tri thức là hai quá trình song song và nối tiếp với nhau – không bao giờ chấm dứt trong một thực thể “Thông Minh”
Trithức–Thuthậpvàsảnsinh • Thu thập tri thức: • Tri thức được thu thập từ thông tin, là kết quả của một quá trình thu nhận dữ liệu, xử lý và lưu trữ. Thông thường quá trình thu thập tri thức gồm các bước sau: • Xác định lĩnh vực/phạm vi tri thức cần quan tâm • Thu thập dữ liệu liên quan dưới dạng các trường hợp cụ thể. • Hệ thống hóa, rút ra những thông tin tổng quát, đại diện cho các trường hợp đã biết – Tổng quát hóa. • Xem xét và giữ lại những thông tin liên quan đến vấn đề cần quan tâm , ta có các tri thức về vấn đề đó. • Sản sinh tri thức: • Tri thức sau khi được thu thập sẽ được đưa vào mạng tri thức đã có. • Trên cơ sở đó thực hiện các liên kết, suy diễn, kiểm chứng để sản sinh ra các tri thức mới.
Trithức–Trithứcsiêucấp • “Trí thức siêu cấp” (meta knowledge) hay “Tri thức về Tri thức” Là các tri thức dùng để: • Đánh giá tri thức khác • Đánh giá kết quả của quá trình suy diễn • Kiểm chứng các tri thức mới • Phương tiện truyền tri thức: ngôn ngữ tự nhiên
Hànhxửthôngminh–Kếtluận • Hành xử thông minh không đơn thuần là các hành động như là kết quả của quá trình thu thập tri thức và suy luận trên tri thức. • Hành xử thông minh còn bao hàm • Sự tương tác với môi trường để nhận các phản hồi • Sự tiếp nhận các phản hồi để điều chỉnh hành động - Skill • Sự tiếp nhận các phản hồi để hiệu chỉnh và cập nhật tri thức • Tính chất thông minh của một đối tượng là sự tổng hợp của cả 3 yếu tố: thu thập tri thức, suy luận và hành xử của đối tượng trên tri thức thu thập được. Chúng hòa quyện vào nhau thành một thể thống nhất “ Sự Thông Minh” • Không thể đánh giá riêng lẽ bất kỳ một khía cạnh nào để nói về tính thông minh. THÔNG MINH CẦN TRI THỨC
MụctiêunghiêncứucủangànhAI Trí tuệ nhân tạo nhằm tạo ra “Máy người”? Mục tiêu • Xây dựng lý thuyết về thông minh để giải thích các hoạt động thông minh • Tìm hiểu cơ chế sự thông minh của con người • Cơ chế lưu trữ tri thức • Cơ chế khai thác tri thức • Xây dựng cơ chế hiện thực sự thông minh • Áp dụng các hiểu biết này vào các máy móc phục vụ con người.
MụctiêucủaAI (tt) • Cụ thể: • Kỹ thuật: xây dựng các máy móc có tính thông minh nhằm đáp ứng tốt hơn nhu cầu của con người. • Khoa học: xây dựng và phát triển các khái niệm, thuật ngữ, phương pháp để hiểu được các hành xử thông minh của sinh vật. • Đối tượng thường được chú trọng phát triển là máy tính Sự cần thiết của ngành AI ????? Làm sao biết máy có thông minh?
TuringTest:Thửtínhthôngminh • Bài toán xác định tính thông minh của một đối tượng • Turing test: Aiđây?? Máy/người?? Câu hỏi Đốitượngđượctest Ngườithựchiệntest Ngườiđốichứng
TuringTest:Ưu - Khuyết • Ưu điểm • Đem lại quan điểm khách quan về sự thông minh: Thông minh hay không thể hiện qua các trả lời của các câu hỏi • Loại trừ các thành kiến: không thích công nhận tính thông minh của máy móc. Sự thông minh chỉ được đánh giá qua các câu hỏi, không bị chi phối bởi các yếu tố khác. • Tránh tình trạng hiểu lầm • Khuyết điểm: • Phép thử tập trung vào các công việc biểu diển hoàn toàn bằng ký hiệu do đó làm mất một đặc tính rất quan trọng của máy tính là tính toán chính xác và hiệu quả • Không thử nghiệm được các khả năng tri giác và khéo léo • Giới hạn khả năng thông minh của máy tính theo khuôn mẫu con người. Nhưng con người chưa hẳn là thông minh hoàn hảo. • Không có một chỉ số rõ ràng định lượng cho sự thông minh. Phụ thuộc vào người tester. ThôngMinh? Còntùy
LịchsửpháttriểncủaAI : Giaiđoạncổđiển • Giai đoạn cổ điển (1950 – 1965) Đây là giai đoạn của 2 lĩnh vực chính:Game Playing (Trò chơi) và Theorem Proving (Chứng minh định ký) Game Playing: dựa trên kỹ thuật State Space Search với trạng thái (State) là các tình huống của trò chơi. Đáp án cần tìm là trạng thái thắng hay con đường dẩn tới trạng thái thắng. áp dụng với các trò chơi loại đối kháng. Ví dụ: Trò chơi đánh cờ vua. Có 2 kỹ thuật tìm kiếm cơ bản: • Kỹ thuật generate and test : chỉ tìm được 1 đáp án/ chưa chắc tối ưu. • Kỹ thuật Exhaustive search (vét cạn): Tìm tất cả các nghiệm, chọn lựa phương án tốt nhất. (Bùngnổtổhợpmnvớim>=10)
LịchsửpháttriểncủaAI : Giaiđoạncổđiển (tt) Theorem Proving: dựa trên tập tiên đề cho trước, chương trình sẽ thực hiện chuỗi các suy diển để đạt tới biểu thức cần chứng minh. Nếu có nghĩa là đã chứng minh được. Ngược lại là không chứng minh được. Ví dụ: Chứng minh các định lý tự động, giải toán,... Vẫn dựa trên kỹ thuật state space search nhưng khó khăn hơn do mức độ và quan hệ của các phép suy luận: song song, đồng thời, bắc cầu,.. Có các kết quả khá tốt và vẫn còn phát triển đến ngày nay (Bùngnổtổhợpmn , m>=10)
LịchsửpháttriểncủaAI- Giaiđoạnviễnvông • Giai đoạn viễn vông (1965 – 1975) • Đây là giai đoạn phát triển với tham vọng làm cho máy hiểu được con người qua ngôn ngữ tự nhiên. • Các công trình nghiên cứu tập trung vào việc biểu diển tri thức và phương thức giao tiếp giữa người & máy bằng ngôn ngữ tự nhiên. • Kết quả không mấy khả quan nhưng cũng tìm ra được các phương thức biểu diễn tri thức vẫn còn được dùng đến ngày nay tuy chưa thật tốt như: • Semantic Network (mạng ngữ nghĩa) • Conceptial graph (đồ thị khái niệm) • Frame (khung) • Script (kịch bản) Vấpphảitrởngạivềnănglực củamáytính
LịchsửpháttriểncủaAI- Giaiđoạnhiệnđại • Giai đoạn hiện đại (từ 1975) • Xác định lại mục tiêu mang tính thực tiễn hơn của AI là: • Tìm ra lời giải tốt nhất trong khoảng thời gian chấp nhận được. • Không cầu toàn tìm ra lời giải tối ưu • Tinh thần HEURISTIC ra đời và được áp dụng mạnh mẽ để khắc phục bùng nổ tổ hợp. • Khẳng định vai trò của tri thức đồng thời xác định 2 trở ngại lớn là biểu diển tri thức và bùng nổ tổ hợp. • Nêu cao vai trò của Heuristic nhưng cũng khẳng định tính khó khăn trong đánh giá heuristic. Pháttriểnứngdụngmạnhmẽ: Hệchuyêngia, Hệchuẩnđoán,.. Betterthannothing
Cáclĩnhvựcứngdụng • Game Playing: Tìm kiếm / Heuristic • Automatic reasoning & Theorem proving: Tìm kiếm / Heuristic • Expert System: là hướng phát triển mạnh mẽ nhất và có giá trị ứng dụng cao nhất. • Planning & Robotic: các hệ thống dự báo, tự động hóa • Machine learning: Trang bị khả năng học tập để giải quyết vấn đề kho tri thức: • Supervised : Kiểm soát được tri thức học được. Không tìm ra cái mới. • UnSupervised:Tự học, không kiểm soát. Có thể tạo ra tri thức mới nhưng cũng nguy hiểm vì có thể học những điều không mong muốn.
Cáclĩnhvựcứngdụng (tt) • Natural Language Understanding & Semantic modelling: Không được phát triển mạnh do mức độ phức tạp của bài toán cả về tri thức & khả năng suy luận. • Modeling Human perfromance: Nghiên cứu cơ chế tổ chức trí tuệ của con người để áp dụng cho máy. • Language and Environment for AI:Phát triển công cụ và môi trường để xây dựng các ứng dụng AI. • Neurol network / Parallel Distributed processing: giải quyết vấn đề năng lực tính toán và tốc độ tính toán bằng kỹ thuật song song và mô phỏng mạng thần kinh của con người.
MôhìnhpháttriểnứngdụngAI • Mô hình ứng dụng Ai hiện tại: AI = Presentation & Search Tìmkiếm Search Suyluận Heurictic TriThức Knowledge Engineering
Chương 2: PHÉPTOÁNVỊTỪ Phép toán vị từ dưới góc nhìn của AI Mệnh đề Vị từ
AI & Phéptoánvịtừ • Tại sao Ai phải nghiên cứu phép toán vị từ? • AI Phát triển các chương trình có khả năng suy luận • Suy luận giúp chương trình AI biết được tính đúng/sai của một vấn đề nào đó. • Phép toán vị từ cung cấp một khả năng triển khai các quá trình suy diễn trên máy tính • Phát triển chương trình AI cần phép toán vị từ. • Phép toán vị từ được hiện thực bằng ngôn ngữ lập trình trên máy tính PROLOG
Mệnh đề thực tế “Nếu trời mưa thì bầu trời có mây” Trời đang mưa Vậy Bầu trời có mây Mệnh đề logic P=“Trời mưa” Q= “Bầu trời có mây” Ta có hai phát biểu sau đúng: P Q P Vậy theo luật suy diễn Q là đúng. Nghĩa là: “Bầu trời có mây” AI & Phéptoánvịtừ: Minhhọa 1
Mệnh đề thực tế “Nếu NAM có nhiều tiền thì NAM đi mua sắm” “Nam KHÔNG đi mua sắm” Vậy Nam KHÔNG có nhiều tiền Mệnh đề logic P=“Nam có nhiều tiền” Q= “Nam đi mua sắm” Ta có hai phát biểu sau đúng: P Q Q Vậy theo luật suy diễn P là đúng. Nghĩa là: “Nam KHÔNG có nhiều tiền” AI & Phéptoánvịtừ: Minhhọa 2
Phéptoánmệnhđề : Địnhnghĩa Mệnh đề: • Mệnh đề là một phát biểu khai báo • Mệnh đề chỉ nhận một trong hai giá trị: ĐÚNG (True) hoặc SAI (False) Ví dụ: • Ngày 01tháng giêng là ngày tết cổ truyền • Môn bạn đang học là AI • Hôm nay là quốc khánh • Hôm nay trời lạnh • Tại sao phải học AI ?
Mệnhđề : Cácphéptoán • Biểu thức mệnh đề: là sự kết hợp của các mệnh đề bởi các phép toán mệnh đề • Các phép toán: Phủ định một ngôi Hội hai ngôi Tuyển hai ngôi Suy ra hai ngôi = Tương đương hai ngôi • Cách đánh giá giá trị của phép toán: Bảng chân trị Ưutiên
Mệnh đề thực tế “Nam học giỏi, thông minh, đẹp trai” “Nam học giỏi hoặc thông minh” “Nam hoặc học giỏi, hoặc đẹp trai” “Nam thông mình thì học giỏi” Biểu thức mệnhđề P Q R P Q (P R) (P R) Q P Mệnhđề : Cácphéptoán–vídụ P=“Namhọcgiỏi” ; Q=“Namthôngminh” ; R=“Namđẹptrai”
Mệnhđề : Cácbiểuthứcmệnhđềđúng • Ký hiệu biểu thức đúng: wff • Thành phần cơ bản là P hay P, với P là một mệnh đề • Các biểu thức đúng định nghĩa theo dạng luật sinh sau: Wff= “Thành phần cơ bản”| wff | wff^wff | wff v wff | wff wff | wff = wff | (wff)
Mệnhđề : Ngữnghĩa • Ngữ nghĩa của một biểu thức mệnh đề là giá trị của biểu thức mệnh đề đó. • Giá trị của biểu thức mệnh đề là có khả năng tính toán được. Trong đó: • Mỗi mệnh đề được gán một giá trị true hay false • Mỗi toán tử được đánh giá theo bảng chân trị và thứ tự ưu tiên của toán tử. • Giá trị của biểu thức mệnh đề tính bằng cách: • Dùng bảng chân trị • Đánh giá ngược từ node lá khi biểu thức mệnh đề được biểu diễn ở dạng cây
Mệnhđề : Cáctươngđương • Các tương đương được sử dụng thường xuyên trong quá trình biến đổi một biểu thức từ dạng này sang dạng khác. • Khả năng biến đổi tương đương trên máy tính có thể được làm tự động • Các tương đương: Trong các tương đương sau A,B,C là các mệnh đề bất kỳ. • Dạngphủđịnhkép A = A • Dạngtuyển A TRUE= TRUE A FALSE= A A A= A A A= TRUE • Dạnghôäi A TRUE= A A FALSE= FALSE A A= A A A= FALSE
Dạng suy ra A TRUE = TRUE A FALSE = A TRUE A = A FALSE A = TRUE A A= TRUE Dạng hấp thu A (A B) =A A (A B) = A A (A B)= AB A (A B)= AB Dạng De Morgan (A B) = A B (A B) = A B Dạng khác A B =A B (A B) =A B A B = A B FALSE Phép và có khả năng kết hợp. Phép và có khả năng hoán vị. Phép có khả năng phân phối trên A (BC) =(AB)(AC) Phép có khả năng phân phối trên A (BC) =(AB)(AC) Mệnhđề : Cáctươngđương (tt)
Mệnhđề : CácdạngchuẩnCNF & DNF • Dạng chuẩnlà kết xuất chuẩn của các giải thuật làm việc với phép toán mệnh đề. • Tuyển cơ bản: là thành phần cơ bản hay sự kết hợp của các thành phần cơ bản bằng phép tuyển(v) • Hội cơ bản: là thành phần cơ bản hay sự kết hợp của các thành phần cơ bản bằng phép hội (^). • Dạng chuẩn hội – CNF: là thành phần tuyển cơ bản hay các tuyển cơ bản kết hợp bởi phép hội. • Dạng chuẩn tuyển – DNF: là thành phần hội cơ bản hay các hội cơ bản kết hợp bởi phép tuyển.
Luật Modus Ponens (MP) A, A B B Luật Modus Tollens (MT) A B, BA Luật Hội A,B A^B Luật đơn giản A^B A Luật Cộng A AvB Luật tam đoạn luận tuyển Av B, A B Luật tam đoạn luận giả thiết A B,B C A C Mệnhđề : Luậtsuydiễn & chứngminh Luậtsuydiễnđượcápdụngđểpháttriểncácứngdụngcókhảnăngsuyluận. Suyluậnlàhoạtđộngthườngxuyêncủaconngườiđểhiểucáclýlẽ, kiểmchứng, phánđoáncácvấnđề.
Mệnhđề :Luậtsuydiễn & chứngminh–Vídụ 1 • Ta có các biểu thức sau: AvB, AvC,và A là TRUE • Chứng minh B^C có trị TRUE • Đã chứng minh xong
Mệnhđề :Luậtsuydiễn & chứngminh–Vídụ 2 • Ta có các biểu thức sau là đúng: AvB, A C, B D, D Chứng minh C • Ta giả thiết C dẩn đến false
Mệnhđề : Luậtphângiảimệnhđề • Clause: là tuyển của không hay nhiều thành phần cơ bản. • Dạng clause:là hội của một hay nhiều Clause • Luật phân giải mệnh đề: PVD1, PvD2 (D1-P)v(D2-P) • D1,D2 là tuyển của không hay một thành phần cơ bản. • P là mệnh đề • D1-P : là một clause thu được bằng cách xóa bỏ các P trong D1 • D2- P : là một clause thu được bằng cách xóa bỏ các P trong D2
Mệnhđề : Luậtphângiảimệnhđề (tt) • Luật phân giải bảo toàn tính Unsatisfiable • S là unsatisfiable Rn(S)cũng unsatisfiable R: luật phân giải, n số lần áp dụng R trên S, n>0 • Ứng dụng của luật phân giải : dùng để chứng minh: CóSlàtậpcácclause, dùngSchứngminhbiểuthứcmệnhđềW • Phương pháp: • Thành lập phủ định của W • Đưa W về dạng clause • Thêm clause trong bước ii vào S thành lập S1 • Dùng luật phân giải trên S1 để dẫn ra clause rỗng.
Mệnhđề : Luậtphângiảimệnhđề - Vídụ • Cho đoạn sau: “ Nam đẹp trai, giàu có. Do vậy, Nam hoặc là phung phí hoặc là nhân từ và giúp người. Thực tế, Nam không phung phí hoặc cũng không kêu căng.” “Do vậy, có thể nói Nam là người nhân từ” • Kiểm chứng kết quả suy luận trên, bằng luật phân giải.
Mệnhđề : Luậtphângiảimệnhđề - Vídụ • (i) Chuyển sang mệnh đề: • P1 = “Nam đẹp trai.” • P2 = “Nam giàu có.” • P3 = “Nam phung phí.” • P4 = “Nam kêu căng.” • P5 = “Nam nhân từ.” • P6 = “Nam giúp người.” Các biểu thức thành lập được từ đoạn trên: • Wff1 = P1 ^ P2 • Wff2 = (P1 ^ P2) => (P3 ^ (P5 ^ P6)) v (P3 ^ (P5 ^ P6)) • Wff3 = P3 ^ P4 Wff4 = P5 Biểu thức cần chứng minh.
Mệnhđề : Luậtphângiảimệnhđề - Vídụ • (ii) Đưa về dạng clause: • Wff1, sinhrahaiclause: C1 = P1 C2 = P2 • Wff2 = (P1 ^ P2) v ((P3 ^ (P5 ^ P6)) v (P3 ^ (P5 ^ P6)) ) ……………………………………… = (P1 vP2 vP3 vP3 vP6) ^ (P1 vP2 vP5 vP3 vP6)^(P1 vP2 vP3 vP3 vP5) ^ (P1 vP2 vP5 vP3 vP5) ^ (P1 vP2 vP3 vP5 vP6)^ (P1 vP2 vP5 vP5 vP6) ^(P1 vP2 vP3 vP3 vP6) ^ (P1 vP2 vP5 vP3 vP6) Sinhracácclause: C3 = (P1 vP2 vP6) C4 = (P1 vP2 vP5 vP3 vP6) C5 = (P1 vP2 vP3 vP5) C6 = (P1 vP2 vP3 vP5) C7 = (P1 vP2 vP3 vP5 vP6) C8 = (P1 vP2 vP5 vP6) C9 = (P1 vP2 vP3 vP6) C10 =(P1 vP2 vP5 vP3 vP6) • Wff3 sinhracácclause: C11 = P3 C12 = P4 C13 = P5 (gồmcảbướclấyphủđịnhkếtluận)
TTClausesLuậtápdụng 1 P1 P 2 P2 P 3 P1 vP2 vP6 P 4 P1 vP2 vP5 vP3 vP6 P 5 P1 vP2 vP3 vP5 P 6 P1 vP2 vP3 vP5 P 7 P1 vP2 vP3 vP5 vP6 P 8 P1 vP2 vP5 vP6 P 9 P1 vP2 vP3 vP6 P 10 P1 vP2 vP5 vP3 vP6 P 11. P3 P TTClausesLuậtápdụng 12. P4 P 13 P5 P 14 P2 vP6 1,2, R 15 P6 2, 14, R 16 P1 vP2 vP5 vP3 10,15,R 17 P2 vP5 vP3 1,16,R 18 P5 vP3 2,17, R 19 P3 13, 18, R 20 11, 19, R ĐÃ CHỨNG MINH Mệnhđề : Luậtphângiảimệnhđề - Vídụ • iii) ápdụngluậtphângiảitrêncácclause:
LogicVịtừ:Tạisao? • Phéptoánmệnhđề suydiễntựđộngnhưngchưađủkhicầnphảitruycậpvàothànhphầnnhỏtrongcâu, dùngbiếnsốtrongcâu. Vídụ: “MọisinhviêntrườngĐHBKđềucóbằngtútài. Lankhôngcóbằngtútài. Dovậy, LankhônglàsinhviêntrườngĐHBK” “Lan”làmộtđốitượngcụthểcủa“SVtrườngĐHBK”–khôngthểđặctảđược“quanhệ”nàytrongmệnhđềđượcmàchỉcóthểlà: “LANlàsinhviêntrườngĐHBKthìLancóbằngtútài. Lankhôngcóbằngtútài. Dovậy, LankhônglàsinhviêntrườngĐHBK” • Mệnhđềphảigiảiquyếtbằngcáchliệtkêtấtcảcáctrườnghợp Khôngkhảthi • Dođó, chúngtacầnmộtLogickháchơnlàphéptoánmệnhđề: PHÉP TOÁN VỊ TỪ
Vịtừ:Địnhnghĩa • Vịtừlàmộtphátbiểunóilênquanhệgiữamộtđốitượngvớicácthuộctínhcủanóhayquanhệgiữacácđốitượngvớinhau. Vịtừđượcbiểudiễnbởimộttênđượcgọilàtênvịtừ, theosaunólàmộtdanhsáchcácthôngsố. Vídụ: + Phátbiểu: “NamlàsinhviêntrườngĐHBK” + Biểudiễn: sv_bk(“Nam”) Ýnghĩa: đốitượngtênlà“Nam”cóthuộctínhlà“sinhviêntrườngĐHBK”.
Vịtừ:Biểudiễnvịtừ–Cúpháp • Chúngtacóbaonhiêucáchbiểudiễnđúngcúphápchophátbiểunóitrên? Khôngbiếtbaonhiêunhưngchắcchắnnhiềuhơn 1 Vídụchúngtacóthểthayđổicáctênvịtừthànhcáctênkhácnhaunhư : sinhvien_bk, sinhvien_bachkhoa, …Tấtcảchúngđềuđúngcúpháp. Mộtsốquyước/ chúýkhibiểudiễn: • Khôngmôtảnhữngvịtừthừa, cóthểsuyratừmộttậpcácvịtừkhác. Hìnhthứcthừacũngtươngtựdư (thừa) dữliệukhithiếtkếCSDL. • Tênvịtừphảicótínhgợinhớ. Cụthể, trongvídụtrênchúngtacóthểbiểudiễnbởiq(“Nam”), nhưngrõràngcáchnàykhôngmấythânthiệnvàdễnhớ. Bạn có biết q(“Nam”) có nghĩa gì ???
Vịtừ:Biểudiễnvịtừ–Cúpháp (tt) Dạng vị từ: tên_vị_từ(term1, term2, …, termn) • Tên vị từ: [a..z](a..z| A..Z| 0..9|_)* Bắt đầu bởi một ký tự chữ thường. Ví dụ: ban_than, banThan,bAN_THAN,… • Term có thể là: Hằng,Biến, Biểu thức hàm. • Hằng: có thể hằng chuỗi hay hằng số. Hằng chuỗi: [“](a..z| A..Z| 0..9|_)*[“] hay [a..z](a..z| A..Z| 0..9|_)* Ví dụ: “Nam”, “nam”, “chuoi”, nam, chuoi, qua,… Hằng số: (0..9)*Ví dụ: 10, 32,.. • Biến: [A..Z](a..z| A..Z| 0..9|_)* Ví dụ: Nguoi, NGUOI,.. • Biểu thức hàm có dạng: tên_hàm(term1, term2, …, termk) Trong đó Tên hàm = [a..z ](a..z| A..Z| 0..9|_)*
Vịtừ : Biểuthứcvịtừ • Biểu thức Vị từ: là sự kết hợp của các vị từ bởi các phép toán vị từ. • Các phép toán: Phủ định - một ngôi. X Với mọi - một ngôi X Tồn tại - một ngôi ^ Hội - hai ngôi. v Tuyển - hai ngôi. => Suy ra - hai ngôi. = Tương đương - hai ngôi. Ưutiên
Vịtừ: Cácbiểuthứcvịtừđúng • Biểuthứcvịtừđúngđượckýhiệuwff. • Biểuthứccơbản: Cóthểlàmộtvịtừ , mộtđạidiệntrịTRUE (trịlàT - đúng), mộtđạidiệntrịFALSE (trịlàF - sai). • Mộtbiểuthứcđúngcúphápđượcđịnhnghĩanhưsau: Wff = “Biểuthứccơbản” |wff |wff ^ wff |wffvwff |wff=>wff |wff = wff |(wff) |Xwff |Xwff Với • X : Làmộtbiến. • : Lượngtừvớimọi. • : Lượngtừtồntại.