לוגיקה למדעי המחשב ־ תרגולים

‫לוגיקה למדעי המחשב ־ תרגולים‬
‫ניצן פומרנץ‬
‫∗‬
‫‪ 17‬ביוני ‪2015‬‬
‫אתר הקורס‪ :‬במודל‬
‫בשבוע הראשון התרגילים ייועלו גם ל־ ‪www.cs.tau.ac.il/~shpilka/teaching‬‬
‫לירון כהן‪) liron.cohen@math.tau.ac.il :‬לא לשלוח שאלות על החומר במייל(‬
‫שעת קבלה של לירון‪ :‬ימי ראשון ‪ ,12:30‬הנדסת תוכנה ‪ .209‬לתאם מראש במייל‪.‬‬
‫באתר הקורס במודל יש פורום; אפשר לדון שם על הכל כולל תרגילי הבית‪.‬‬
‫הקורס מתחלק לשני חלקים מרכזיים‪ :‬תחשיב הפסוקים ותחשיב הפרדיקטים‪.‬‬
‫הערות לגבי הרשימות‪ ⊂ :‬מסמן מוכל או שווה‪.‬‬
‫תוכן עניינים‬
‫‪ I‬מבוא‬
‫תרגול ‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫הגדרה אינדוקטיבית ‪. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .‬‬
‫הוכחה באינדוקציה מבנית ‪. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .‬‬
‫‪1.1‬‬
‫‪ II‬תחשיב הפסוקים‬
‫תרגול ‪ 2‬־ ‪18.3.15‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪5‬‬
‫‪6‬‬
‫תרגול ‪ 5‬־ ‪15.4.15‬‬
‫תרגול ‪ 6‬־ ‪29.4.15‬‬
‫‪7‬‬
‫‪8‬‬
‫תרגול ‪ 3‬־ ‪25.3.15‬‬
‫תרגול ‪ 4‬־ ‪30.3.15‬‬
‫תרגול ‪ 7‬־ ‪6.5.15‬‬
‫תרגול ‪ 8‬־ ‪13.5.15‬‬
‫תרגול ‪ 9‬־ ‪18.5.15‬‬
‫)בן לי וולק‪ ,‬עד‬
‫סוף הקורס(‬
‫תרגול ‪ 10‬־‬
‫‪25.5.15‬‬
‫תרגול ‪ 11‬־ ‪3.6.15‬‬
‫‪3‬‬
‫נוסחה חוקית ‪ /‬פסוק ‪W F F /‬‬
‫הצרנה ‪. . . . . . . . . . . . .‬‬
‫שלמות פונקציונלית ‪. . . . . .‬‬
‫סמנטיקה ‪. . . . . . . . . . .‬‬
‫מערכת הוכחה ‪. . . . HP C‬‬
‫משפט הדדוקציה ‪. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .‬‬
‫‪6.1‬‬
‫עקביות ‪. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .‬‬
‫‪6.2‬‬
‫מערכות הוכחה אחרות ‪. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .‬‬
‫גדירות ‪. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪ III‬תחשיב הפרדיקטים‬
‫‪9‬‬
‫‪10‬‬
‫‪11‬‬
‫‪12‬‬
‫‪13‬‬
‫‪14‬‬
‫‪15‬‬
‫‪16‬‬
‫ספיקות ותקפות ‪. . . .‬‬
‫הצרנות ‪. . . . . . . .‬‬
‫סגור אוניברסלי ‪. . . .‬‬
‫פסוקים בצורת ‪P N F‬‬
‫המשך הצרנות ‪. . . .‬‬
‫בדיקת תקפות ‪. . . . .‬‬
‫מילון עם סימן שוויון ‪.‬‬
‫מערכת הוכחה ‪. . HC‬‬
‫‪1‬‬
‫‪2‬‬
‫‪3‬‬
‫‪4‬‬
‫‪4‬‬
‫‪5‬‬
‫‪7‬‬
‫‪7‬‬
‫‪9‬‬
‫‪9‬‬
‫‪11‬‬
‫‪14‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫∗‪www.cs.tau.ac.il/~pomerantz‬‬
‫‪1‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪15‬‬
‫‪16‬‬
‫‪17‬‬
‫‪17‬‬
‫‪19‬‬
‫‪20‬‬
‫‪21‬‬
‫‪22‬‬
‫חלק‬
‫‪I‬‬
‫מבוא‬
‫תרגול ‪1‬‬
‫‪1‬‬
‫הגדרה אינדוקטיבית‬
‫‪A‬־העולם‪ B ⊂ A .‬הבסיס‪ .‬קבוצת פונקציות ‪ ,F‬כך שלכל ‪ f ∈ F‬היא מהצורה ‪.f : An → A‬‬
‫הגדרה ‪ 1.1‬הסגור של ‪ B‬לפי ‪ (XB,F ) F‬היא הקבוצה המינימלית המקיימת‪:‬‬
‫‪B ⊂ XB,F .1‬‬
‫‪ .2‬סגורה תחת ‪ F‬־‬
‫‪∀f ∈ F, x1 , ..., xn ∈ XB,F ⇒ f (x1 , ..., xn ) ∈ XB,F‬‬
‫‪1.0.0.1‬‬
‫דוגמא‪:‬‬
‫∗‬
‫}‪ A = {s, t‬היא קבוצת המילים הסופיות מעל ‪ F = {f1 , f2 } ,B = {ε, st, ts} .s, t‬כאשר‪:‬‬
‫‪= sw1 w2 t‬‬
‫) ‪f1 (w1 , w2‬‬
‫‪= w1 w2 w1‬‬
‫) ‪f2 (w1 , w2‬‬
‫מה יש ב־ ‪ ?XB,F‬איך מוכיחים ש־ ‪?a ∈ XB,F‬‬
‫‪a ∈ XB,F ⇐⇒ a has a creation sequence from B in F‬‬
‫‪ .st ∈ XB,F‬יש אינסוף סדרות יצירה‪ .‬מספיק להראות אחת בשביל להוכיח‪ .‬נראה שתיים‪:‬‬
‫‪.1 atom‬‬
‫‪− −−−‬‬
‫‪.1 atom‬‬
‫) ‪.2 f1 (,‬‬
‫‪st‬‬
‫‪−−‬‬
‫‬
‫‪st‬‬
‫מילה נוספת‪sttsst ∈ XB,F :‬‬
‫‪atom‬‬
‫‪atom‬‬
‫‪.1‬‬
‫‪.2‬‬
‫‪.3‬‬
‫)‪f2 (st, ts‬‬
‫‪ts‬‬
‫‪st‬‬
‫‪sttsst‬‬
‫∈ ‪?a‬‬
‫∈ ‪ .sst‬איך מוכיחים ש־ ‪/ XB,F‬‬
‫כעת נרצה להראות שאיבר ‪/ XB,F‬‬
‫‪XB,F ⊂ T ⊂ A‬‬
‫∈ ‪ :a‬נחפש תכונה ‪ ,T‬שכל האיברים בסגור מקיימים אותה והאיבר הספציפי אינו מקיים אותה‪.‬‬
‫אבל ‪/ T‬‬
‫נגדיר‬
‫‬
‫‬
‫∗‬
‫‪T = w ∈ {s, t} | |w| is even‬‬
‫‪1‬‬
‫‪1.1‬‬
‫הוכחה באינדוקציה מבנית‬
‫יהיו ‪ T ,XB,F‬המקיימות‪:‬‬
‫‪B ⊂ T .1‬‬
‫‪ .2‬לכל ‪ f ∈ F‬אם ‪ a1 , ..., an ∈ T‬אז ‪f (a1 , ..., an ) ∈ T‬‬
‫אזי ‪.XB,F ⊂ T‬‬
‫נוכיח באינדוקצית מבנה שכל המילים באורך זוגי‪.‬‬
‫הבסיס‪ :‬אם ‪ || = 0, |st| = |ts| = 2‬אז ‪.B ⊂ T‬‬
‫נניח ‪ ,w1 , w2 ∈ T‬כלומר קיימים ‪ n, m ∈ N‬כך ש־‪|w1 | = 2n, |w2 | = 2m‬‬
‫אם ) ‪ w = f1 (w1 , w2‬אז ‪ w = sw1 w2 t‬ולכן )‪|w| = |s|+|w1 |+|w2 |+|t| = 1+2n+2m+1 = 2(n+m+1‬‬
‫־ כלומר מאורך זוגי‬
‫אם ) ‪ w = f2 (w1 , w2‬אז ‪ w = w1 w2 w1‬ולכן )‪ |w| = |w1 | + |w2 | + |w1 | = 2n + 2m + 2n = 2(2n + m‬־‬
‫כלומר מאורך זוגי‬
‫‪1.1.0.2‬‬
‫∗‬
‫כעת }‪ B = {aa} ,A = {a, b‬ו־} ‪ F = {f‬כאשר‪:‬‬
‫(‬
‫‪aawb w starts with a‬‬
‫= )‪f (w‬‬
‫‪bbwa else‬‬
‫דוגמא‪:‬‬
‫?‬
‫האם ‪ ?bba ∈ XB,F‬נוכיח שלא בעזרת אינדוקציה מבנית‪ .‬נסמן‪:‬‬
‫‬
‫‬
‫∗‬
‫‪T = w ∈ {a, b} | w starts with a‬‬
‫הבסיס‪ aa :‬מתחיל ב־‪.a‬‬
‫נניח ‪ ,w1 ∈ T‬כלומר ‪ w1‬מתחילה ב־‪.a‬‬
‫) ‪ :w = f (w1‬לפי הנחת האינדוקציה ‪w1‬מתחילה ב־‪ a‬ולכן ‪ .w = aaw1 b‬וסיימנו‪.‬‬
‫∈ ‪?aaaabbbb‬‬
‫האם ‪/ XB,F‬‬
‫})‪S = {w ∈ {a, b}∗ | #a (w) > #b (w‬‬
‫הבסיס‪.2 > 0 .aa :‬‬
‫נניח ‪ ,w1 ∈ S‬כלומר )‪.#a (w) > #b (w‬‬
‫) ‪ :w = f (w1‬אם ‪ w1‬מתחילה ב־‪ a‬אז ‪;w = aaw1 b‬‬
‫לפי הנחת האינדוקציה על ‪:w1‬‬
‫)‪#a (w) = 2 + #a (w1 ) > 1 + #b (w1 ) = #b (w‬‬
‫אם ‪ w1‬מתחילה ב־‪ b‬אז ‪ w = bbw1 a‬־ לא עובד!‬
‫צריך לחזק את ההנחה ‪XB,F ⊂ S ∩ T ⊂ S‬‬
‫‪2‬‬
‫חלק‬
‫‪II‬‬
‫תחשיב הפסוקים‬
‫תרגול ‪ 2‬־ ‪18.3.15‬‬
‫‪2‬‬
‫נוסחה חוקית ‪ /‬פסוק ‪W F F /‬‬
‫על‪:‬‬
‫}) ‪{Pi | i ∈ N} ∪ {¬, ∧, ∨, →, ⇔, (,‬‬
‫נגדיר נוסחה חוקית באופן אינדוקטיבי‪:‬‬
‫• כל פסוק אטומי הוא נוסחה חוקית‪.‬‬
‫• אם ‪ α, β‬נוסחאות חוקיות אז גם‪ (α ◦ β) ,(¬α) :‬כאשר }⇔ ‪◦ ∈ {∧, ∨, →,‬‬
‫‪2.0.0.3‬‬
‫דוגמא‪:‬‬
‫האם‬
‫))) ‪(P3 → (P2 ∨ (¬P1‬‬
‫נוסחה חוקית?‬
‫‪P3‬‬
‫‪.1‬‬
‫‪P2‬‬
‫‪.2‬‬
‫‪P1‬‬
‫‪.3‬‬
‫) ‪(¬P1‬‬
‫‪.4‬‬
‫)) ‪(P2 ∨ (¬P1‬‬
‫‪.5‬‬
‫‪(P3 → (P2 ∨ (¬P1 ))) .6‬‬
‫⇒‬
‫∨‬
‫¬‬
‫‪P3‬‬
‫‪P2‬‬
‫‪P1‬‬
‫‪2.0.0.4‬‬
‫דוגמא‪:‬‬
‫האם )→ ‪ (P! P2‬נוסחה חוקית?‬
‫טענה ‪ 2.1‬בנוסחה חוקית‪ ,‬בין כל שני פסוקים אטומיים מופיע קשר‪.‬‬
‫הוכחה‪) :‬באינדוקציה מבנית(; בסיס‪ :α = β :‬הטענה מתקיימת באופן ריק‪.‬‬
‫נניח את הטענה עבור נוסחאות ‪ .β, γ‬נפריד למקרים‪:‬‬
‫• אם )‪ :α = (¬β‬כל שני פסוקים אטומיים ב־‪ α‬הם ב־‪ β‬ולפי הנחת האינדוקציה על ‪ ,β‬יש ביניהם קשר‪.‬‬
‫• אם )‪ :α = (β ◦ γ‬יהיו שני פסוקים אטומיים ב־‪.α‬‬
‫– אם שניהם ב־‪) β‬ב־‪ ,(γ‬לפי הנחת האינדוקציה יש ביניהם קשר‪.‬‬
‫– אם אחד ב־‪ β‬והשני ב־‪ γ‬יש ביניהם ◦‪.‬‬
‫הביטוי )→ ‪ (P1 P2‬אינו מקיים את התכונה הנ"ל‪ ,‬ולכן אינו נוסחה חוקית‪.‬‬
‫‪3‬‬
‫‪3‬‬
‫הצרנה‬
‫‪ .1‬אם מחר ירד גשם )‪ ,(p‬לא אבוא להרצאה )‪.(q‬‬
‫‪1‬‬
‫‪p → ¬q‬‬
‫‪ .2‬אצליח בבחינה )‪ (a‬רק אם אעשה את תרגילי הבית )‪.(b‬‬
‫‪a→b‬‬
‫קשר הגרירה הלוגית לא מסתיר שום משמעות של זמן‪ ,‬ולכן הגרירה היא לא בהכרח במובן של סיבה ותוצאה‬
‫לאורך זמן‪.‬‬
‫אפשר להסתכל גם על )‪ (¬b → ¬a‬אבל אז נאבד את הצורה של הטענה‪ .‬כדאי לנסות להצרין את הטענה‬
‫באופן דומה לניסוח הטענה‪.‬‬
‫‪ .3‬אם לא אצא עכשיו )‪ ,(p‬אאחר )‪.(q‬‬
‫‪¬p → q‬‬
‫נשים לב שיש דמיון גדול בין הטענה הנ"ל לטענה‪ :‬אם אצא עכשיו‪ ,‬לא אאחר‪.‬‬
‫‪p → ¬q‬‬
‫וזו הצרנה אחרת לגמרי! מומלץ להיצמד למשפט כפי שהוא כתוב ולא לתרגם אותו למה שאנו חושבים שהוא‬
‫אומר‪.‬‬
‫‪ .4‬טיעון מורכב‪:‬‬
‫• אם יוסי הגיע לתחנה )‪ (a‬והרכבת יצאה בזמן )‪ ,(b‬הוא היה פה עכשיו )‪.(c‬‬
‫‪(a ∧ b) → c‬‬
‫• יוסי הגיע לתחנה אך אינו כאן עכשיו‪.‬‬
‫‪a ∧ ¬c‬‬
‫• מכאן‪ ,‬שהרכבת לא יצאה בזמן‪.‬‬
‫‪(a ∧ b) → c, a ∧ ¬c |= ¬b‬‬
‫‪4‬‬
‫שלמות פונקציונלית‬
‫}∨ ‪ {¬, ∧,‬שלמה פונקציונלית‬
‫}∧ ‪ {¬,‬שלמה פונקציונלית‪ ,‬כי‬
‫)‪α ∨ β ≡ ¬ (¬α ∧ ¬β‬‬
‫‪1‬מעתה נשמיט סוגריים ־ לפי כללי השמטת סוגריים שנראו בהרצאה‪.‬‬
‫‪4‬‬
‫‪4.0.0.5‬‬
‫תרגיל‪:‬‬
‫נגדיר קשר דו־מקומי חדש ↓‬
‫‪p↓q‬‬
‫‪f‬‬
‫‪f‬‬
‫‪f‬‬
‫‪t‬‬
‫‪q‬‬
‫‪t‬‬
‫‪f‬‬
‫‪t‬‬
‫‪f‬‬
‫‪p‬‬
‫‪t‬‬
‫‪t‬‬
‫‪f‬‬
‫‪f‬‬
‫הוכח כי }↓{‪ ,‬שלמה פונקציונלית‪ .‬נבנה בעזרתו קבוצה שלמה פונקציונלית אחרת‪:‬‬
‫‪≡ α↓α‬‬
‫)‪≡ (¬α) ↓ (¬β) ≡ (α ↓ α) ↓ (β ↓ β‬‬
‫‪¬α‬‬
‫‪α∧β‬‬
‫הערה ‪ 4.1‬טעות נפוצה היא לבנות את ↓ בעזרת ¬ ו־∧ למשל‪ ,‬אבל זה לא מעניין אותנו‪.‬‬
‫‪ 4.0.0.6‬תרגיל‪ :‬הוכח כי הקבוצה }⇔ ‪ {∧,‬אינה שלמה פונקציונלית‪.‬‬
‫נחפש תכונה שכל הנוסחאות מעל הקשרים האלה חייבות לקיים‪ ,‬אך יש טבלת אמת שלא מקיימת את הנוסחה‬
‫הזאת‪.‬‬
‫טענה ‪ 4.2‬בכל נוסחה חוקית מעל }↔ ‪ ,{∧,‬בכל השמה בה כל הפסוקים האטומיים יקבלו ‪ ,t‬גם הנוסחה תקבל ‪.t‬‬
‫הוכחה‪ׁׁ :‬ההוכחה באינדוקציה מבנית‪ ,‬כשמשתמשים רק בקשרים הנתונים‪.{∧, ↔} :‬‬
‫כעת ניקח טבלת אמת כלשהי שבשורה מסוימת בטבלה מקבלת רק ‪ t‬ומחזירה ‪ .f‬את טבלת האמת הזאת אי‬
‫אפשר לממש בעזרת הקשרים }↔ ‪ ,{∧,‬לפי הטענה‪.‬‬
‫תרגול ‪ 3‬־ ‪25.3.15‬‬
‫‪5‬‬
‫סמנטיקה‬
‫• השמה ‪ v‬מספקת פסוק ‪ α‬אם ‪ v(α) = t‬ונסמן ‪v |= α‬‬
‫• פסוק יקרא ספיק אם יש השמה המספקת אותו )קבוצת פסוקים תיקרא ספיקה אם יש השמה המספקת את‬
‫כל הפסוקים בה(‬
‫• פסוק יקרא טאוטולוגיה אם כל השמה מספקת אותו )‪(|= α‬‬
‫• פסוק יקרא סתירה אם אין השמה המספקת אותו‬
‫חשוב לשים לב להבדלים בין השימוש בתוך תחשיב הפסוקים לבין המטה־שפה )דיבור מלמעלה(‬
‫אם נאמר ש־‪ α‬אינו טאוטולוגיה זה אומר שיש השמה שלא מספקת אותו‪ .‬אבל אם ‪ α‬טאוטולוגיה ‪ ¬α‬סתירה‪.‬‬
‫כלומר טאולוגיה וסתירה אינם מושגים דואליים‪ .‬ספיקות וסתירה הם מושגים דואליים‪.‬‬
‫• פסוקים ‪ α, β‬נקראים שקולים אם לכל השמה )‪(α ≡ β) v(α) = v(β‬‬
‫• פסוק ‪ α‬נובע מקבוצת פסוקים ‪ Γ‬אם בכל השמה בה ‪ Γ‬מסתפקת‪ ,‬גם ‪ α‬מסתפקת )‪(Γ |= α‬‬
‫הערה ‪ 5.1‬תמיד נביעה היא של כל הפסוקים משמאל לסימן‪ .‬כלומר ‪ a, b |= c‬זה כמו ‪{a, b} |= c‬‬
‫הערה ‪ a |= b 5.2‬אינה בשפת תחשיב הפסוקים‪ .‬זוהי טענה‪ ,‬ועליה נוכל לומר האם היא נכונה או לא נכונה‪.‬‬
‫‪5.0.0.7‬‬
‫דוגמאות‪:‬‬
‫טאוטולוגיות‬
‫‪α ∨ ¬α .1‬‬
‫‪α ↔ α .2‬‬
‫‪α → α .3‬‬
‫‪5‬‬
‫סתירות‬
‫‪.1‬‬
‫}‪¬α ∧ ¬¬α |{z‬‬
‫}‪≡ ¬α ∧ α |{z‬‬
‫‪≡ α ∧ ¬α‬‬
‫‪comm,‬‬
‫‪¬¬α≡α‬‬
‫≡‬
‫}‪|{z‬‬
‫)‪¬ (α ∨ ¬α‬‬
‫‪Demorgan‬‬
‫‪α ↔ ¬α .2‬‬
‫‪( .3‬‬
‫( ־ לא סתירה‬
‫(‪α‬‬
‫(→‬
‫‪¬α‬‬
‫‪ 5.0.0.8‬נביעות ‪α, α ↔ β |= β‬‬
‫האם הנביעה ‪ ¬p, q → r, q ∨ p |= ¬p‬מסתפקת? כן‬
‫תכונות‪:‬‬
‫‪ .1‬רפלקסיביות‪α |= α :‬‬
‫‪Γ ⊂ Γ0 , Γ |= α‬‬
‫⇓‬
‫‪ .2‬מונוטוניות‪:‬‬
‫‪Γ0 |= α‬‬
‫הערה ‪ 5.3‬האם ‪ α, β |= γ‬אומר אותו דבר כמו ‪ ?(α ∧ β) → γ‬לא! ‪ (α ∧ β) → γ‬הוא פסוק בשפת תחשיב‬
‫הפסוקים‪ ,‬ולבדו אין לו שום משמעות‪ |= .‬הוא במטה־שפה‪.‬‬
‫נוכל לתת לפסוק השני משמעות באופן הבא‪ α, β |= γ :‬מתקיימת אמ"מ ‪ (α ∧ β) → γ‬טאוטולוגיה‪) .‬בתרגיל‬
‫בית(‬
‫האם ‪ ?p, ¬q |= r ∨ ¬r‬צד ימין הוא טאוטולוגיה ־ נכון בכל השמה‪ .‬לכן בפרט הוא נכון בכל השמה שמספקת‬
‫את ההנחות‪ .‬טאוטולוגיה נובעת מכל דבר‪" ,‬מהקבוצה הריקה"‪.‬‬
‫‪ r ∨ ¬r |= T‬יכול להיות נכון רק עבור ‪ T‬טאוטולוגיה‪ ,‬ועבור כל טאוטולוגיה‪.‬‬
‫‪ p, ¬p |= q‬נכון לכל ‪ ,q‬כי אין אף השמה שמספקת את ‪ p‬וגם ‪ .¬p‬או באופן כללי יותר מקבוצה לא ספיקה‬
‫נובע כל דבר‪.‬‬
‫טענה ‪ Γ |= α 5.4‬אמ"מ }‪ Γ ∪ {¬α‬אינה ספיקה‪.‬‬
‫הוכחה‪ :⇐ :‬נניח ‪ .Γ |= α‬נניח בשלילה כי }‪ Γ ∪ {¬α‬ספיקה‪ .‬לכן‪ ,‬קיימת השמה ‪ v‬כך ש־}‪ .v |= Γ ∪ {¬α‬כלומר‪,‬‬
‫ ‪ v‬־ וזוהי סתירה לנביעה‪ ,‬כי כל השמה שמספקת את ‪ Γ‬אמורה לספק גם את ‪.α‬‬
‫‪|=α‬‬
‫‪ v |= Γ‬וגם ‪ v |= ¬α‬ואז ‬
‫ ‪ v‬לכן ‪ v |= ¬α‬אבל‬
‫‪|=α‬‬
‫→‪ :‬נניח ש־}‪ Γ ∪ {¬α‬אינה ספיקה‪ .‬תהא ‪ v‬השמה המספקת את ‪ .Γ‬נניח בשלילה ‬
‫אז }‪ ,v |= Γ ∪ {¬α‬בסתירה להנחה‪.‬‬
‫‪ 5.0.0.9‬תרגיל‪ :‬תהיינה ‪ A, B‬נוסחאות שיש להן פסוק אטומי משותף יחיד ‪ .P0‬הוכח כי אם )‪P0 → (A → B‬‬
‫טאוטולוגיה‪ ,‬אז ‪ P0 → ¬A‬או ‪ P0 → B‬טאוטולוגיה‪ .‬הוכחה‪ :‬נניח )‪ P0 → (A → B‬טאוטולוגיה‪ .‬נניח בשלילה‬
‫‪ P0 → ¬A‬לא טאוטולוגיה וגם ‪ P0 → B‬לא טאוטולוגיה‪ .‬לכן‪ ,‬קיימות השמות ‪ v1 , v2‬כך ש־‬
‫ ‪v2‬‬
‫‪|=P‬‬
‫‪ 0→B‬‬
‫⇓‬
‫‪v2 |= P0‬‬
‫ ‪v2‬‬
‫‪|=B‬‬
‫‬
‫ ‪v1‬‬
‫‪|=P‬‬
‫‪ 0 → ¬A‬‬
‫⇓‬
‫‪v1 |= P0‬‬
‫‪v1 |= A‬‬
‫נגדיר השמה חדשה ‪:v‬‬
‫‪‬‬
‫‪‬‬
‫‪v1 (q) q appears in A‬‬
‫‪v(q) = v2 (q) q appears in B‬‬
‫‪‬‬
‫‪‬‬
‫‪t‬‬
‫‪else‬‬
‫ ‪ v‬בסתירה‪.‬‬
‫‪|=P‬‬
‫ואז ‪ v(A) = v1 (A) = t ,v(P0 ) = t‬ו־ ‪ .v(B) = f‬כלומר )‪ 0 → (A → B‬‬
‫‪6‬‬
‫תרגול ‪ 4‬־ ‪30.3.15‬‬
‫מערכת הוכחה ‪HP C‬‬
‫‪6‬‬
‫‪α → (β → α) :A1‬‬
‫‪(α → (β → γ)) → ((α → β) → (α → γ)) :A2‬‬
‫‪(¬β → ¬α) → (α → β) :A3‬‬
‫‪:M P‬‬
‫‪α α→β‬‬
‫‪β‬‬
‫הערה ‪ 6.1‬באקסיומות אפשר להציב כל דבר‪ .‬ב־ ‪ M P‬אפשר להציב רק את מה שכבר ראינו שיכיח‪ ,‬ורק במבנה‬
‫המתאים‪.‬‬
‫‪6.0.0.10‬‬
‫תרגיל‪:‬‬
‫‪α → β, β → γ ` α → γ‬‬
‫‪HP C‬‬
‫‪2‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫)‪(6‬‬
‫)‪(7‬‬
‫‪6.1‬‬
‫‪α→β‬‬
‫‪Γ‬‬
‫‪β→γ‬‬
‫‪Γ‬‬
‫))‪(α → (β → γ)) → ((α → β) → (α → γ‬‬
‫‪A2‬‬
‫))‪(β → γ) → (α → (β → γ‬‬
‫‪A1‬‬
‫)‪α → (β → γ‬‬
‫‪M P2,4‬‬
‫)‪(α → β) → (α → γ‬‬
‫‪M P3,5‬‬
‫‪α→γ‬‬
‫‪M P1,6‬‬
‫משפט הדדוקציה‬
‫‪Γ ` α → β ⇐⇒ Γ, α ` β‬‬
‫‪HP C‬‬
‫‪HP C‬‬
‫על פי משפט הדדוקציה‪ ,‬מספיק להראות בתרגיל הקודם ש־‬
‫‪α → β, β → γ, α ` γ‬‬
‫‪HP C‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫‪α‬‬
‫‪Γ‬‬
‫‪α→β‬‬
‫‪Γ‬‬
‫‪β→γ‬‬
‫‪Γ‬‬
‫‪β‬‬
‫‪M P1,2‬‬
‫‪γ‬‬
‫‪M P3,4‬‬
‫הערה ‪ 6.2‬נשים לב שההוכחה הקודמת קונסטרוקטיבית וזו לא‪ .‬אף על פי כן‪ ,‬הוכחת משפט הדדוקציה שראינו‬
‫הייתה קונסטרוקטיבית ומתארת אלגוריתם שמאפשר לראות בנייה‪.‬‬
‫‪2‬נסמן ב־‪ Γ‬הנחות‬
‫‪7‬‬
‫‪6.1.0.11‬‬
‫תרגיל‪:‬‬
‫תהי ∗ ‪ HP C‬המערכת המתקבלת מ־‪ HP C‬על ידי החלפת ‪ A3‬באקסיומה‪:‬‬
‫∗‪(¬β → ¬α) → ((¬β → α) → β) :A‬‬
‫הוכח כי ‪ HP C‬ו־ ∗ ‪ HP C‬שקולות )‪ϕ‬‬
‫‪(Γ ` ϕ ⇐⇒ Γ‬‬
‫`‬
‫∗ ‪HP C‬‬
‫‪HP C‬‬
‫למה ‪` A∗ 6.3‬‬
‫‪HP C‬‬
‫הוכחה‪ :‬לפי משפט הדדוקציה‪ ,‬מספיק להראות ש־‬
‫‪¬β → ¬α, ¬β → α ` β‬‬
‫‪HP C‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫)‪(6‬‬
‫‪α → ¬¬α‬‬
‫)‪(7‬‬
‫‪¬β → ¬¬α‬‬
‫)‪(8‬‬
‫‪¬α → β‬‬
‫‪¬β → ¬α‬‬
‫‪Γ‬‬
‫‪¬β → α‬‬
‫‪Γ‬‬
‫)‪(¬β → ¬α) → (α → β‬‬
‫‪A3‬‬
‫‪α→β‬‬
‫‪M P1,3‬‬
‫)‪(¬β → ¬¬α) → (¬α → β‬‬
‫‪A3‬‬
‫‪` α → ¬¬α‬‬
‫‪HP C‬‬
‫)‪α → β, β → γ ` α → γ(2, 6‬‬
‫‪HP C‬‬
‫‪M P5,7‬‬
‫‪Γ, α ` β‬‬
‫⇒‬
‫‪Γ, ¬α ` β‬‬
‫⇒‬
‫‪HP C‬‬
‫‪Γ ` α→β‬‬
‫‪HP C‬‬
‫‪Γ ` ¬α → β‬‬
‫‪HP C‬‬
‫‪HP C‬‬
‫ואז לפי משפט הדיכוטומיה )משפט ההוכחה לפי מקרים( שהוכחנו בכיתה ־ ‪.Γ ` β‬‬
‫‪HP C‬‬
‫הערה ‪ 6.4‬כפי שעשינו בתרגיל הזה‪ ,‬אפשר להשתמש בכל טענה שהוכחנו בתוך טענות אחרות‪ ,‬כאילו כתבנו את‬
‫אותן שורות במקום המתאים‪.‬‬
‫למה ‪A3 6.5‬‬
‫`‬
‫∗ ‪HP C‬‬
‫הוכחה‪ :‬מספיק להראות ש־‬
‫‪β‬‬
‫‪¬β → ¬α, α‬‬
‫`‬
‫∗ ‪HP C‬‬
‫בגלל שההוכחה של משפט הדדוקציה משתמשת רק ב־ ‪ A1 , A2‬ו־ ‪ M P‬אז היא נכונה גם עבור ∗ ‪) HP C‬בדקו!(‪.‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫)‪(6‬‬
‫)‪(7‬‬
‫‪¬β → ¬α‬‬
‫‪Γ‬‬
‫‪α‬‬
‫‪Γ‬‬
‫)‪(¬β → ¬α) → ((¬β → α) → β‬‬
‫∗‪A‬‬
‫‪(¬β → α) → β‬‬
‫‪M P1,3‬‬
‫)‪α → (¬β → α‬‬
‫‪A1‬‬
‫‪¬β → α‬‬
‫‪β‬‬
‫הוכחה‪ :‬של התרגיל‪ :‬מיידי משתי הלמות‪.‬‬
‫‪8‬‬
‫‪M P2,5‬‬
‫‪M P4,6‬‬
‫‪6.2‬‬
‫עקביות‬
‫הגדרה ‪ 6.6‬קבוצת פסוקים ‪ Γ‬נקראת עקבית במערכת הוכחה ‪ F‬אם קיים פסוק ‪ β‬כך ש־‬
‫‪Γ` β‬‬
‫‪F‬‬
‫‬
‫משפט ‪ Γ 6.7‬עקבית ב־‪ HP C‬אם ורק אם לא קיים פסוק ‪ α‬כך ש־‪ Γ ` α‬וגם ‪. Γ ` ¬α‬‬
‫‪HP C‬‬
‫‪6.2.0.12‬‬
‫‪HP C‬‬
‫תרגיל‪ Γ ` ¬ϕ :‬אם ורק אם }‪ Γ ∪ {ϕ‬אינה עקבית ב־‪.HP C‬‬
‫‪HP C‬‬
‫הוכחה‪ :⇐ :‬נניח ‪ .Γ ` ¬ϕ‬אז ברור ש־‪) Γ, ϕ ` ¬ϕ‬מונוטוניות( וגם ‪) Γ, ϕ ` ϕ‬רפלקסיביות( ־ לכן‬
‫‪HP C‬‬
‫‪HP C‬‬
‫‪HP C‬‬
‫}‪ Γ ∪ {ϕ‬אינה עקבית ב־‪.HP C‬‬
‫⇒‪ :‬נניח }‪ Γ ∪ {ϕ‬אינה עקבית ב־‪ Γ, ϕ ` ¬ϕ .HP C‬ו־‪ Γ, ¬ϕ ` ¬ϕ‬־ לכן ‪.Γ ` ¬ϕ‬‬
‫‪HP C‬‬
‫תרגול ‪ 5‬־ ‪15.4.15‬‬
‫‪7‬‬
‫‪HP C‬‬
‫‪HP C‬‬
‫מערכות הוכחה אחרות‬
‫תהי ‪ F‬מערכת הוכחה כלשהי עבור תחשיב הפסוקים‬
‫הגדרה ‪ 7.1‬קבוצה ‪ Γ‬היא עקבית ב־ ‪ F‬אם קיים פסוק ‪ α‬כך ש־‪.Γ 0 α‬‬
‫‪F‬‬
‫‪7.0.0.13‬‬
‫הוכח ‪ /‬הפרך‪:‬‬
‫‪ .1‬אם ‪ φ‬עקבית ב־ ‪ ,F‬אז ‪ F‬נאותה‪.‬‬
‫‪3‬‬
‫נפריך‪ :‬ניקח מערכת בלי כללי היסק‪ ,‬ואקסיומה אחת ‪ . P0‬מתקיים ‪ 0 P1‬לכן היא עקבית‪ .‬היא לא נאותה‬
‫‪F‬‬
‫מכיוון ש־ ‪ ` P0‬אבל ‪ P0 ) 2 P0‬אינה טאוטולוגיה(‪.‬‬
‫‪F‬‬
‫‪ .2‬אם ‪ F‬נאותה אז ∅ עקבית ב־ ‪.F‬‬
‫הוכחה‪ :‬נניח בשלילה ‪ φ‬אינה עקבית ב־ ‪ .F‬לכן בפרט‪ .` P0 ,‬אבל אז מהנאותות נקבל כי ‪ P0‬טאוטולוגיה‬
‫‪F‬‬
‫וזו כמובן סתירה‪.‬‬
‫‪ 7.0.0.14‬תרגיל‪:‬‬
‫בתוספת הבאים‪:‬‬
‫נוסיף לשפת תחשיב הפסוקים קשר חד מקומי חדש ‪ .‬תהי ‪ S‬המערכת המכילה את ‪HP C‬‬
‫‪α → α :B1‬‬
‫‪ (α → β) → (α → β) :B2‬‬
‫‪α → α :B3‬‬
‫וכלל היסק‪:‬‬
‫‪α‬‬
‫‪α‬‬
‫‪4‬‬
‫הוכח‪ Γ, α `S β :‬אם ורק אם ‪ Γ `S α → β‬הוכחה‪ :⇒ :‬נתון כי‬
‫‪Γ `S α → β‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫‪α → β‬‬
‫‪assum.‬‬
‫‪α‬‬
‫‪42‬‬
‫‪α‬‬
‫‪M P1,3‬‬
‫‪β‬‬
‫‪3‬לפי מוסכמות עד עתה ־ ‪ P0‬הוא בהכרח איבר אטומי ולא משתנה שמייצג משהו אחר‪.‬‬
‫‪9‬‬
‫⇐‪ :‬נניח‬
‫‪Γ, α `S β‬‬
‫לכן קיימת סדרת הוכחה ‪ ϕ1 , ..., ϕn = β‬מתוך }‪ Γ ∪ {α‬ב־‪ .S‬נראה באינדוקציה ש־‬
‫‪Γ `S α → ϕi‬‬
‫בסיס‪ :‬אם ‪ ϕ1‬אקסיומה‪:‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫‪axiom/assum.‬‬
‫‪ϕ1‬‬
‫) ‪ϕ1 → (α → ϕ1‬‬
‫‪A1‬‬
‫‪α → ϕ1‬‬
‫‪M P1,2‬‬
‫אם ‪:ϕ1 = α‬‬
‫‪α → α‬‬
‫‪B1‬‬
‫נניח את טענת האינדוקציה עבור ‪.i < n‬‬
‫• אם ‪ ϕn‬אקסיומה או הנחה; מטופל כמו מקרה הבסיס‪.‬‬
‫• אם ‪ ϕn‬מתקבל מ־ ‪ (i, j < n) ϕi , ϕj = ϕi → ϕn‬ע"י ‪:M P‬‬
‫לפי הנחת האינדוקציה‪Γ `S α → (ϕi → ϕn ) , Γ `S α → ϕi :‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫‪α → ϕi‬‬
‫) ‪α → (ϕi → ϕn‬‬
‫)) ‪(α → (ϕi → ϕn )) → ((α → ϕi ) → (α → ϕn‬‬
‫‪..‬‬
‫‪.‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫‪induction hyp.‬‬
‫”‬
‫‪A2‬‬
‫‪2 × MP‬‬
‫‪α → ϕn‬‬
‫• אם ‪ ϕn = ϕi‬התקבל מ־ ‪ (i < n) ϕi‬ע"י ‪:4‬‬
‫לפי הנחת האינדוקציה‪.Γ `S α → ϕi ,‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫)‪(6‬‬
‫‪7.0.0.15‬‬
‫‪α → ϕi‬‬
‫‪induction hyp.‬‬
‫) ‪ (α → ϕi‬‬
‫‪41‬‬
‫‪α → ϕi‬‬
‫‪M P2,3‬‬
‫‪α → α‬‬
‫‪B3‬‬
‫) ‪ (α → ϕi ) → (α → ϕi‬‬
‫‪α → ϕi‬‬
‫‪B2‬‬
‫‪trans.‬‬
‫תרגיל‪ :‬קבוצת פסוקים ‪ Γ‬נקראת חצי־ספיקה אם יש שתי השמות ‪ v1 , v2‬כך שלכל ‪:ϕ ∈ Γ‬‬
‫‪v1 ϕ or v2 ϕ‬‬
‫הוכח כי ‪ Γ‬חצי ספיקה אם ורק אם כל תת־קבוצה סופית של ‪ Γ‬חצי ספיקה‪.‬‬
‫הערה ‪ 7.2‬יש תרגילים רבים בסגנון זה‪ ,‬הקשורים למשפט הקומפקטיות‪ .‬הנקודה המהותית היא הבניה‪ .‬צריך‬
‫לבנות קבוצת פסוקים‪ ,‬שתחקה את התכונה המדוברת בשאלה‪ .‬אז נוכל להפעיל את משפט הקומפקטיות‪.‬‬
‫‪10‬‬
‫בניה‪ T :‬חצי ספיקה ⇔ ¯‪ T‬ספיקה‪.‬‬
‫‪ Γ‬ספיקה ⇔ )לפי קומפקטיות( כל תת קבוצה סופית של ¯‬
‫אז ‪ Γ‬חצי ספיקה ⇔ ¯‬
‫‪ Γ‬ספיקה ⇔ כל תת קבוצה‬
‫סופית של ‪ Γ‬חצי ספיקה‪.‬‬
‫הוכחה‪) :‬ניתנה הוכחה חלקית( בה"כ נניח כי ‪ Γ‬מעל הפסוקים האטומיים }‪ .{Pi | i ∈ N‬נגדיר את ¯‬
‫‪ Γ‬מעל‬
‫הפסוקים האטומיים }‪ .4 {Pi , Qi | i ∈ N‬לכל ‪ ϕ ∈ Γ‬נבנה ¯‪ ϕ‬ע"י החלפת כל ‪ Pi‬ב־ ‪ .Qi‬נגדיר‪:‬‬
‫}‪¯ = {ϕ ∨ ϕ¯ | ϕ ∈ Γ‬‬
‫‪Γ‬‬
‫נרצה להראות ש־‪ Γ‬חצי ספיקה ⇔ ¯‬
‫‪ Γ‬ספיקה‪.‬‬
‫⇐‪ :‬נניח ש־‪ Γ‬חצי ספיקה‪ .‬לכל ‪ v1 ϕ :ϕ ∈ Γ‬או ‪ .v2 ϕ‬נגדיר השמה ‪:v‬‬
‫(‬
‫‪v1 (Pi ) R = Pi‬‬
‫= )‪v(R‬‬
‫‪v2 (Qi ) R = Qi‬‬
‫‪ .ψ ∈ Γ‬בהכרח ¯‪ ψ = ϕ ∨ ϕ‬עבור ‪ ϕ ∈ Γ‬כלשהו‪ .‬נקבל ש־‪ .5 v¯(ψ) = t‬אז ¯‬
‫ונקבל ‪ v ϕ‬או ¯‪ .v ϕ‬ניקח ¯‬
‫‪Γ‬‬
‫ספיקה‪.‬‬
‫⇒‪ :‬נניח ¯‬
‫ש־‪ Γ‬ספיקה‪ .‬אז קיימת השמה ‪ v‬שמספקת אותה‪ .‬תהי ‪ v1‬השמה כלשהי כך ש־ ‪ v(Pi ) = Pi‬לכל‬
‫‪ ,i ∈ N‬ו־ ‪ v2‬השמה כלשהי המקיימת ) ‪ v2 (Pi ) = v(Qi‬לכל ‪.i ∈ N‬‬
‫תהא ‪ ϕ ∈ Γ‬־ אז ¯‬
‫¯‪ .‬אבל )‪ 6 v¯1 (ϕ) = v¯(ϕ‬ובאותו אופן‬
‫)‪v (ϕ‬‬
‫‪ ϕ ∨ ϕ¯ ∈ Γ‬ואז בהכרח ‪ v¯(ϕ) = t‬או ‪¯ = t‬‬
‫)‪ .v¯2 (ϕ) = v¯(ϕ‬לכן ‪ ϕ‬מסתפקת על ידי ‪ v1‬או על ידי ‪ ,v2‬אז ‪ Γ‬חצי ספיקה כדרוש‪.‬‬
‫¯‬
‫תרגול ‪ 6‬־ ‪29.4.15‬‬
‫‪8‬‬
‫גדירות‬
‫קבוצת פסוקים ‪ Σ‬מגדירה את קבוצת ההשמות‪:‬‬
‫}‪Ass(Σ) = {v ∈ Ass | v Σ‬‬
‫)‪Ass(Σ‬‬
‫‪Σ‬‬
‫}‪{Pi | i ∈ N‬‬
‫} ‪{vt‬‬
‫‪All tautologies‬‬
‫‪Ass‬‬
‫∅‬
‫‪Ass‬‬
‫∅‬
‫‪WFF‬‬
‫‬
‫‬
‫‪Pi | i ∈ N +‬‬
‫}”‪{vt , ”f ttt..‬‬
‫הגדרה ‪ 8.1‬קבוצת השמות ‪ K‬נקראית גדירה אם קיימת קבוצת פסוקים ‪ Σ‬כך ש־‬
‫‪Ass(Σ) = K‬‬
‫איך מוכיחים שקבוצת השמות גדירה?‬
‫‪8.0.0.16‬‬
‫תרגיל‪:‬‬
‫הוכח כי‬
‫}‪Keven = {v | v Pi , i is even‬‬
‫גדירה‪ .‬הוכחה‪ :‬נגדיר }‪ .Σ = {Pi | i is even‬צ"ל‪Ass(Σ) = Keven :‬‬
‫)‪v ∈ Keven ⇔ ∀even i, v Pi ⇔ ∀α ∈ Σ, v α ⇔ v Σ ⇔ v ∈ Ass(Σ‬‬
‫‪"4‬מבחינת מימוש"‪ ,‬אפשר לומר למשל ש־ ‪ Pi‬הם ‪ p2i‬ו־ ‪ Qi‬הם ‪.p2i+1‬‬
‫‪5‬יש להסביר מדוע‬
‫‪6‬יש להסביר מדוע‬
‫‪11‬‬
‫‪8.0.0.17‬‬
‫תרגיל‪:‬‬
‫לכל ‪ j ∈ N‬נגדיר‬
‫}‪Kj = {v | v satises up to j atoms} = {v | |{Pi | v(Pi ) = t}| ≤ j‬‬
‫הוכח כי לכל ‪ Kj ,j‬גדירה‪ .‬הוכחה‪ :‬לכל ‪ j‬נגדיר‬
‫)‬
‫(‬
‫!‬
‫‪| A ⊂ N, |A| = j + 1‬‬
‫‪Pi‬‬
‫^‬
‫¬‬
‫= ‪Σj‬‬
‫‪i∈A‬‬
‫צ"ל‪:‬‬
‫‪Ass(Σj ) = Kj‬‬
‫‪v ∈ Kj ⇔ ∀A ⊂ N |A| = j + 1, ∃i ∈ A : v 2 Pi‬‬
‫^‬
‫‪⇔ ∀A ⊂ N |A| = j + 1, v 2‬‬
‫‪Pi‬‬
‫‪i∈A‬‬
‫!‬
‫‪Pi‬‬
‫^‬
‫¬ ‪⇔ ∀A ⊂ N |A| = j + 1, v‬‬
‫‪i∈A‬‬
‫‪⇔ ∀a ∈ Σj , v α‬‬
‫) ‪⇔ v Σj ⇔ v ∈ Ass(Σj‬‬
‫איך מוכיחים שקבוצת השמות ‪ K‬אינה גדירה?‬
‫‪ .1‬נניח בשלילה כי ‪ K‬גדירה על ידי קבוצת פסוקים ‪.X‬‬
‫‪ .2‬נגדיר קבוצת פסוקים ‪ Y‬עבורה אנו יודעים למצוא את ) ‪) Ass(Y‬וגם קל(‬
‫‪ .3‬נוכיח כי ‪ X ∪ Y‬אינה ספיקה‪:‬‬
‫∅ = ) ‪Ass(X ∪ Y ) = Ass(X) ∩ Ass(Y ) = K ∩ Ass(Y‬‬
‫‪ .4‬נוכיח כי ‪ X ∪ Y‬ספיקה )על ידי משפט הקומפקטיות(‪:‬‬
‫תהי ‪ D ⊂ X ∪ Y‬סופית‪ .‬נגדיר‪:‬‬
‫‪Dx = D ∩ X, Dy = D ∩ Y‬‬
‫נבנה השמה ‪ v‬שמספקת את ‪ Dy‬ונרחיב אותה כך שתספק את ‪) Dx‬שתהיה ב־‪ .(K‬אז‪:‬‬
‫‪v D = Dx ∪ Dy‬‬
‫ולכן לפי משפט הקומפקטיות‪ X ∪ Y ,‬ספיקה‪.‬‬
‫‪8.0.0.18‬‬
‫תרגיל‪:‬‬
‫הוכח כי הקבוצה‬
‫}∞ = |}‪Kinf = {v | v satises an innite number of atoms} = {v | |{Pi | v(Pi ) = t‬‬
‫אינה גדירה‪.‬‬
‫נעקוב בהוכחה אחרי השלבים שהגדרנו לעיל‪ .‬הוכחה‪:‬‬
‫‪ .1‬נניח בשלילה ש־ ‪ Kinf‬גדירה על ידי ‪ X‬כלשהי; ‪Ass(X) = Kinf‬‬
‫‪ .2‬נגדיר }‪ ,Y = {¬Pi | i ∈ N‬ואז } ‪Ass(Y ) = {vf‬‬
‫‪12‬‬
‫‪ .3‬נוכיח כי ‪ X ∪ Y‬אינה ספיקה‪:‬‬
‫}‪Ass(X ∪ Y ) = Ass(X) ∩ Ass(Y ) = Kinf ∩ {vf } |{z‬‬
‫∅ =‬
‫‪vf ∈K‬‬
‫‪/ inf‬‬
‫‪ .4‬נוכיח כי ‪ X ∪ Y‬ספיקה‪ .‬תהי ‪ D ⊂ X ∪ Y‬סופית‪ .‬נגדיר ‪ Dx = X ∩ D‬ו־‪.Dy = Y ∩ D‬‬
‫‪ Dy‬מהצורה } ‪ .{¬Pi1 , ..., ¬Pik‬נסמן ב־‪ m‬את האינדקס המקסימלי של האטומים ב־ ‪ .Dy‬נגדיר‪:‬‬
‫(‬
‫‪f i≤m‬‬
‫=‪v‬‬
‫‪t i>m‬‬
‫‪ ,v ∈ Kinf ,v Dy‬לכן ‪ v X‬ואז ‪ .v Dx‬מתקיים‬
‫‪v D = Dx ∪ Dy‬‬
‫ועל פי משפט הקומפקטיות ‪ X ∪ Y‬ספיקה‪.‬‬
‫‪8.0.0.19‬‬
‫תרגיל‪:‬‬
‫עבור ‪ ,n ∈ N‬השמה ‪ v‬תיקרא ‪n‬־חזקתית אם לכל ‪:i ∈ N+‬‬
‫‪v P(n+2)i‬‬
‫לכל ‪ n ∈ N‬נסמן ב־ ‪ Kn‬את קבוצת ההשמות ה־‪n‬־חזקתיות‪) .‬פתרונות חלקיים(‬
‫‪ .1‬הוכח או הפרך‪ Kn :‬גדירה לכל ‪ .n‬כן גדירה )הקבוצה מוגדרת בדיוק לפי הפסוקים האטומיים שהיא אמורה‬
‫לספק(‪.‬‬
‫‪ .2‬השמה ‪ v‬תיקרא חזקתית אם קיים ‪ n‬שעבורו היא ‪n‬־חזקתית‪ .‬נסמן ב־‪ K‬את קבוצת כל ההשמות החזקתיות‪.‬‬
‫הוכח או הפרך‪ Ass\K :‬גדירה‪) .‬האם קבוצת כל ההשמות שאינן חזקתיות‪ ,‬גדירה?( לא גדירה ־ נחפש את‬
‫הקבוצה ‪ Y‬הכי פשוטה שאנחנו יכולים‪:‬‬
‫} ‪Y = {Pi‬‬
‫‪13‬‬
‫תרגול ‪ 7‬־ ‪6.5.15‬‬
‫חלק‬
‫‪III‬‬
‫תחשיב הפרדיקטים‬
‫שם עצם‬
‫‪c‬‬
‫‪x‬‬
‫) ‪f (t1 , .., tn‬‬
‫‪v¯(t) ∈ DM‬‬
‫נוסחה‬
‫) ‪R(t1 , ...tn‬‬
‫‪¬α, α ∧ β, ...‬‬
‫)‪(∀x α) , (∃x α‬‬
‫} ‪v¯(ϕ) ∈ {t, f‬‬
‫נתבונן בנוסחה‪:‬‬
‫))‪(∀x R(x, c‬‬
‫מה המשמעות של ∀? לכל מה?‬
‫נגדיר מבנים ‪ M1 , M2‬לדוגמה‪:‬‬
‫}‪DM1 = {0‬‬
‫})‪RM1 = {(0, 0‬‬
‫‪cM1 = 0‬‬
‫‪Domain‬‬
‫‪Relation‬‬
‫‪Constant‬‬
‫‪DM2 = N‬‬
‫‪(x, y) ∈ RM2 ↔ x ≥ y‬‬
‫‪cM2 = 0‬‬
‫במבנה ‪ ,M2‬מה המשמעות של )‪ ?R(x, c‬זה כמו ‪ .x ≥ 0‬האם זו נוסחה נכונה? ־ לא בהכרח‪ ,‬זה תלוי ב־‪.x‬‬
‫בלוגיקה קלאסית מסדר ראשון‪ ,‬התחום ) ‪ (Domain‬חייב להיות לא ריק!‬
‫תזכורת להגדרות מההרצאה )ודוגמאות(‪:‬‬
‫¯‪ .‬נסמן ‪ M, v ϕ‬ונאמר כי )‪ (M, v‬הוא ‪t‬־מודל של ‪.ϕ‬‬
‫• ‪ ϕ‬ספיקה במבנה ‪ M‬והשמה ‪ v‬אם ‪v (ϕ) = t‬‬
‫• ‪ ϕ‬ספיקה במבנה ‪ M‬אם קיימת השמה ‪ v‬כך ש־‪.M, v ϕ‬‬
‫• ‪ ϕ‬ספיקה אם קיים מבנה בו היא ספיקה‪.‬‬
‫– )‪R(x‬‬
‫• ‪ ϕ‬נכונה ב־ ‪ M‬אם לכל השמה ‪ .M, v ϕ ,v‬אז נסמן ‪ M ϕ‬ונאמר ש־ ‪ M‬הוא ‪v‬־מודל של ‪.ϕ‬‬
‫– )‪ R(x, c‬ב־ ‪ M1‬בגלל שהיא פסוק‬
‫– )‪ R(x, c‬ב־ ‪M2‬‬
‫• ‪ ϕ‬היא ‪v‬־ספיקה אם יש לה ‪v‬־מודל‪.‬‬
‫• נאמר ש־‪ ϕ‬תקפה אם היא נכונה בכל מבנה‪.‬‬
‫– )‪R(x) ∨ ¬R(x‬‬
‫– ))‪(∀x P (x)) → (∃x P (x‬‬
‫‪ 8.0.0.20‬תרגיל הוכח ‪ /‬הפרך‪ :‬אם ‪ ∃x ϕ‬נכונה ב־ ‪ ,M‬אז ‪ ϕ‬נכונה ב־ ‪.M‬‬
‫לא נכון‪ :‬ניקח )‪ ∃x P (x‬עם מבנה ‪ .P M = Neven ,DM = N :M‬ברור ש־)‪ ∃x P (x‬מתקיים‪.‬‬
‫ניקח ‪ .v(x) = 7‬אז )‪.M, v 2 P (x‬‬
‫‪14‬‬
‫‪8.0.0.21‬‬
‫נחפש נוסחה ‪ ϕ‬ספיקה אינה ‪v‬־ספיקה נתבונן ב־‬
‫)‪P (x) ∧ ∃x ¬P (x‬‬
‫נוסחה זו מסתפקת‪ :‬למשל עם המבנה מהתרגיל הקודם וההשמה ‪ .v(x) = 4‬למה היא לא ‪v‬־ספיקה? הוכחה‪:‬‬
‫)לא פורמלית( בשביל לספק את הנוסחה‪ ,‬ההשמה חייבת לספק את )‪ P (x‬וגם את )‪ .∃x ¬P (x‬אז אם )‪,∃x ¬P (x‬‬
‫נכונה במבנה הספציפי שלקחנו‪ ,‬קיימת השמה ל־‪ x‬שעבורה )‪ ¬P (x‬ואז עבור אותה השמה ל־‪ x‬לא יתקיים )‪.P (x‬‬
‫אז זו השמה שאינה מספקת את הנוסחה ולכן נוסחה זו לא ‪v‬־ספיקה‪.‬‬
‫ראינו בכיתה‪:‬‬
‫‪t‬‬
‫‪v‬‬
‫‪Γϕ ⇒ Γϕ‬‬
‫‪v‬‬
‫‪t‬‬
‫‪Γ ϕ 6⇒ Γ ϕ‬‬
‫נראה דוגמה לכך שהגרירה לא מתקיימת בכיוון ‪v‬־נביעה ⇐ ‪t‬־נביעה‪:‬‬
‫‪t‬‬
‫ )‪R(x‬‬
‫)‪6 ∀x R(x‬‬
‫עם המבנה שראינו קודם ‪ DM = N, P M = Neven‬והשמה ‪.v(x) = 6‬‬
‫‪v‬‬
‫אבל )‪:R(x) ∀x R(x‬‬
‫מהם המבנים ‪ M‬בהם )‪ R(x‬נכונה? בהכרח צריך להתקיים‬
‫עוד דוגמה‪:‬‬
‫‪.RM = DM‬‬
‫‪v‬‬
‫)‪x = c ∀x∀y (x = y‬‬
‫מתאים‪.‬‬
‫‬
‫אפשר לבדוק ש־‪t‬־נביעה אינה מתקיימת‪ ,‬כי אפשר למצוא מבנה‬
‫אבל בשביל ‪v‬־מודל שיתאים ל‪ ,x = c‬בהכרח מתקיים ‪ DM = 1‬־ ואז כל האיברים שווים!‬
‫תרגול ‪ 8‬־ ‪13.5.15‬‬
‫‪9‬‬
‫ספיקות ותקפות‬
‫‪9.0.0.22‬‬
‫דוגמה‬
‫))‪ϕ = (∃x P (x) ∧ ∃x R(x)) → ∃x (P (x) ∧ R(x‬‬
‫האם ‪ ϕ‬ספיקה? תקפה?‬
‫ניקח ‪P M = RM = {0} ,D = N :M‬‬
‫קל לראות ש־‪ ,M v‬כלומר ‪ ϕ‬ספיקה‪.‬‬
‫אבל ‪ ϕ‬אינה תקפה‪ :‬למשל ‪ D = N‬ו־ ‪= Neven‬‬
‫‪9.0.0.23‬‬
‫‪ P M‬ו־ ‪.RM = Nodd‬‬
‫דוגמה‬
‫))‪ϕ = (∃x P (x) → ∀x P (x)) ∨ ∃y∃z (P (y) ∧ ¬P (z‬‬
‫‪ ϕ‬תקפה‪ .‬יהי ‪ M‬מבנה כלשהו‪.‬‬
‫אם ‪:P M = D‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪∀x P (x‬‬
‫‬
‫‪M‬‬
‫)‪∃x P (x) → ∀x P (x‬‬
‫‬
‫‪M‬‬
‫‪ϕ‬‬
‫‬
‫‪M‬‬
‫כשהמעבר מ־‪ 1‬ל־‪ 2‬הוא לפי טבלת האמת של →‪.‬‬
‫אם ∅ = ‪:P M‬‬
‫)‪M 2 ∃x P (x‬‬
‫‪15‬‬
‫אז מתקים ‪ 2‬במקרה הקודם לפי טבלת האמת של →‪.‬‬
‫∈ ‪ .b‬ואז‪:‬‬
‫= ∅‪ :‬יש ‪ ,a ∈ P M‬יש ‪/ P M‬‬
‫אם ‪6 P M ( D‬‬
‫))‪∃y∃z (P (y) ∧ ¬P (z‬‬
‫‬
‫‪M‬‬
‫‪ϕ‬‬
‫‬
‫‪M‬‬
‫טענה ‪ 9.1‬תהא ‪ T‬קבוצת נוסחאות ו־‪ ϕ‬פסוק‪v T ∪ {ϕ} .‬־ספיקה אם ורק אם ‪.T 2v ¬ϕ‬‬
‫הוכחה‪ :⇐ :‬נניח }‪v T ∪ {ϕ‬־ספיקה‪ .‬לכן קיים ‪ M‬בו הקבוצה נכונה‪ ,‬כלומר‪ M T :‬וגם ‪ .M ϕ‬ברור‬
‫ש־‪.M 2 ¬ϕ‬‬
‫מצאנו ‪v‬־מודל של ‪ T‬שאינו ‪v‬־מודל של ‪ ¬ϕ‬ולכן ‪. T 2v ¬ϕ‬‬
‫⇒‪ :‬נניח ‪ .T 2v ¬ϕ‬קיים מבנה ‪ M‬כך ש־ ‪ M T‬וגם ‪ .M 2 ¬ϕ‬בגלל ש־‪ ϕ‬פסוק )אין לו משתנים חופשיים‬
‫ואז הוא לא תלוי בבחירת ההשמה עצמה( נקבל ‪.M ϕ‬‬
‫}‪ M T ∪ {ϕ‬ולכן הקבוצה ‪v‬־ספיקה‪.‬‬
‫‪9.0.0.24‬‬
‫תרגיל‪:‬‬
‫למצוא הפרכה לטענה אם לא נתון ש־‪ ϕ‬פסוק‪.‬‬
‫טענה ‪ 9.2‬יהיו ‪ t, s1 , s2‬שמות עצם‪ .‬אם ) ‪ v(s1 ) = v(s2‬אז )]‪.v (t [s1/x]) = v (t [s2/x‬‬
‫הוכחה‪ :‬באינדוקציה על מבנה שם העצם ‪ .t‬מקרי הבסיס‪:‬‬
‫‪:t = c‬‬
‫)]‪v (c [s1/x]) = v(c) = v (c [s2/x‬‬
‫‪:t = y 6= x‬‬
‫)]‪v (y [s2/x‬‬
‫= )‪= v(y‬‬
‫)]‪v (y [s1/x‬‬
‫‪:t = x‬‬
‫)]‪v (x [s1/x]) = v(s1 ) = v(s2 ) = v (x [s2/x‬‬
‫נניח את טענת האינדוקציה עבור שמות עצם ‪ t1 , ..., tn‬ונוכיח עבור ) ‪.f (t1 , ..., tn‬‬
‫‪7‬‬
‫))]‪v (f (t1 , ..., tn ) [s1/x]) = v (f (t1 [s1/x] , ..., tn [s1/x])) = f M (v (t1 [s1/x]) , ..., v (tn [s1/x‬‬
‫‪IH‬‬
‫)]‪= f M (v (t1 [s2/x]) , ..., v (tn [s2/x])) = v (f (t1 [s2/x] , ..., tn [s2/x])) = v (f (t1 , ..., tn ) [s2/x‬‬
‫הצרנות‬
‫‪10‬‬
‫הטענה‪:‬‬
‫יש חתול חכם‬
‫מעל המילון‪ :‬יחס חד מקומי )·( ‪ C‬עבור חתול‪ ,‬ו־)·( ‪ S‬עבור חכם‪.‬‬
‫))‪∃x (C(x) ∧ S(x‬‬
‫כל החתולים חכמים‬
‫))‪∀x (C (x) → S (x‬‬
‫הערה ‪ 10.1‬כלל אצבע‪ ∃ :‬תמיד ילך עם ∧‪ ,‬ו־∀ תמיד ילך עם → )עד כדי שקילויות(‪.‬‬
‫‪IH = Induction Hypothesis‬‬
‫‪7‬‬
‫‪16‬‬
‫תרגול ‪ 9‬־ ‪18.5.15‬‬
‫)בן לי וולק‪ ,‬עד‬
‫סוף הקורס(‬
‫‪11‬‬
‫סגור אוניברסלי‬
‫הגדרה ‪ ϕ 11.1‬נוסחה‪ F V (ϕ) ⊂ {x1 , ..., xn } .‬סגור אוניברסלי של ‪ ϕ‬הוא פסוק מהצורה ‪ .∀x1 ...∀xn ϕ‬סימון‪:‬‬
‫∀‪.ϕ‬‬
‫הערה ‪11.2‬‬
‫‪ ϕ∀ .1‬פסוק‪.‬‬
‫‪ .2‬הסגור האוניברסלי אינו יחיד‪.‬‬
‫‪ .3‬באופן דומה‪ ,‬אם ‪ Σ‬קבוצת נוסחאות‪ .‬נגדיר‪:‬‬
‫‬
‫‬
‫‪Σ∀ = ϕ∀ | ϕ ∈ Σ‬‬
‫‪ 11.0.0.25‬תרגיל‪ :‬תהא ‪ Σ‬קבוצת נוסחאות‪ .‬הוכיחו שאם ∀‪t Σ‬־ספיקה אז ‪t Σ‬־ספיקה‪.‬‬
‫כלומר‪ ,‬אם יש מבנה ‪ M‬והשמה ‪ v‬שמספקים את ∀‪ ,Σ‬אז יש מבנה ‪ M 0‬והשמה ‪ v 0‬שמספקים את ‪ .Σ‬הוכחה‪:‬‬
‫נניח ש־ ∀‪t Σ‬־ספיקה‪ .‬אז יש ‪ M, v‬ש־ ∀‪ .M, v Σ‬כיוון ש־ ∀‪ Σ‬קבוצת פסוקים מתקיים ש־ ∀‪.M Σ‬‬
‫כלומר‪ ,‬לכל השמה ‪ ,v‬ולכל ‪.M, v 0 ∀x1 ...∀xn ϕ :ϕ ∈ Σ‬‬
‫לכל ‪ ,v 0‬לכל ‪ ϕ ∈ Σ‬ולכל ‪:d1 , ..., dn ∈ DM‬‬
‫‪8‬‬
‫‪M, v 0 [d1/x1 , d2/x2 , ..., dn/xn ] ϕ‬‬
‫תהי ‪ u‬השמה כלשהי ב־ ‪ .M‬לכן היא מקיימת ‪ .M, u Σ‬אז ‪t Σ‬־ספיקה‪.‬‬
‫שאלה‪ :‬האם הכיוון ההפוך נכון? כלומר‪ :‬האם ‪t Σ‬־ספיקה⇐ ∀‪t Σ‬־ספיקה?‬
‫תשובה‪ :‬לא‪t Σ .Σ∀ = {∀x R(x), ¬∀y R(y)} ,Σ = {R(x), ¬∀y R(y)} .‬־ספיקה‪ Σ ,‬אינה‪.‬‬
‫∀‬
‫‪M ∀x R(x) ⇔ ∀d ∈ DM , d ∈ RM ⇒ RM = DM‬‬
‫∈ ‪M ¬∀y R(y) ⇔ ∃d ∈ DM , d‬‬
‫‪/ RM‬‬
‫בסתירה‪.‬‬
‫‪v‬‬
‫‪ 11.0.0.26‬תרגיל‪) :‬ממבחן!( ‪ τ‬מילון‪ Σ .‬קבוצת פסוקים מעל ‪ ϕ, ψ .τ‬נוסחאות‪ .‬נתון )‪.Σ ∀x∃y ψ(x, y‬‬
‫נגדיר מילון חדש ‪ ,σ‬ע"י הוספת סימן פונקציה חד־מקומי חדש ‪ f‬ל־ ‪ .τ‬הוכיחו‪ :‬עבור ‪ Σ‬קבוצת נוסחאות מעל ‪,τ‬‬
‫אם‬
‫‪v‬‬
‫‪Σ ∪ {∀x ψ(x, f (x))} ϕ‬‬
‫‪v‬‬
‫אז ‪ .Σ ϕ‬הוכחה‪ :‬יהי ‪ M‬מבנה מעל המילון ‪ τ‬שמספק את ‪ .Σ‬המטרה‪ :‬להראות ש־ ‪ M‬מספק את ‪ .ϕ‬כיוון‬
‫ש־ ‪ M‬מספק את ‪ ,Σ‬מהנתון נובע ש־)‪M ∀x∃y ψ(x, y‬‬
‫נמצא מבנה ‪ M 0‬מעל ‪ σ‬שיספק את }))‪ .Σ ∪ {∀x ψ(x, f (x‬הפירושים לסימנים ב־ ‪ :τ‬כמו ב־ ‪ ;M‬העולם‬
‫‪0‬‬
‫‪0‬‬
‫‪0‬‬
‫‪0‬‬
‫‪ .DM = DM‬נשאר‪ :‬לפרש את ‪ ,f‬כלומר להגדיר ‪.f M : DM → DM = DM → DM‬‬
‫‪0‬‬
‫נשתמש ב־)‪ .M ∀x∃y ψ(x, y‬לכל ‪ d ∈ DM‬קיים ‪ ed ∈ DM‬כך ש־]‪ .M ψ [d/x, ed/y‬נגדיר ‪,f M (d) = ed‬‬
‫ואז ))‪.M 0 ∀x ψ(x, f (x‬‬
‫‪0‬‬
‫בנוסף ‪ M 0 Σ‬כי כל הנוסחאות ב־‪ Σ‬מוגדרות מעל ‪ τ‬ו־ ‪ M‬זהה ל־ ‪ M‬על ‪.τ‬‬
‫אז ‪ ϕ .M 0 ϕ‬מוגדרת מעל ‪ τ‬ולכן אם ‪ M 0 ϕ‬גם ‪. M ϕ‬‬
‫תרגול‬
‫‪25.5.15‬‬
‫‪10‬‬
‫־‬
‫‪12‬‬
‫פסוקים בצורת ‪P N F‬‬
‫הגדרה ‪ 12.1‬פסוק ‪ ϕ‬הוא בצורת ‪ P N F‬אם ‪ ϕ = Q1 x1 Q2 x2 ...Qn xn α‬כאשר }∃ ‪ Qi ∈ {∀,‬לכל ‪1 ≤ i ≤ n‬‬
‫ו־‪ α‬נוסחה חסרת כמתים‪.‬‬
‫‪8‬תזכורת‪ :‬עבור קבוצת פסוקים‪t ,‬־ספיקות ו־‪v‬־ספיקות הן תכונות שקולות‬
‫‪17‬‬
‫טענה ‪ 12.2‬לכל פסוק ‪ ϕ‬קיים פסוק שקול ‪ ϕ0‬בצורת ‪.P N F‬‬
‫משפט ‪ 12.3‬סקולם‪ :‬קיים אלגוריתם שבונה‪ ,‬בהינתן פסוק ‪ ϕ‬פסוק אוניברסלי ‪ ϕ0‬כך ש־‪ ϕ‬ספיק אם ורק אם ‪ϕ0‬‬
‫ספיק‪.‬‬
‫‪ .1‬להעביר את ‪ ϕ‬לצורת ‪P N F‬‬
‫‪ .2‬סילוק כמתי ∃‪:‬‬
‫)) ‪∀x1 ...∀xn ϕ(x1 , ..., xn , f (x1 , ..., xn‬‬
‫)‪∀x1 ...∀xn ∃y ϕ(x1 , ..., xn , y‬‬
‫כש־ ‪ f‬סימן פונקציה חדש‬
‫)‪ψ (c/y‬‬
‫)‪∃y ψ(y‬‬
‫הגדרה ‪ 12.4‬מבנה הרברנד‪ τ :‬מילון‪ M .‬מבנה הרברנד עבור ‪ τ‬אם‪:‬‬
‫‪ .1‬לכל ‪ d ∈ DM‬יש שם עצם ‪ s‬ללא משתנים מעל ‪ τ‬כך ש־‪sM = d‬‬
‫‪M‬‬
‫‪.sM‬‬
‫‪ .2‬לכל שני שמות עצם שונים‪1 6= s2 ,s1 6= s2 ,‬‬
‫משפט ‪ 12.5‬הרברנד‪ τ :‬מילון ללא סימן =‪ ϕ .‬פסוק אוניברסלי מעל ‪ .τ‬אז ‪ ϕ‬ספיק אם ורק אם ‪ ϕ‬ספיק במבנה‬
‫הרברנד‪.‬‬
‫‪ 12.0.0.27‬תרגיל‪ :‬הוכח‪ :‬יהי ‪ ϕ‬פסוק יישי‪ .‬אם ‪ ϕ‬נכון בכל מבנה הרברנד‪ ,‬אז ‪ ϕ‬תקף )לכל מבנה ‪.(M ϕ ,M‬‬
‫הוכחה‪ ϕ :‬תקף אם ורק אם ‪ ¬ϕ‬אינו ספיק באף מבנה‪ ¬ϕ .‬שקול לפסוק אוניברסלי‪ .‬כיוון ש־‪ ϕ‬נכון בכל מבנה‬
‫הרברנד‪ ¬ϕ ,‬אינו ספיק באף מבנה הרברנד ולכן ‪ ¬ϕ‬אינו ספיק‪.‬‬
‫‪ 12.0.0.28‬תרגיל‪ :‬יהי ‪ τ‬מילון‪ ,‬בלי סימן = ועם סימן קבוע אחד לפחות‪.‬‬
‫הוכח‪/‬הפרך‪ :‬יהי ‪ ϕ‬פסוק ספיק מעל ‪ ,τ‬אז ל־‪ ϕ‬יש מודל שהוא מבנה הרברנד‪.‬‬
‫הטענה אינה נכונה‪ .‬דוגמה‪ τ :‬מילון עם סימן קבוע אחד בלבד ‪ R .c‬סימן יחס חד מקומי‪.‬‬
‫)‪ϕ = R(c) ∧ ∃x ¬R(x‬‬
‫‪ ϕ‬ספיק‪.‬‬
‫ ‬
‫‪ ϕ‬אינו ספיק במבנה הרברנד כי כל מבנה הרברנד ‪ M‬עבור ‪ τ‬חייב לקיים ‪.DM = cM‬‬
‫‪ 12.0.0.29‬תרגיל‪:‬‬
‫דוגמה נגדית‪:‬‬
‫הוכח‪/‬הפרך‪ :‬אם פסוק נכון בכל מבנה הרברנד ־ אז הוא תקף‪.‬‬
‫)‪ϕ = (R(c) ∧ ∀x (R(x) → R(f (x)))) → ∀x R(x‬‬
‫מילון‪ :‬מכיל סימן קבוע ‪ ,c‬סימן פונקציה חד מקומית ‪ ,f‬סימן יחס חד מקומי ‪.R‬‬
‫‪ ϕ‬לא תקף‪ :‬נמצא מבנה ‪ M‬שבו ‪ ϕ‬לא נכון‪.‬‬
‫למשל‪ f M .RM = {x | x ≥ 1} .DM = N :‬פונקציית העוקב ו־‪ ϕ .cM = 1‬אינו נכון ב־ ‪.M‬‬
‫נניח בשלילה שיש מבנה הרברנד ‪ M‬שבו הפסוק אינו נכון‪ .‬אז )‪ ∀x R(x‬לא נכון ב־ ‪ M‬ו־‬
‫)))‪R(c) ∧ ∀x (R(x) → R(f (x‬‬
‫נכון ב־ ‪.M‬‬
‫קבוצת שמות העצם ללא משתנים במילון‬
‫}‪{c, f (c), f (f (c)), ...‬‬
‫יהי ‪ s‬שם העצם הקצר ביותר כך ש־)‪ R(s‬אינו נכון ב־ ‪) M‬יש כזה‪ ,‬כי )‪ ∀x R(x‬אינו נכון ב־ ‪.(M‬‬
‫‪ s 6= c‬כי )‪ R(c‬נכון ב־ ‪ .M‬לכן‪ s = f (s0 ) ,‬עבור ‪ s0‬קצר יותר‪ .‬מבחירת ‪ ,s‬מתקיים ש־) ‪ R(s0‬נכון‪.‬‬
‫הפסוק )))‪ ∀x (R(x) → R(f (x‬נכון ב־ ‪ M‬ולכן כיוון ש־) ‪ R(s0‬נכון‪ ,‬כך גם )‪ ;R(f (s0 )) = R(s‬זו סתירה‬
‫לבחירת ‪.s‬‬
‫‪18‬‬
‫‪12.0.0.30‬‬
‫תרגיל‪:‬‬
‫הוכיחו שהפסוק הבא תקף‪:‬‬
‫)‪∀∃δ∀x R(, δ, x) → ∀∀x∃δ R(, δ, x‬‬
‫הוכחה‪ :‬נראה ש־‪ ¬ϕ‬אינו ספיק‪.‬‬
‫‪¬ϕ ≡ ∃0 ∃x0 ∀∀δ 0 ∃δ∃x (R(, δ, x) ∧ ¬R(0 , δ 0 , x0 )) = ψ‬‬
‫נבצע סקולמיזציה של ‪:ψ‬‬
‫))‪α = Sk(ψ) = ∀∀δ 0 ∀x (R(, f (, δ 0 ), x) ∧ ¬R(a, δ 0 , b‬‬
‫כש־ ‪ f‬סימן פונקציה חדש ו־‪ a, b‬סימנים קבועים חדשים‪ .‬ממשפט סקולם‪ ¬ϕ :‬אינו ספיק אם ורק אם ‪ α‬אינו‬
‫ספיק‪.‬‬
‫‪ α‬פסוק אוניברסלי‪ .‬ממשפט הרברנד‪ α :‬לא ספיק אם ורק אם )‪ GrIns(α‬לא ספיקה‪.‬‬
‫תזכורת‪ :GrIns(α) :‬קבוצת הנוסחאות שמתקבלות מהצבת שמות עצם חסרי משתנים ל־∧ )‪R(, f (, δ 0 ), x‬‬
‫)‪ .¬R(a, δ 0 , b‬נרצה להראות )‪ GrIns(α‬אינה ספיקה‪.‬‬
‫משפט ‪ 12.6‬הקומפקטיות‬
‫אם )‪ GrIns(ψ‬אינה ספיקה‪ ,‬אז יש תת קבוצה סופית שלה שאינה ספיקה‪.‬‬
‫מהי קבוצת ש"ע חסרי המשתנים?‬
‫}‪{a, b, f (a, a), f (a, b), .., f (a, f (a, a)), ...‬‬
‫נתבונן ב־‬
‫)‪R(a, f (a, b), b) ∧¬R(a, b, b‬‬
‫‪{z‬‬
‫}‬
‫|‬
‫=‬
‫]‪ϕ0 [a/, b/δ0 , b/x‬‬
‫‪β‬‬
‫)‪R(a, f (a, f (a, b)) , a) ∧ ¬R(a, f (a, b), b‬‬
‫|‬
‫‪{z‬‬
‫}‬
‫=‬
‫]‪ϕ0 [a/, f (a,b)/δ0 , a/x‬‬
‫‪¬β‬‬
‫שני הפסוקים הנ"ל שייכים ל־)‪ GrIns(α‬ולכן היא לא ספיקה‪.‬‬
‫מסנקה‪ α :‬לא ספיקה ⇐ ‪ ¬ϕ‬לא ספיק ⇐ ‪ ϕ‬תקף‪.‬‬
‫תרגול ‪ 11‬־ ‪3.6.15‬‬
‫המשך הצרנות‬
‫‪13‬‬
‫‪13.0.0.31‬‬
‫הצרינו את הטענות הבאות מעל מילון מתאים‪:‬‬
‫‪ .1‬לכל קבוצה ‪ X‬קיימת קבוצה ‪ Y‬כך שעצמת ‪ Y‬גדולה מעצמת ‪.X‬‬
‫‪ .2‬לכל ‪ 2‬קבוצות ‪ X‬ו־ ‪ ,Y‬אם ‪ X‬מוכל ב־ ‪ Y‬אז עצמת ‪ X‬אינה גדולה מעצמת ‪.Y‬‬
‫‪ .3‬כל הקבוצות מוכלות ב־ ‪.V‬‬
‫‪ V .4‬אינה קבוצה‪.‬‬
‫מילון‪:‬‬
‫‪τ = hset(·), R(·, ·), S(·, ·), V i‬‬
‫כש־)‪ set(x‬אומר ש־‪ x‬קבוצה; ) ‪ R(X, Y‬אומר ש־‪ X‬מוכל ב־ ‪ S(X, Y ) ;Y‬אומר עצמת ‪ Y‬גדולה מעצמת ‪.X‬‬
‫‪.1‬‬
‫))))‪ϕ1 : ∀x (set(x) → (∃y (set(y) ∧ S(x, y‬‬
‫‪19‬‬
‫‪.2‬‬
‫)))‪ϕ2 : ∀x∀y ((set(x) ∧ set(y)) → (R(x, y) → ¬S(y, x‬‬
‫‪.3‬‬
‫)) ‪ϕ3 : ∀x (set(x) → R(x, V‬‬
‫‪.4‬‬
‫) ‪ϕ4 : ¬set(V‬‬
‫הוכיחו ‪ /‬הפריכו‪ :‬טענה ‪ 4‬נובעת לוגית מטענות ‪3‬־‪) 1‬אם כן‪ :‬בעזרת משפט הרברנד; אם לא‪ :‬דוגמה‬
‫‪13.0.0.32‬‬
‫נגדית(‬
‫נוכיח את הטענה‪ .‬ננרצה להראות ש־ ‪ .{ϕ1 , ϕ2 , ϕ3 } ϕ4‬מספיק להראות ש־} ‪ {ϕ1 , ϕ2 , ϕ3 , ¬ϕ4‬אינה ספיקה‬
‫)קל לראות שזה אמ"מ(‪.‬‬
‫שלב ‪ :1‬נעבור לפסוקים אוניברסליים‬
‫))))‪ϕ01 : ∀x (set(x) → (set(f (x)) ∧ S(x, f (x‬‬
‫‪ f‬סימן פונקציה חדש‪ .‬רוצים להראות ש־‬
‫})‬
‫‪{ϕ01 , ϕ2 , ϕ3 , set(V‬‬
‫=‪Σ‬‬
‫אינה ספיקה‪ .‬נסתכל על‬
‫)‪GrIns(α‬‬
‫[‬
‫= )‪GrIns(Σ‬‬
‫‪α∈Σ‬‬
‫ונמצא תתקבוצה לא ספיקה‪ .‬קבוצת שמות עצם ללא משתנים‪:‬‬
‫}‪{V, f (V ), f (f (V )), ...‬‬
‫נביט בקבוצה הבאה‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪set(V ) → (set(f (V )) ∧ S(V, f (V ))) ,‬‬
‫‪(set(f (V )) ∧ set(V )) → (R(f (V ), V ) → ¬S(V, f (V ))) ,‬‬
‫‪set (f (V )) → R (f (V ), V ) ,‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫) ‪set(V‬‬
‫הקבוצה הזו אינה ספיקה‪ ,‬ולכן )‪ GrIns(Σ‬לא ספיקה‪ ,‬ולכן )ממשפט הרברנד( ‪ Σ‬לא ספיקה‪.‬‬
‫‪14‬‬
‫בדיקת תקפות‬
‫‪14.0.0.33‬‬
‫תרגיל‪:‬‬
‫‪τ = hR(·, ·), P (·, ·), ci‬‬
‫הוכיחו ‪ /‬הפריכו‪ :‬קיים אלגוריתם שבהינתן פסוק ‪ ϕ‬מעל ‪ ,τ‬מהצורה‬
‫‪ϕ = ∀x1 ...∀xn ∃y1 ...∃yn α‬‬
‫כש־‪ α‬חסרת כמתים‪ ,‬מכריע האם ‪ ϕ‬תקף‪.‬‬
‫קיים אלגוריתם‪ .‬נוכיח‪:‬‬
‫בהינתן ‪ ,ϕ‬נבדוק האם ‪ ¬ϕ‬ספיק‪.‬‬
‫‪¬ϕ ≡ ∃x1 ...∃xn ∀y1 ...∀yn ¬α‬‬
‫אחרי סקולמיזציה‪:‬‬
‫] ‪β = ∀y1 ...∀yn (¬α) [c1/x1 , .., cn/xn‬‬
‫‪ β‬פסוק אוניברסלי ולכן הוא ספיק אם ורק אם )‪ GrIns(β‬ספיקה‪.‬‬
‫קבוצת שמות העצם ללא משתנים‪) {c, c1 , ..., cn } :‬קבוצה זו סופית! ־ אין סימני פונקציה(; לכן אפשר לבדוק‬
‫האם )‪ GrIns(β‬ספיקה ע"י מיצוי של כל ההצבות האפשריות‪.‬‬
‫‪20‬‬
‫‪15‬‬
‫תרגול ‪ 12‬־ ‪3.6.15‬‬
‫מילון עם סימן שוויון‬
‫‪15.0.0.34‬‬
‫תרגיל‪ σ = hR(·, ·), =, f1 (·), f2 (·, ·), ci :‬מילון )עם סימן שוויון(‪.‬‬
‫הגדרה ‪ 15.1‬מבנה ‪ M‬מעל ‪ σ‬הוא ממשי אם‪:‬‬
‫• ‪DM = R‬‬
‫• }‪RM = {(x, y) | x < y‬‬
‫• |‪f2M (x, y) = |x − y‬‬
‫• ‪cM = 0‬‬
‫א‪ .‬מצאו נוסחה ‪ ϕ‬עם משתנה חופשי ‪ ,x‬כך שמתקיים‪ :‬לכל מבנה ממשי ‪ M‬והשמה ‪ f1M ⇔ M, v ϕ ,v‬לא‬
‫רציפה ב־)‪v(x‬‬
‫תזכורת‪ :‬פונקציה ‪ f‬רציפה בנקודה ‪ a‬אם‪:‬‬
‫ < |)‪∀ > 0 ∃δ > 0 ∀b, |a − b| < δ ⇒ |f (a) − f (b‬‬
‫פתרון‪:‬‬
‫)))) ‪ϕ = ∃ (R(c, ) ∧ (∀δ (R(c, δ) → ∃y (R(f2 (x, y), δ) ∧ ¬R (f2 (f2 (x), f2 (y)),‬‬
‫ב‪ .‬הוכיחו שקיים פסוק ‪ ψ‬כך שלכל מבנה ממשי ‪ ⇔ M ψ ,M‬ל־ ‪ f1M‬יש בדיוק נקודת אי־רציפות אחת‪.‬‬
‫))‪ψ = ∃x (ϕ(x) ∧ ∀y (ϕ(y) → y = x‬‬
‫יהי ‪ M‬מבנה‪ ⇔ M ψ .‬לכל ‪ v‬קיים ‪.M, v [d/x] ϕ(x) ∧ ... ,d ∈ DM‬‬
‫ג‪ .‬הוכיחו‪ :‬לא קיים פסוק ‪ α‬כך שלכל מבנה ממשי ‪ M‬מתקיים‪ ⇔ M α :‬ל־ ‪ f1M‬יש מספר סופי של נקודות‬
‫אי־רציפות‪.‬‬
‫נרצה להשתמש במשפט הקומפקטיות‪.‬‬
‫תזכורת ־ משפט הקומפקטיות‪ Γ :‬קבוצת פסוקים; ‪ Γ‬ספיקה ⇔ כל תת קבוצה סופית של ‪ Γ‬ספיקה‪ .‬הוכחה‪:‬‬
‫נניח בשלילה שיש כזה פסוק ‪ .α‬לכל‪ :1 ≤ n ∈ NS‬נבנה פסוק ‪ ,ψn‬ש־ ‪ ⇔ M ψn‬ל־ ‪ f1‬יש לפחות ‪ n‬נקודות‬
‫אי־רציפות‪ .‬נביט בקבוצה } ‪.Γ {α} ∪ n∈N {ψn‬‬
‫‪ Γ‬אינה ספיקה כי אם ‪ M α‬אז קיים ‪ m‬מספיק גדול כך ש־ ‪.Γ 2 ψm‬‬
‫תהי ‪ Σ ⊂ Γ‬תת קבוצה סופית‪ .‬יהי ‪ k‬האינדקס המקסימלי ש־‪) ψk ∈ Σ‬אם אין כזה‪ .(k = 1 ,‬נבנה מודל ל־‪Σ‬‬
‫)שהוא מבנה ממשי‪.‬‬
‫ממשי; נגדיר את ‪ f1M‬להיות פונקציה עם בדיוק ‪ k‬נקודות אי־רציפות‪ .‬למשל‪f1M (a) = :‬‬
‫יהי ‪ M‬מבנה (‬
‫}‪1 a ∈ {1, 2, ..., k‬‬
‫‪0 else‬‬
‫אז‪ :‬מההנחה על ‪ .M α ,α‬בנוסף ‪ M ψm‬לכל ‪ m ≤ k‬ולכן ‪.M Σ‬‬
‫הראינו‪ Γ :‬לא ספיקה‪ ,‬וכל תת קבוצה סופית כן ספיקה ־ זוהי סתירה לקומפקטיות‪.‬‬
‫נשאר לבנות את ‪:ψn‬‬
‫‪‬‬
‫‪‬‬
‫‪n‬‬
‫^‬
‫^‬
‫∧ ) ‪ψn = ∃x1 ...∃xn  ϕ(xi‬‬
‫‪¬(xi = xj )‬‬
‫‪i=1‬‬
‫‪i6=j‬‬
‫‪21‬‬
‫מערכת הוכחה ‪HC‬‬
‫‪16‬‬
‫הגדרה ‪ 16.1‬אקסיומות למערכת הוכחה‬
‫‪α → (β → α) :A1‬‬
‫‪(α → (β → γ)) → ((α → β) → (α → γ)) :A2‬‬
‫‪(¬β → ¬α) → (α → β) :A3‬‬
‫‪ ∀x α(x) → α [t/x] :A4‬לכל שם עצם ‪ t‬החופשי להצבה ב־‪ x‬ב־‪α‬‬
‫‪ ∀x (ϕ → ψ) → (ϕ → ∀x ψ) :A5‬כאשר ‪ x‬אינו חופשי ב־‪ϕ‬‬
‫הגדרה ‪ 16.2‬כללי היסק‬
‫‪(α → β) , α‬‬
‫•‬
‫‪β‬‬
‫•‬
‫)‪ϕ(x‬‬
‫)‪∀x ϕ(x‬‬
‫‪16.0.0.35‬‬
‫‪MP‬‬
‫‪:‬‬
‫‪Gen :‬‬
‫תרגיל‪ :‬נגדיר מערכת חדשה ‪ :HC 0‬ע"י החלפת תבנית ‪ A5‬ואת הכלל ‪ Gen‬בכלל‪:‬‬
‫‪γ→α‬‬
‫‪γ → ∀x α‬‬
‫‪:‬‬
‫‪M‬‬
‫נוכיח‪ :‬לכל ‪` ϕ ⇔ ` ϕ :ϕ‬‬
‫‪HC 0‬‬
‫‪HC‬‬
‫הכיוון הקל‪ :‬להראות שאם ‪ ϕ‬יכיחה ב־ ‪ HC 0‬אז הוא יכיחה ב־‪) HC‬תרגיל(‪.‬‬
‫‪0‬‬
‫הכיוון השני‪ :‬נוכיח באינדוקציה על קבוצת הנוסחאות היכיחות שאם ‪ ϕ‬יכיחה ב־‪ HC‬אז ‪ ϕ‬יכיחה ב־ ‪.HC‬‬
‫כלומר‪ HC 0 ,‬מכילה את האקסיומות של ‪ HC‬וסגורה ל־‪.M P ,Gen‬‬
‫‪0‬‬
‫האקסיומות‪4 :‬־‪ 1‬־ ברור כי הן אקסיומות ב־ ‪ .HC 0‬נראה שאקסיומות ‪ 5‬יכיחה ב־ ‪.HC‬‬
‫טענה ‪ 16.3‬טענת עזר‪:‬‬
‫‪α → (β → γ) ` (¬ (α → ¬β)) → γ‬‬
‫‪HC 0‬‬
‫)‪(¬ (α → ¬β)) → γ ` α → (β → γ‬‬
‫‪HC 0‬‬
‫הוכחה‪ :‬לפי משפט השלמות לתחשיב הפסוקים )יש לנו את אקסיומות ‪3‬־‪ 1‬ואת ‪.(M P‬‬
‫הוכחה לאקסיומה ‪:5‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪∀x (ϕ → ψ) → (ϕ → ψ‬‬
‫‪(¬(∀x(ϕ → ψ)) → ¬ϕ) → ψ‬‬
‫‪(¬(∀x(ϕ → ψ)) → ¬ϕ) → ∀x ψ‬‬
‫)‪(∀x (ϕ → ψ)) → (ϕ → ∀x ψ‬‬
‫‪A4‬‬
‫)‪Above claim with (1‬‬
‫∈ ‪M, x‬‬
‫)·( ‪/ F V‬‬
‫)‪Above claim with (2‬‬
‫פעולות‪ HC 0 :‬סגורה ל־ ‪ M P‬מההגדרה‪ .‬נשאר להראות ש־ ‪ HC 0‬סגורה ל־‪ :Gen‬נניח ש־‪ ` α‬ונראה הוכחה‬
‫‪HC 0‬‬
‫∈ ‪.x‬‬
‫של ‪ . ` ∀x α‬יהי ‪ β‬פסוק‪/ F V (β) ,‬‬
‫‪HC 0‬‬
‫טענה ‪) ` β → β 16.4‬ממשפט השלמות לתחשיב הפסוקים(‬
‫‪HC 0‬‬
‫‪22‬‬
‫הוכחה של ‪:∀x α‬‬
‫תרגול‬
‫‪14.6.15‬‬
‫‪13‬‬
‫־‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪α → ((β → β) → α‬‬
‫‪α‬‬
‫)‪(3‬‬
‫)‪(4‬‬
‫)‪(5‬‬
‫)‪(6‬‬
‫‪(β → β) → α‬‬
‫‪A1‬‬
‫‪` α‬‬
‫‪HC 0‬‬
‫‪(β → β) → ∀x α‬‬
‫‪16.0.0.36‬‬
‫‪Assum.‬‬
‫‪M P1,2‬‬
‫‪M‬‬
‫)‪(β → β‬‬
‫‪Claim‬‬
‫‪∀x α‬‬
‫‪M P4,5‬‬
‫תרגיל‪ :‬הוכח או הפרך‬
‫‪ .1‬תהי ‪ Γ‬קבוצת פסוקים‪ α ,‬פסוק אם ‪ Γ‬עקבית ב־‪ HC‬אז לפחות אחת מבין }‪ Γ ∪ {α‬ו־}‪ Γ ∪ {¬α‬עקבית‬
‫ב־‪.HC‬‬
‫‪ .2‬אותו דבר אבל נוסחאות במקום פסוקים‪.‬‬
‫פתרון‪:‬‬
‫‪ .1‬נכון‪ .‬הוכחה‪:‬‬
‫משפט השלמות ‪ /‬הנאותות‪ Γ :‬עקבית ⇔ ל־‪ Γ‬יש מודל‪ .‬מההנחה ש־‪ Γ‬עקבית‪ :‬יש מבנה ‪ M‬ש־‪.M Γ‬‬
‫לכל השמה ‪ .M, v Γ ,v‬תהי ‪ v‬השמה כלשהי‪ .‬מתקיים‪ M, v α :‬או ‪.M, v ¬α‬‬
‫נניח ש־‪ .M, v α‬אז לכל השמה ‪ .M, v 0 α ,v 0‬מסקנה‪ .M α :‬כלומר‪.M Γ ∪ {α} :‬‬
‫אם ‪ M, v ¬α‬אז באופן דומה }‪ .M Γ ∪ {¬α‬מסקנה‪ Γ ∪ {¬α} :‬עקבית‪.‬‬
‫‪.2‬‬
‫})‪.α = R(y) ,σ = hR(·)i ,Γ = {∃x R(x), ∃x ¬R(x‬‬
‫‪ Γ‬עקבית‪ :‬יש ל־‪Γ‬מודל ‪ M‬שבו }‪= {0} ,DM = {0, 1‬‬
‫‪M‬‬
‫‪.R‬‬
‫באופן דומה‪ ,‬גם }‪ Γ ∪ {¬α‬אינה עקבית‪.‬‬
‫‪ 16.0.0.37‬תרגיל‪) :‬ממבחן( ‪ Γ‬קבוצת נוסחאות ו־‪ ϕ‬נוסחה‪ .‬נתון‪ ϕ :‬מסתפקת בכל מבנה שבו ‪ Γ‬מסתפקת‪.‬‬
‫הוכיחו ‪ /‬הפריכו‪:‬‬
‫‪ .1‬קיימת תת קבוצה סופית ‪ Γ0 ⊂ Γ‬שמקיימת‪ :‬בכל מבנה שבו ‪ Γ0‬נכונה‪ ,‬גם ‪ ϕ‬נכונה‪.‬‬
‫‪t‬‬
‫‪ .2‬קיימת תת קבוצה סופית ‪ Γ0 ⊂ Γ‬כך ש־‪.Γ0 ϕ‬‬
‫פתרון‪:‬‬
‫‪v‬‬
‫‪ .1‬הוכחה‪ :‬נתון‪ .Γ ϕ :‬ממשפט השלמות‪ .Γ ` ϕ ,‬תהי } ‪ {α1 , ..., αn‬הוכחה של ‪ ϕ‬מתוך ‪ ,Γ‬נסמן ב־ ‪ Γ0‬את‬
‫‪HC‬‬
‫קבוצת האיברים ב־‪ Γ‬שמופיעים בהוכחה‪.‬‬
‫}‪Γ0 = {αi | 1 ≤ i ≤ n, αi ∈ Γ‬‬
‫‪v‬‬
‫קיבלנו הוכחה של ‪ ϕ‬מתוך ‪ Γ0 ,Γ0‬סופית‪ .‬ממשפט הנאותות‪.Γ0 ϕ :‬‬
‫‪v‬‬
‫‪ .2‬דוגמה‪ :‬נבחר })‪ .ϕ = ∀x R(x) ,Γ = {R(x‬נראה ש־‪.Γ ϕ‬‬
‫יהי ‪ .M Γ‬כלומר )‪ M R(x‬לכל ‪ .RM = DM ⇐ M, v R(x) ,v‬לכן ‪ .M, v ϕ‬מסקנה ‪.M ϕ‬‬
‫‪t‬‬
‫
‬
‫‬
‫נראה שאין ‪ Γ0 ⊂ Γ‬כך ש־‪ .Γ0 ϕ‬מקרה ראשון‪ .Γ0 = ∅ :‬עבור ‪,DM = {0} ,M = DM , RM‬‬
‫∅ = ‪ .RM‬מתקיים ∅ ‪ M‬אבל ‪.M 2 ϕ‬‬
‫מקרה שני‪ .Γ0 = Γ = {R(x)} :‬נראה מבנה ‪ M‬והשמה ‪ v‬כך ש־‪ M, v Γ‬אבל ‪,DM = {0, 1} .M, v 2 ϕ‬‬
‫}‪ RM = {0‬ו־‪ v‬השמה כך ש־‪.v(x) = 0‬‬
‫מסקנה‪ :‬הטענה לא נכונה‪.‬‬
‫‪23‬‬
‫‪ 16.0.0.38‬תרגיל‪:‬‬
‫אקסיומות‪:‬‬
‫נגדיר מערכת הוכחה חדשה ‪ N‬עבור לוגיקה מסדר ראשון‪:‬‬
‫‪α → (β → α) :A1‬‬
‫‪(α → (β → γ)) → ((α → β) → (α → γ)) :A2‬‬
‫‪(¬α → ¬β) → (β → α) :A3‬‬
‫‪ ∀x α(x) → α [t/x] :A4‬לכל שם עצם ‪ t‬החופשי להצבה ב־‪ x‬ב־‪α‬‬
‫כללי היסק‪ .M P :‬תהי ‪ Γ‬קבוצת פסוקים אוניברסלית שאינה ספיקה‪ .‬הוכיחו‪ :‬קיימת סתירה היכיחה מ־‪ Γ‬ב־ ‪.N‬‬
‫∈ ‪.x‬‬
‫תזכורת‪ ∀x (ϕ → ψ) → (ϕ → ∀x ψ) :‬כש־)‪/ F V (ϕ‬‬
‫תזכורת ־ משפט הרברנד‪ Γ :‬ספיקה ⇔ ‪ Γ‬ספיקה במבנה הרברנד ⇔ )‪ GrIns(Γ‬ספיקה ⇔ )‪GrIns(Γ‬‬
‫ספיקה במבנה הרברנד‪.‬‬
‫נסמן‪ Γ0 ;Γ0 = GrIns(Γ) :‬לא ספיקה‪.‬‬
‫ממשפט הקומפקטיות‪ :‬יש תת קבוצה סופית ‪ Γ00 ⊂ Γ0‬לא ספיקה‪.‬‬
‫טענה ‪ 16.5‬אפשר להוכיח ב־ ‪ N‬כל פסוק ב־ ‪ Γ00‬מתוך ‪.Γ‬‬
‫איך? ע"ׁי הפעלה של אקסיומה ‪ .4‬דוגמה‪ α ,ϕ = ∀x1 ...∀xn α :‬חסרת כמתים‪ t .‬שם עצם חסר משתנים‪ .‬נכתוב‬
‫הוכחה ל־] ‪∀x2 ...∀xn α [t/x1‬‬
‫)‪(1‬‬
‫)‪(2‬‬
‫)‪(3‬‬
‫] ‪∀x1 ..∀xn α → ∀x2 ...∀xn α [t/x1‬‬
‫‪ϕ‬‬
‫] ‪∀x2 ...∀xn α [t/x1‬‬
‫‪A4‬‬
‫‪Assum.‬‬
‫‪M P1,2‬‬
‫נחליף כל נוסחה אטומית ב־ ‪ Γ00‬במשתנה פסוקי חדש ‪ .pi‬נקבל קבוצה ‪ˆ 00‬‬
‫‪ Γ‬בתחשיב הפסוקים שאינה ספיקה‪.‬‬
‫בפרט‪ˆ 00 ` ¬ (p0 → p0 ) :‬‬
‫‪) Γ‬משפט השלמות עבור ‪.(HP C‬‬
‫‪HP C‬‬
‫נתרגם בחזרה ונקבל ש־)‪ Γ00 ` ¬(α → α‬עבור נוסחה ‪ .α‬מסקנה‪.Γ ` ¬(α → α) :‬‬
‫נכתוב הוכחה של )‪ ¬(α → α‬מתוך ‪ .Γ00‬לכל פסוק מ־ ‪ Γ00‬שמופיע בהוכחה‪ .‬נחליף נחליף אותו בסדרת ההוכחה‬
‫מתוך ‪.Γ‬‬
‫הוכיחו ‪ /‬הפריכו‪ :‬קיים אלגוריתם ‪ A‬שבהינתן פסוק ‪ ϕ‬מחזיר פסוק ‪ ϕ0‬כך ש־ ‪ ϕ0‬תקף אם ורק אם‬
‫‪16.0.0.39‬‬
‫‪ ϕ‬ספיק‪.‬‬
‫נוכיח שאין כזה אלגוריתם‪ .‬נראה שלו היה אלגוריתם ‪ A‬כנ"ל‪ ,‬היה אלגוריתם ‪ A0‬שמכריע ספיקות של פסוק‪.‬‬
‫פרוצדורה לבדיקת ספיקות‪ :‬מקבלת ‪ .ϕ‬נעשה סקולמיזציה ומסתכלים על קבוצת ה־‪ .GrIns‬מטרה‪ :‬לחפש‬
‫תת קבוצה סופית לא ספיקה‪ .‬אם מצאנו‪ ,‬מכריזים לא ספיק‪ ,‬אחרת ממשיכים‪ .‬הוכחה‪ :‬נניח שיש אלגוריתם כנ"ל‪.‬‬
‫בהינתן פסוק ‪ ,ϕ‬נריץ את ‪ A‬ונקבל ‪ ϕ0‬שתקף אם ורק אם ‪ ϕ‬ספיק‪.‬‬
‫נסתכל על ‪ ϕ0 ⇔ ϕ : ¬ϕ0‬תקף ⇔ ‪ ¬ϕ0‬לא ספיק‪.‬‬
‫‪0‬‬
‫נריץ את הפרוצדורה לבדיקת ספיקות על ‪ ¬ϕ0 .¬ϕ0‬לא ספיק ⇐ הפרוצדורה עוצרת ואומרת ‪ ¬ϕ‬לא ספיק‪.‬‬
‫אם כן ספיק ⇐ ממשיכים לרוץ‪.‬‬
‫האלגוריתם ‪ :A0‬יריץ את הפרוצדורה לבדיקת ספיקות על ‪ ¬ϕ0 ,ϕ‬במקביל‪ .‬אם ‪ ϕ‬ספיק אז נמצא תת קבוצה‬
‫סופית של ) ‪ GrIns(¬ϕ0‬ונעצור‪.‬‬
‫אם ‪ ϕ‬לא ספיק ⇐ נמצא תת קבוצה סופית של ))‪ GrIns(Sk(ϕ‬ונעצור‪.‬‬
‫‪24‬‬