1 / 78

Modal Logics לוגיקות מודליות

Modal Logics לוגיקות מודליות. Lectures of Doron Peled Bar Ilan University. לוגיקות מודליות. עד כה דנו בלוגיקה סטטית: תכונה התקיימה או לא התקיימה. נרצה לדון בלוגיקות דינמיות: קיום התכונה יכול להשתנות, למשל בזמן.

Download Presentation

Modal Logics לוגיקות מודליות

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. Modal Logicsלוגיקות מודליות Lectures of Doron Peled Bar Ilan University

  2. לוגיקות מודליות • עד כה דנו בלוגיקה סטטית: תכונה התקיימה או לא התקיימה. • נרצה לדון בלוגיקות דינמיות: קיום התכונה יכול להשתנות, למשל בזמן. • שימוש נרחב ללוגיקות כאלו: עבור נכונות של תכניות, Multiagent systems בבינה מלכותית, בכלכלה וכולי.

  3. דוגמאות • לוגיקה של זמן:כעתראש הממשלה הוא אהוד אולמרט, בעבר זה לא היה נכון, ויהיה גם עתיד שבו זה לא יהיה נכון. • לוגיקה של מקום: בבאר שבע חם ויבש, אבל באלסקה קר ורטוב. • לוגיקה של ידע (knowledge): רובוט A המשחק כדורגל יודע שהכדור נמצא ב45 מעלות ימינה, רובוט B אינו יודע איפה הכדור (לא רואה אותו).

  4. שימושים הוכחת נכונות של מערכות חומרה ותכנה.למערכות כאלו יש התנהגות המשנה את המצב שלהם בזמן. בתחילה x=1 אחר כך הערך של x רק עולה, אחר כך הוא מגיע לערך 100 ואחר כך יורד.הוכחת הנכונות תשתמש בטענות לוגיות המאפשרות לבטא את השינוי של המצב בזמן.

  5. שימושים נוספים לוגיקות של ידע העובדה שידע מסויים נתון או אינו נתון במערכת יכול לסייע בהבנת ותכנון המערכת. רובוטים למשל, יכולים "לדעת"או לא "לדעת" נתונים מסוימים. במיוחד אם אותם נתונים היו או לא היו ברי הסקה מהנתונים שקיבלו (דרך חיישנים שונים, או כתנאי התחלה להפעלתם). רובוטים בעלי מידע על הידע של רובוטים אחרים יכולים לנצל זאת (למשל כאשר הם משחקים משחק מסויים בתחרות ומנצלים חוסר ידע מסויים).

  6. לוגיקה מודלית:עולמות שונים יש לנו עולמות שונים, בכל עולם מתקימות תכונות שונות (פסוקיות או מסדר ראשון). במקום לציין את השלילה של תכונה, פשוט לא נציין אותה. כלומר הצומת הריקה תקיים¬p, ¬q p,q p למשל, p, q יכולים ליצג קיום של מוצר מסוים.

  7. לוגיקה מודלית:עולמות שונים יש גם קשר בין העולמות שיסומן על ידי קשתות. p,q p הקשר יכול לציין דברים רבים:כל צומת מציינת מצב (למשל של משתני תכנית מחשב) וקשת מציינת מעבר זמן בין מצב למצב. קשת בין צומת אחת לשניה יכולה לציין שהרובוט המתואר על ידי הצומת הראשונה מכיר את כל האינפורמציה הרשומה על ידי הרובוט המתואר על ידי המצב השני.

  8. לוגיקה מודלית יכולה לתאר את התכונות המאפינות את המצבים השונים והקשר ביניהם. תחביר: ::= p | ¬ | (/\) | (\/) | [] | <> כאשר p הינו משתנה פסוקי מאוסף משתנים פסוקיים P. אפשר להגדיר קשרים חדשים, למשל ()=(\/) דוגמאות: (p[]<>p) ((p/\<>q)[]<>(p/\[]q))

  9. סמנטיקה, לא פורמלי • נוסחא מתפרשת מעל עולם (צומת). • לנוסחאות שהן נוסחאות אטומיות (פסוקיות, מסדר ראשון), יש את הפרוש הרגיל מעל העולם. • לקשרים הלוגיים הרגילים /\, \/, ¬ יש את הפרוש הרגיל. • הקשר [] מסמן שהתכונה נכונה לכל העולמות הישיגים מהעולם הנוכחי על ידי קשת. • הקשר <> מסמן שהתכונה נכונה לפחות לעולם אחד הישיג מהעולם הנוכחים על ידי קשת.

  10. מה מתקיים בעולם של הצומת הימנית תחתונה? p, ¬q, p/\¬q, p\/q, … <>p, []q p,q p והצומת השמאלית התחתונה? ¬p, ¬q, ¬(p\/q), []p, <>[]q.

  11. סמנטיקה, פורמלי נגדיר מבנה Kripke (W, R, L, P) P– a set of propositions W– a set of “states” (or “worlds”). R– a relation RWxW“accessibility relation” L: W2P Assigns the set of propositions that hold in each state.

  12. לוגיקה מודלית:עולמות שונים P={p,q} W={s1,s2,s3} R={(s1,s1),(s1,s2),(s2,s1), (s3,s1),(s3,s2)} L(s1)={p,q}, L(s2)={p},L(s3)= s1p,q s3 s2 p

  13. כעת אפשר להגדיר את המשמעות בצורה רקורסיבית. המשמעות מוגדרת לכל מצב(עולם) • x|==p iff pL(x) • x|== iff x|=/= • x|==/\ iff x|== and x|== • x|==\/ iff x|== or x|== • x|==[] iff for each yW such that R(x,y), y|== • x|==<> iff there exists yW such that R(x,y), y|==

  14. נוסחא  שקולה (=) ל-  אם בכל מצב ובכל עולם  מתקיימת אם ורק אם  מתקיימת • []=<> • <>=[] • [](p/\q)=([]p/\[]q) • <>(p\/q)=(<>p\/<>q) אבל • [](p\/q)([]p\/[]q) • <>(p/\q)(<>p/\<>q) למה? האם הגרירה בכיוון מסויים מתקיימת?

  15. p q אי שוויונות שלא מתקיימים [](p\/q)([]p\/[]q) אבל  כן מתקיים <>(p/\q)(<>p/\<>q) אבל  כן מתקיים

  16. עבור נוסחה מודלית • ברת סיפוק (satisfiable) אם מתקיימת עבור מצב מסויים במודל מסויים. • אינה ברת סיפוק (unsatisfiable) אינה מתקיימת עבור כל מצב בכל מודל. • נכונה\מתקיימת במודל, אם מתקיימת עבור כל המצבים במודל. • Valid אם מתקיימת בכל מודל (בכל מצב) |== • Valid במשפחה של מודלים המקיימים הגבלה מסויימת (כפי שנראה בהמשך). גם כאן נסמן |== בהנחה שמשפחת המודלים ידועה.

  17. אקסיומות וכללי היסק • כל האקסיומות וMP מתורת הפסוקים. • עבור כל המודלים (valid): K []()([][]) כלל היסק: GEN  [] 

  18. עבור משפחות מודלים T [] Reflexive: w,(w,w)R D []<> Serial: wW w’W (w,w’)R 4 [][][] Transitive: w,w’,w’’W(w,w’)R/\ (w’,w’’)R  (w,w’’)R 5<>[]<> Euclidean: w,w’,w’’W(w,w’)R/\ (w,w’’)R  (w’,w’’)R

  19. מבנה היררכי של משפחות. חץ פרושו שההיררכיה הראשונה בעלת יותר מבנים ופחות תכונות בה valid מההיררכיה השניה K K4 K5 KD KT=KDT K45 KD5 KD4 KT4=KTD4 KT5=KT45=KDT5=KDT45 KD45

  20. מודלים לינארים • טרנזיטיבי • כל זוג מצבים מסודר (סדר לינארי) • אין מעגלים • מתאים לתאור ביצוע של תכנית (שינוי ממצב למצב). X=0 X=1 X=1 X=2 X=0

  21. חידה שלשה ילדים משחקים בחוץ. חלק מתלכלכים על מצחם בבוץ, אבל לא יודעיםזאת. עובר אב של אחד מהם ואומר:"לפחות אחד מכם מלוכלך בבוץ על מצחו, מי יודע שמצחו מלוכלך?" אף ילד לא עונה. הוא שואל שוב, ואף ילד לא עונה, בפעם השלישית שהוא שואל, כל הילדים עונים יחד שראשם שלהם מלוכלך. הכיצד?

  22. הנחות • הילדים לא משקרים • כל ילד אינו רואה את מצחו שלו • כל ילד חכם ויכול להסיק כל היסק לוגי הגיוני ממה שהוא רואה.

  23. לא יכול להבחין בין המקרים

  24. אוסף העולמות האפשרייםm-muddy, n-not muddy a:n, b:m, c:m a:n, b:n, c:m a:m, b:m, c:m a:m, b:n, c:m a:m, b:m, c:n a:m, b:n, c:n a:n, b:m, c:n a:n, b:n, c:n

  25. רלציות שקילות בין עולמותנסמן את העולם האמיתי:כתום a:m, b:n, c:m Rb Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rc Ra Rb a:m, b:m, c:n a:n, b:m, c:m Rb Ra Rc a:m, b:n, c:n a:n, b:m, c:n Rc Ra Rb a:n, b:n, c:n

  26. סימון מודאלי לידע Kc אומרשמשתתף (סוכן)cיודע ש- מתקיים. • נניח mc פרושו שמשתתף c מלוכלך ו-¬mc פרושו שמתתף c אינו מלוכלך. • Ka(mb/\mc) • KcKa mb • Kc(ma/\Ka mb) • בדוגמא שלנו, רוציםKxmx עבור אחד המשתתפים. • סימון נוסף: Cאומר ש- הינו ידע משותף, כלומר, כל משתתף יודע את  וכל משתתף יודע שכל משתתף יודע את  וכולי.

  27. הכמת Ka משמש בדומה לכמת [] בלוגיקה מודלית • ההבדל הינו שיש לנו מספר רלציות בין צמתים ולא רק רלציה אחת. לכן, לכל רלציה יש את הכמת שלה. • כל רלציה Ra בין צמתים הינה רצלית שקילות, כלומר רפלקסיבית, טרנזיטיבית וסימטרית. • אין את הדואלי <> ל-[]. אבל אפשר לכתוב¬ Ka¬

  28. סמנטיקה • s|==p iff ps • s|==/\ iff s|== and s|== • s|==¬ iff s|=/= • s|==Ka iff r (s,r) Ra,r|== • s|==C iff Ka and KaKb, KcKa etc.

  29. תכונה • Kx(/\) Kx/\Kx אבל לא מתקיים • Kx(\/) Kx\/Kx

  30. מה יודע c בעולם האמיתי? a:m, b:n, c:m Rb Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rc Ra Rb a:m, b:m, c:n a:n, b:m, c:m Rb Ra Rc a:m, b:n, c:n a:n, b:m, c:n Rc Ra Rb a:n, b:n, c:n

  31. משתתף c אינו יכול להבחין בין המצבים השקולים לפי Rc לכן: Kc(ma/\mb) a:m, b:n, c:m Rb Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rc Ra Rb a:m, b:m, c:n a:n, b:m, c:m Rb Ra Rc a:m, b:n, c:n a:n, b:m, c:n Rc Ra Rb a:n, b:n, c:n

  32. ומה יודע aבעולמות אלו?בעולמות הירוקים:Ka(mb/\mc) בעולמות הכחולים:Ka(mb/\¬mc)לכן: KcKa (mb) ידע על קשת משותף לשני הצמתים המחוברים אליו a:m, b:n, c:m Rb Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rc Ra Rb a:m, b:m, c:n a:n, b:m, c:m Rb Ra Rc a:m, b:n, c:n a:n, b:m, c:n Rc Ra Rb a:n, b:n, c:n

  33. KcKaKb ? a:m, b:n, c:m Kb(ma/\mc) Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rb Rc Kb(¬ma/\mc) Ra a:m, b:m, c:n Rb a:n, b:m, c:m Ra Kb(ma/\¬mc) Rc a:m, b:n, c:n Rb a:n, b:m, c:n Rb Rc Kb(¬ma/\¬mc) Ra a:n, b:n, c:n

  34. KcKaKbtrue a:m, b:n, c:m Kb(ma/\mc) Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rb Rc KaKbmc Kb(¬na/\mc) a:m, b:m, c:n Ra Rb a:n, b:m, c:m Ra Kb(ma/\¬nc) KaKb¬mc Rc a:m, b:n, c:n Rb a:n, b:m, c:n Rb Rc Kb(na/\¬nc) Ra a:n, b:n, c:n

  35. אחרי הצהרת האבמה שהאב אמר הינו ידע משותף (כי כולם שמעו את זה יחד ונכחו שהאחרים שמעו וכולי). a:m, b:n, c:m Kb(ma/\mc) Ra Rc a:m, b:m, c:m a:n, b:n, c:m Rb Rc KaKbmc Kb(¬ma/\mc) a:m, b:m, c:n Ra Rb a:n, b:m, c:m Ra Kb(ma/\¬mc) KaKb¬mc Rc a:m, b:n, c:n Rb a:n, b:m, c:n Rb Rc Kb(¬ma/\¬mc) Ra a:n, b:n, c:n

  36. אחרי הצהרת האבבעולם האמיתי כולם יודעים גם C(ma\/mb\/mc) a:m, b:n, c:m Ka(¬ma/\¬mb/\mc) Kb(ma/\mc) Rc Ra a:m, b:m, c:m a:n, b:n, c:m Rb Rc KaKbmc Kb(¬ma/\mc) a:m, b:m, c:n Ra Rb a:n, b:m, c:m Ra Kb(ma/\¬mc) KaKb¬mc Rc a:m, b:n, c:n Rb a:n, b:m, c:n אבל אף אחד לא מודיע שהוא יודע שיש לו בוץ על המצח Ka(ma/\¬mb/\¬nc) Kb(¬ma/\mb/\¬mc)

  37. בפעם השניה שהאב שואל, המצבים המקווקוים אינם יכולים לתאר את המציאות ולכן ירדו, עם הקשתות המתאימות a:m, b:n, c:m Ka(na/\nb/\mc) Kb(ma/\mc) Rc Ra a:m, b:m, c:m a:¬n, b:¬n, c:m Rb Rc KaKbmc Kb(¬na/\mc) a:m, b:m, c:n Ra Rb a:n, b:m, c:m Ra Kb(ma/\¬nc) KaKb¬nc Rc a:m, b:n, c:n Rb a:n, b:m, c:n Ka(ma/\¬nb/\¬nc) Kb(¬na/\mb/\¬nc)

  38. מכיון שאף אחד לא הודיע שמצחו מלוכלך, בפעם השניה שהאב שואל, המצב הוא הבא: Ka(ma/\¬mb/\mc)/\Kc(ma/\¬mb/\mc) a:m, b:n, c:m a:m, b:m, c:m Rb Rc a:m, b:m, c:n Ra a:n, b:m, c:m Ka(ma/\mb/\¬mc)/\Kb(ma/\mb/\¬mc) Kb(¬ma/\mb/\mc)/\Kc(¬ma/\mb/\mc)

  39. מכיון שגם בפעם השניה אף אחד לא ידע שמצחו מלוכלך, בפעם השלישית ימחקו העולמות המקווקוים Ka(ma/\¬mb/\mc)/\Kc(ma/\¬mb/\mc) a:m, b:n, c:m a:m, b:m, c:m Rb Rc a:m, b:m, c:n Ra a:n, b:m, c:m Ka(ma/\mb/\¬mc)/\Kb(ma/\mb/\¬mc) Kb(¬ma/\mb/\mc)/\Kc(¬ma/\mb/\mc)

  40. מכיון שגם בפעם השניה אף אחד לא ידע שמצחו מלוכלך, בפעם השלישית ימחקו העולמות המקווקוים a:m, b:m, c:m ועכשיו שלשת הילדים יודעים שמצחם מלוכלך

  41. לוגיקה של ידע יורשת את תכונותיה מהלוגיקהKT45 אם אני יודע על גרירה, ואני יודע שצידה הימני מתקיים, אני יודע גם שצידה השמאלי מתקיים (או, בקיצור, אני יודע להסיק!) Ka() (Ka Ka) כל מה שאני יודע מתקיים גם בעולם שלי Ka אני יודע מה אני יודע Ka KaKa אני יודע מה אני לא יודע ¬Ka Ka¬Ka

  42. עוד חידה יש בערמה 2 כובעים לבנים ו-3 כובעים אדומים. שלשה נתינים באים אל המלך. המלך שם על ראש כל אחד כובע ושואל אותם לפי הסדר אם הם יודעים מה הצבע על ראשם (אין להם מראה והם לא מגלים אחד לשני). הראשון אומר "איני יודע". השני אומר "איני יודע". השלישי יודע, מה הצבע של כובעו?

  43. נסמן • R2 – לאיש השני כובע אדום • W1 – לאיש הראשון כובע לבן וכולי. למעשה ¬ R2הינו שקול ל- W2.

  44. גרף העולמות האפשריים עם רלציות השקילויות RRR R2 R3 R1 RWR RRW R1 R1 R3 R2 WWR RWW WRW R2 R3 WRR

  45. אחרי שהראשון אמר שהוא לא יודע איזה כובע על ראשו, C¬R1 RRR R2 R3 R1 RWR RRW R1 R1 R3 R2 WWR RWW WRW R2 R3 WRR

  46. אחרי שהראשון אמר שהוא לא יודע איזה כובע על ראשו, C¬R1 RRR R2 R3 R1 RWR RRW R1 R1 WWR WRW R2 R3 WRR

  47. עכשיו נשאל השני והוא אינו יודע. זה שולל את המצבים המקווקוים RRR R2 R3 R1 RWR RRW R1 R1 WWR WRW R2 R3 WRR

  48. כעת נשאל השלישי, אבל בכל עולם שבו הוא יכול להיות מתקיים R3. RRR R2 R1 RWR R1 WWR R2 WRR

  49. ובנוסחאות:בתחילה ={C(R1\/R2\/R3), C(R1K2R1), C(R1K3R1), C(R2K1R2), C(R2K3R2), C(R3K1R3), C(R3K2R3), C(¬R1K2¬R1), C(¬R1K3¬R1), C(¬R2K1¬R2), C(¬R2K3¬R2), C(¬R3K1¬R3), C(¬R3K2¬R3){

  50. אחרי שהראשון אמר שהוא לא יודע איזה כובע על ראשו, C¬R1 RRR R2 R3 R1 RWR RRW R1 R1 WWR WRW R2 R3 WRR  {C(¬K1R1/\¬K1¬R1)}|-- C(R2\/R3)

More Related