1 / 36

استنتاج در منطق مرتبه اول

استنتاج در منطق مرتبه اول. تهيه کننده: عبدالرضا ميرزايي. دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر. سرفصل مطالب. تقليل استنتاج مرتبه-اول به استنتاج گزاره اي يكسان سازي (Unification) MP تعميم يافته (GMP) زنجيره استنتاج روبه جلو زنجيره استنتاج رو به عقب رزولوشن.

calvin
Download Presentation

استنتاج در منطق مرتبه اول

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. استنتاج در منطق مرتبه اول تهيه کننده: عبدالرضا ميرزايي دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  2. سرفصل مطالب • تقليل استنتاج مرتبه-اول به استنتاج گزاره اي • يكسان سازي(Unification) • MP تعميم يافته (GMP) • زنجيره استنتاج روبه جلو • زنجيره استنتاج رو به عقب • رزولوشن دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  3. نمونه سازي عموميUniversal instantiation • هر نمونه از يك جمله داراي سور عمومي، توسط آن جمله قابل استلزام است. • مثال • x King(x) Greedy(x)  Evil(x) : King(John) Greedy(John) Evil(John) King(Richard) Greedy(Richard) Evil(Richard) King(Father(John)) Greedy(Father(John)) Evil(Father(John)) . دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  4. نمونه سازي وجوديExistential instantiation • مثال • xCrown(x) OnHead(x,John) : Crown(C1) OnHead(C1,John) • که C1يك سمبول جديد مي باشد، كه به آن ثابت Skolemگويند دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  5. تقليل به استنتاج گزاره اي فرض کنيد KB فقط شامل جملات زير باشد x King(x)  Greedy(x)  Evil(x) King(John) Greedy(John) Brother(Richard,John) با نمونه سازي جمله داراي سور عمومي به تمام طرق ممكن، داريم: King(John)  Greedy(John)  Evil(John) King(Richard)  Greedy(Richard)  Evil(Richard) King(John) Greedy(John) Brother(Richard,John) • KBجديد به فرم گزاره اي درآمده است(گزاره اي سازي). سمبول هاي گزاره اي عبارتند از: King(John), Greedy(John), Evil(John), King(Richard), etc. دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  6. تقليل به استنتاج گزاره اي • هر پايگاه دانش درFOL مي تواند به گونه اي گزاره اي سازي شود كه ايجاب را حفظ كند. • يک ground sentence توسط KB جديد قابل ايجاب است اگر و فقط اگر توسط KBاصلي قابل ايجاب باشد • ايده: KBو queryرا گزاره اي سازي كن، رزولوشن را اعمال و نتيجه را برگردان • مشكل: در مورد سمبول هاي تابعي تعداد نامحدودي ground termوجود دارد، مثلاً: Father(Father(Father(John))) دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  7. تقليل به استنتاج گزاره اي • قضيه Herbrand (1930): اگر جمله يα توسط يک FOL KBقابل ايجاب باشد آنگاه اين جمله توسط زيرمجموعه محدودي از پايگاه دانش گزاره اي سازي شده قابل ايجاب است. For n = 0 to ∞ do create a propositional KB by instantiating with depth-nterms see if α is entailed by this KB • مشکل: اگرKB جمله α را ايجاب کند كار مي كند، در غير اينصورت در حلقه بي نهايت مي افتد. • قضيه Turing (1936), Church (1936): ايجاب در FOLنيمه تصميم پذير است. • الگوريتم هايي وجود دارند كه براي هر جمله قابل ايجاب پاسخ بله را توليد مي كنند، ولي الگوريتمي وجود ندارد كه براي هر جمله اي كه قابل ايجاب نباشد پاسخ خير توليد كند. دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  8. مشكلات گزاره اي سازي نمودن به نظر مي رسد كه گزاره اي سازي كردن جملات نامربوط زيادي توليد مي كند. براي مثال از جملات زير: x King(x)  Greedy(x)  Evil(x) King(John) y Greedy(y) Brother(Richard,John) بديهي است كه Evil(John) اما گزاره اي سازي كردن حقايق زيادي مانند Greedy(Richard) توليد مي كند كه نامربوط مي باشند با p تا predicateاز نوع k تايي و n ثابت p·nk نمونه سازي وجود دارد. دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  9. يكسان سازي Unification • اگر بتوانيم يك جانشيني مانندθبيابيم به گونه اي که King(x) و Greedy(x) با King(John)و Greedy(y)تطبيق يابند، آنگاه نتيجه استنتاج بلافاصله بدست مي آيد. Unify(α,β) = θ if αθ = βθ p q θ Knows(John,x) Knows(John,Jane) {x/Jane} Knows(John,x) Knows(y,OJ) {x/OJ,y/John} Knows(John,x) Knows(y,Mother(y)) {y/John,x/Mother(John)} Knows(John,x) Knows(x,OJ) {fail} استاندارد سازي متغيرها از روي هم افتادن نامها جلوگيري مي کند: مثلاً Knows(z17,OJ) دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  10. يكسان سازي • براي يكسازي سازي Knows(John,x) و Knows(y,z) دو جانشيني وجود دارد يا • θ= {y/John, x/z } • θ= {y/John, x/John, z/John} • اولين يكسان ساز عمومي تر از دومي مي باشد • فقط يك عمومي ترين يكسان ساز most general unifier (MGU)وجود دارد كه نسبت به تغيير نام متغيرها منحصر به فرد مي باشد. MGU = { y/John, x/z } دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  11. الگوريتم يكسان سازي دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  12. الگوريتم يكسان سازي دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  13. Generalized Modus Ponens (GMP) • GMP با پايگاه دانشي از clauseهاي معين (دقيقاً يك ليترال مثبت) كار مي كند • فرض مي شود كه تمام متغيرها داراي سور عمومي هستند. دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  14. پايگاه دانش نمونه • The law says that it is a crime for an American to sell weapons to hostile nations. The country Nono, an enemy of America, has some missiles, and all of its missiles were sold to it by Colonel West, who is American. • Prove that Colonel West is a criminal دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  15. پايگاه دانش نمونه ... it is a crime for an American to sell weapons to hostile nations: American(x)  Weapon(y)  Sells(x,y,z)  Hostile(z)  Criminal(x) Nono … has some missiles, i.e., x Owns(Nono,x)  Missile(x): Owns(Nono,M1) and Missile(M1) … all of its missiles were sold to it by Colonel West Missile(x)  Owns(Nono,x)  Sells(West,x,Nono) Missiles are weapons: Missile(x)  Weapon(x) An enemy of America counts as "hostile“: Enemy(x,America)  Hostile(x) West, who is American … American(West) The country Nono, an enemy of America … Enemy(Nono,America) دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  16. الگوريتم استنتاج رو به جلو دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  17. اثبات توسط استنتاج رو به جلو

  18. اثبات توسط استنتاج رو به جلو

  19. اثبات توسط استنتاج رو به جلو

  20. خصوصيات استنتاج رو به جلو • براي first-order definite clauseها كامل و صحيح است. Datalog= first-order definite clauses + no functions • FCبراي Datalogبا تعداد تكرارهاي محدودي متوقف مي شود. • در حالت كلي، اگر پايگاه دانشαرا ايجاب نکند، ممكن است متوقف نشود. • اين امر اجتناب ناپذير است: ايجاب با Clauseهاي معين نيمه تصميم پذير است دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  21. كارآيي استنتاج رو به جلو • استنتاج رو به جلوي افزايشي Incremental forward chaining • در تکرار k نياز به تطبيق قانوني كه هيچ كدام از شرايطش در تكرار k-1 اضافه نشده اند، نيست • خود انطباق مي تواند پرهزينه باشد: • شاخص بندي پايگاه داده Database indexingاجازه مي دهد كه حقايق شناخته شده درزمان O(1)بازيابي شوند. • انطباق factها در مقابل شرطهايي که به صورت ترکيب عطفي هستند NP-hard است. • استنتاج رو به جلو به طور گسترده اي در پايگاه هاي داده استنتاجي به كار مي رود دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  22. مثال از انطباق سخت • Colorable() is inferred iff the CSP has a solution Diff(wa,nt)  Diff(wa,sa)  Diff(nt,q)  Diff(nt,sa)  Diff(q,nsw)  Diff(q,sa) Diff(nsw,v)  Diff(nsw,sa) Diff(v,sa)  Colorable() Diff(Red,Blue) Diff (Red,Green) Diff(Green,Red) Diff(Green,Blue) Diff(Blue,Red) Diff(Blue,Green)

  23. الگوريتم استنتاج رو به عقب SUBST(COMPOSE(θ1, θ2), p) = SUBST(θ2, SUBST(θ1, p)) دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  24. مثال استنتاج رو به عقب

  25. مثال استنتاج رو به عقب

  26. مثال استنتاج رو به عقب

  27. مثال استنتاج رو به عقب

  28. مثال استنتاج رو به عقب

  29. مثال استنتاج رو به عقب

  30. مثال استنتاج رو به عقب

  31. مثال استنتاج رو به عقب

  32. خصوصيات استنتاج روبه عقب • اثبات: جستجوي اول-عمق بازگشتي – فضاي حالت بر حسب اثبات خطي • ناكامل به دليل وجود حلقه هاي بينهايت – راه حل: مقايسه هدف فعلي با تمام اهداف موجود در پشته • ناكارا به دليل زيرهدف هاي تكراي (چه موفقيت و چه شكست) – راه حل: ذخيره نتايج قبلي (با مصرف حافظه بيشتر) – نوعي memorization • به طور گسترده اي در برنامه نويسي منطقي استفاده مي شود دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  33. رزولوشن: خلاصه • رزولوشن در منطق مرتبه اول • فرض مي شود كه دو clauseاستاندارد شده اند به گونه اي كه شامل متغير يكساني نباشند. Apply resolution steps to CNF(KB α); complete for FOL دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  34. تبديل به CNF دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  35. تبديل به CNF دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

  36. اثبات بوسيله رزولوشن: مثال دانشگاه صنعتي اصفهان دانشکده برق و کامپيوتر

More Related