Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "שעור 2 תחביר וסמנטיקה. על תחביר וסמנטיקה אחד העקרונות החשובים של לוגיקה: הפרדה בין תחביר: הסימון וכללי הכתיבה הנאותה של נוסחאות, והסמנטיקה: המשמעות של."— Presentation transcript:

1 שעור 2 תחביר וסמנטיקה

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

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

4 תחביר של תורת הפסוקים Var={p 0, p 1, p 2, …, p n } Symb={/\, \/, , ¬, T, F, (, )} אנו מתייחסים לאיברים של Var כמו אטומים. Symb הינה הקבוצה של הסימנים הלוגיים.

5 הגדרה: קבוצת WFF היא תת קבוצה של קבוצת המילים הסופיות מעל מוגדרת בצורה אינדוקטיבית כדלקמן: בסיס האינדוקציה: (1)כל p i מ-Var היא בWFF (2) (3) סגירות: (1) אם הם בWFF אז גם (2) אם הם בWFF אז גם (3) אם הם בWFF אז גם (4) אם בWFF אז גם קבוצת הנוסחאות הבנויות היטב (נב"ה = WFF) כמחרוזות נב"ה ≠ נא-בעיין!

6 תמיד נשתמש באותיות יווניות קטנות כדי לציין איברים מWFF לעיתים נרשום והכוונה היא שכל המשתנים במילה הם מתוך דוגמא: הנוסחאות הבאות הן נוסחאות בנויות היטב מWFF:

7 דוגמאות נוספות הקבוצה מוגדרת באופן דומה אבל בשימוש רק ב(1) ו-(3) מהבסיס ו(3) מתנאי הסגירות. 1.הביטויים הבאים לא שייכים ל WFF: 2. הביטויים הבאים שייכים ל :

8 הדרגה של נוסחא ההגדרה האינדוקטיבית של WFF בונה את הנוסחאות בשלבים. הגדרות אינדוקטיביות הן בנייה מלמטה למעלה. משפט הקריאה היחידה מאפשר לנו לראות נוסחאות גם מלמעלה למטה בצורה חד משמעית. הגדרה: תהי rank פונקציה: בסיס: אם אז אנחנו קוראים ל גם נוסחא אטומית סגירות: יהיו אזי נמצאים ב. מוגדר כ המינימלי כך ש

9 תרגילים הוכח:

10 תתי נוסחאות כל הנוסחאות המשמשות בבניה הרקורסיבית של נוסחא הן תתי נוסחאות שלה. למשל לנוסחא ((p 1  F)  (p 2  F)) יש את תתי הנוסחאות הבאות: p 1 (p 1  F) p 2 (p 2  F) ((p 1  F)  (p 2  F))

11 החלפת תתי נוסחאות (substitution) נרשום לפעמים נוסחא בצורה פרמטרית:  (  1,  2, …,  n ) צורת כתיבה זו תשתמש בסימונים  i כממלאי מקום עבור נוסחאות. למשל  (  1,  2 )= ((  1  F)  (  2  F)) אם נציב (p 1  p 3 )=  1  2 =(p 2  F) נקבל: (((p 1  p 3 )  F)  ((p 2  F)  F))

12 טבלאות האמת והסמנטיקה של השפה הלוגית משמעות נוסחה בנוייה היטב (WFF) היא אלמנט מתוך הקבוצה {0,1}, כאשר 0 הוא שקר (FALSE) ו 1 הוא אמת (TRUE). נבחין בין הערכים 0 ו-1 הסמנטיים ו-T ו-F הסינטקניים. ניתן לחשוב על טבלת אמת כעל תיאור התנהגות של מעגל בוליאני מסויים. טבלאות האמת מתארות את התנהגות הקשרים הלוגיים בהתאמה.

13 המטרה של החלק הבא היא להגדיר את פונקציית המשמעות הנתונה בידי קבוצה של השמות. הטבלאות יכילו n-יה של ערכים {0,1} ויחזירו {0,1}, זאת אומרת שנוצרת הפונקצייה: קבוצתה ההשמות: נרצה לתת פירוט לכל אחד מהמשתנים האטומיים של הנוסחה, זאת אומרת, נשים {0,1} בכל אחד מהם: As היא קבוצת ההשמות פוקנציית המשמעות M היא פונקצייה שמקיימת: M:WFFxAs  {0,1} F,T הם עוד סימון

14 טבלאות אמת הגדרה טבלת אמת מסדר n-י, TT היא פונקצייה: לכל אחד מן הסימנים נשייך טבלת אמת בינארית שתיוצג באופן הבא:

15 טבלאות אמת - המשך

16 השמות אמת הגדרה השמת ערך אמת היא פונקצייה: נסמן ב As= את כל השמות האמת. ניתן לחשוב על המשתנים ב Var כעל רגיסטרים במצב מסוים נתון ועל Z כעל פונקצייה אשר בודקת את התוכן של כל רגיסטר.

17 פונקצית המשמעות פונקציית משמעות M PL היא פונקצייה M PL : WFF x As  {0,1} הגדרה נציין ע"י M PL את פונקציית המשמעות לשם תחשיב הפסוקים שמוגדרים בדרך אינדוקטיבית כדלהלן : בסיס: M PL (p i,z) = z( p i ) ; M PL (T,z) = TT T = 1 ; M PL (F,z) = TT F = 0 ;

18 פונקצית המשמעות ) המשך) המשך הגדרה אינדוקטיבית M PL ((  1   2 ),z)=TT  (M PL (  1,z),M PL (  2,z)) M PL ((  1   2 ),z)=TT  (M PL (  1,z),M PL (  2,z)) M PL ((  1   2 ),z)=TT  (M PL (  1,z),M PL (  2,z)) M PL (  ,z)=TT  (M PL ( ,z))

19 פונקציית המשמעות { ,F} M מוגדרת עבור נוסחאות מוגדרות היטב מסוג. כאשר נגדיר את { ,F} M להיות הצימצום של ל A X.

20 מדוע בחרנו באוסף הקשרים המסוים הזה ולא אחר? נדרוש שלמות פונקציונלית, כלומר, כל נוסחא ניתן לבטא באמצעות הקשרים הלוגיים שבחרנו. האם { /\, \/, ¬} היא קבוצה שלמה פונקציונלית? האם { /\, ¬} שלמה פונקציונלית? ומה עם { , F}? ומה עם {  } ?

21 שלמות פונקציונלית תהי טבלת אמת n-ארית. אזי קיימת נוסחה  (  1,  2, …,  n ) עבורה  (  1,  2, …,  n ),z) = TT(M PL (  1,z), M PL (  2,z), …, M PL (  n,z)) M PL ( אפשר למעשה למצוא את הנוסחה ב או ב. נתאר בתור את השורה ה-X בטבלה כאשר כל הוא  i עבור 1 ו  i עבור 0 בטבלה TT הנוסחא הכללית תהיה כאשר הן השורות בטבלה שמחזירות 1..

22 לדוגמא טבלת אמת של NAND: TT NAND (0,0)=1 TT NAND (0,1)=1 TT NAND (1,0)=1 TT NAND (1,1)=0 נניח שתתי הנוסחאות הן p 1 ו-p 2. נקבל (¬p 1 /\¬p 2 )\/(¬p 1 /\p 2 )\/(p 1 /\¬p 2 ) ובאופן יותר כללי: (¬  1 /\¬  2 )\/(¬  1 /\  2 )\/(  1 /\¬  2 )

23 לוגיקה בעלת הסימן  בלבד אינה שלמה פונקצינלית הוכחה:בתרגול עוד דוגמא: לוגיקה רק עם . נניח שאנו רוצים לבטא את הפסוק ¬p 0. כל פסוק רק עם  שקול לפסוק בו כל משתנה יופיע רק פעם אחת. אם יופיע משתנה אחר מ- p 0 אז הפסוק יהיה תלוי בערך המשתנה הזה, בניגוד לנוסחא ¬p 0. לכן לא יכול להופיע משתנה נוסף. כל נוסחא רק עם ¬p 0 תהיה שקולה ל- ¬p 0.

24 קריאות יחידה לדוגמא, יש לנו שפה שבה שתי מילים: Z ו-ZZ השפה נכתבת ללא רווחים. כיצד להבין ZZZ ? ZZZZ? יש יותר מאפשרות אחת. בשפות עם תחביר פורמלי, רוצים קריאות יחידה. בלוגיקה של פסוקים יש קריאות יחידה (יוכח בתרגול).

25 תלות במספר משתנים סופי כל נוסחא פסוקית תלויה בהצבתה במספר משתנים סופי, כלומר במשתנים המופיעים בנוסחא. למשל: (((p 1  p 3 )  F)  ((p 2  F)  F)) תלוי רק במשתנים p 1 p 2 p 3. כיצד להוכיח? כי "רואים את זה"? הוכחה באינדוקציה על אורך הנוסחא, או על סדרת הבניה שלה מתתי נוסחאות. אז ערך הנוסחא יהיה זהה עבור כל שתי הצבות z1 ו-z2 הנותנות ערך לוגי זהה לשלושת המשתנים p 1 p 2 p 3. מה עם נוסחאות שכלל לא תלויות בערכי הצבת האמת?

26 טאוטולוגיות ≠ "טעות-אולוגיות" Tautologies נוסחאות שלא תלויות בהצבת האמת. דוגמאות: p 1 \/¬p 1 (p 1  (p 2  p 1 )) ((p 1  (p 2  p 3 ))  ((p 1  p 2 )  (p 1  p 3 ))) הסכמות המתאימות אינן תלויות בתתי הנוסחאות המוצבות (שוב, ניתן להוכיח פורמלית באינדוקציה). לדוגמא: ((  1  (  2   3 ))  ((  1   2 )  (  1   3 )))

27 כיצד להוכיח שנוסחא היא טאוטולוגיה? לבדוק על ידי הגדרת הסמנטיקה של הנוסחא, דרך הצבות בטבלאות האמת של הקשרים המופיעים בנוסחא. כמות העבודה: n 2 קומבינציות של 0 ו-1, עבור כל צרוף לוגי של משתני הנוסחא (אם משתנה מופיע כמה פעמים משתמשים באותו ערך לוגי). האם ניתן להוכיח באופן יותר פשוט? יש כל מיני היוריסטיקות (אלגוריתמים שעובדים הרבה פעמים יותר טוב, אבל לא תמיד), אבל בעקרון, זו אחת הבעיות הפתוחות החשובות ביותר במדעי המחשב. במקום זאת: מערכת הוכחה (נלמד בהמשך).

28 ספיקות של נוסחא Satisfiability נוסחא היא ספיקה אם קיימת הצבת אמת למשתניה הנותנת ערך לוגי 1. דוגמאות: p 1 \/p 2 כל טאוטולוגיה היא כמובן ברת סיפוק. האם קיים קשר נוסף בין טאוטולוגיות ונוסחאות ברות סיפוק?

29 קשר בין טאוטולוגיות ונוסחאות ברות סיפוק מהגדרתן, 1.עבור כל נוסחא  שהיא טאוטולוגיה, ¬  היא אינה ברת סיפוק, ולהיפך 2.לכל נוסחא  שהיא אינה ברת סיפוק, ¬  היא טאוטולוגיה.

30 בדיקת ספיקות של נוסחא שוב ניתן לבדוק את כל הצרופים הלוגיים של ערכי משתני הנוסחא, לפי הסמנטיקה של הנוסחא וטבלאות האמת של הקשרים המופיעים בה. מספיק למצוא הצבת אמת אחת כדי להסיק שהנוסחא ספיקה, לעומת בדיקת טאוטולוגיות, שם יש לבדוק עם כל ההצבות נותנות ערך אמת 1 לנוסחא. אבל האם העובדה ש"ניחוש" נכון מספיק אומר שיש אלגוריתם שהינו יותר טוב מבדיקת כל האפשרויות? אחת השאלות הפתוחות החשובות ביותר במדעי המחשב עשרות שנים, האם NP=P? (יורחב בקורס בחישוביות).

31 We repeat some notation and definitions. An assignment z satisfies a formula  if M PL ( , z)=1  |==  means that  logically implies , i.e., each assignment that satisfies all the formulas in  also satisfies .  |--  means that we can prove  from , i.e., there is a proof sequence that uses assumptions from , the axioms A1, A2, A3 and the proof rule MP, and ends with .

32 Substitution of variables by formulas Let  be a WFF. A function s:Var  WFF is called a substitution function. We define inductively a function subst( ,s) that replaces in  all the variables p i by s(p i ). Basis: subst(p i,s)=s(p i ), subst(F,s)=F, subst(T,s)=T. Closure: subst((  1 /\  2 ),s)=(subst(  1,s)/\subst(  2,s)) subst((  1 \/  2 ),s)=(subst(  1,s)  subst(  2,s)) Etc.

33 For example s={, } subst((p 1 \/p 2 ),s)=(subst(p 1,s)\/subst(p 2,s))= ((p 3 \/p 4 )\/(p 5 \/p 6 )) Finite dependency of substitution: Let  be a WFF with all its propositions inside {p 1,p 2,…,p n }. Let s 1 and s 2 be two substitution functions such that for each i, s 1 (p i )=s 2 (p i ). Then subst( ,s 1 )=subst( ,s 2 ).

34 Some propositions If  is not satisfiable and s is a substitution, then subst( ,s) is not satisfiable. If  is a tautology and s is a substitution, then subst( ,s) is a tautology.

35 Provability and satisifiability ניתנות להוכחה וסיפוק Lemma(*):  |==  iff  {   F} is unsatisfiable. One direction: from  |== , any assignment that satisfies  must also satisfy , thus cannot satisfy {   F}. Conversely, if  {   F} is unsatisfiable, any assignment that satisfies  cannot satisfy {   F}, hence it must satisfy .


Download ppt "שעור 2 תחביר וסמנטיקה. על תחביר וסמנטיקה אחד העקרונות החשובים של לוגיקה: הפרדה בין תחביר: הסימון וכללי הכתיבה הנאותה של נוסחאות, והסמנטיקה: המשמעות של."

Similar presentations


Ads by Google