תחשיב הפסוקים – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
ביטול גרסה 34786267 של ברק דיבה (שיחה) – יש ערך נפרד על תחשיב הפרדיקטים
תגיות: תו כיווניות מפורש ביטול
הסרת תווים בלתי נראים
שורה 1:
ב[[לוגיקה]] וב[[לוגיקה מתמטית]], '''תחשיב פסוקים''' (ב[[אנגלית]]: Propositional calculus, Propositional logic או Sentential calculus) הוא מערכת מובנית ([[פורמליזם (מתמטיקה)|פורמליסטית]]), המאפשרת לייצג את [[קשר לוגי|הקַשַּרים הלוגיים]] בין [[ערך אמת|ערכי האמת]] של [[פסוק (לוגיקה מתמטית)|פסוקים לוגיים]] שונים, ו[[היסק|להסיק]] את [[תקפות (לוגיקה)|תקפותן ההגיונית (לוגית)]] של [[טענה|טענות]].
== התחשיב וגבולותיו ==
בדוגמה להלן כל שורה היא נוסחה 'בנויה כהלכה', והמסקנה לפי כללי תחשיב הפסוקים היא חד משמעית:
שורה 6:
:א. '''אם''' החֶרֶק הוא נמלה, '''אזי''' הוא חי בתל נמלים.
:ב. החֶרֶק הנבדק '''הוא''' נמלה.
:מסקנה חד משמעית: החֶרֶק הנבדק חי בתל נמלים.
 
תחשיב הפסוקים אינו מתחשב בתוכן הפסוקים אלא אך ורק בתוקף הפסוק (ערך האמת שבו, היותו תקף או כוזב) וּתְּקֵיפוּת חלקיו. תחשיב הפסוקים אינו עוסק, לפיכך, בשאלה כיצד נקבעת אמיתות הפסוקים האטומיים, אלא בשאלה כיצד נקבע ערך האמת של פסוקים מורכבים יותר, המורכבים ממספר פסוקים אטומיים באמצעות [[קשר לוגי|קַשַּרים לוגיים]]. ערך האמת של הפסוקים האטומיים יכול להיקבע על ידי המשמעות (הפירוש [[סמנטיקה|הסמנטי]]) שאנו נותנים לאותיות הפסוקיות. לדוגמה, אם נרשום:
::'''אם א' - אזי ב''''.
:- נוכל לתת לאות א' את הערך 'אמת', ואזי ינבע מהפסוק שגם ב' מקבל את הערך 'אמת'.
:- נוכל לתת לאות א' את הערך 'שקר', ובמקרה זה פסוק ב' יוכל לקבל את הערך 'שקר' או את הערך 'אמת'.
במקרה הראשון, נוכל להחליף את המשתנה בערך בעל משמעות, אשר יהיה תקף בתנאֵי הבדיקה. לדוגמה, למשתנה א' ניתן את הערך "עכשיו צהריים" ותנאי הבדיקה יהיו שאכן מדובר בבדיקה הנעשית בשעת הצהריים. למשתנה ב' נבחר משמעות המקיימת את המשפט באופן שהפסוק כולו תקף, לדוגמה: "השמש מופיעה בשיא הגובה". יודגש שתהליך תחשיב הפסוקים אינו עוסק בנכונות הטענות, אלא רק במסקנה המתקבלת '''אם''' נכונים כל חלקיה.
 
אולם ניתן גם לדון בטענות כנוסחאות עם משתנים, בלי לפרט דוגמאות למשמעותם של המשתנים. ניתן לבחון כך את כלל היחסים האפשריים בין הטענות המורכבות, עבור כל הצבה של ערכי אמת לאותיות הפסוקיות המשמשים כ'משתנים'.
 
במקרה של הדוגמה שלנו:
:- נוכל להשאיר את א' כ''משתנה'', ובהתאם לכל ערך שהוא יקבל - בין אם הערך 'אמת' ובין אם 'שקר', נוכל לדעת על הערך ב'.
 
באמצעות הכללה כזו ניתן לקבוע כי טיעונים הם [[תקפות (לוגיקה)|תקפים]], כאשר עבור כל הצבה של ערכי אמת לפסוקים האטומיים המרכיבים את ההנחות, אם בעקבות הצבה כזו ההנחות של הטיעון תְקֵיפות, הרי שגם המסקנה תְקֵיפה.
 
'''דוגמה לבדיקת תקפות טיעונים על פי הכללה''':
:הנחה א: '''א'''' כלשהו '''קיים''' בתוך '''ר''''
:הנחה ב: '''אם''' ב' קיים בתוך ר' '''אזי''' אפשר לערוך את ב'.
:טענה ט: אפשר לערוך את א'.
במקרה זה, באמצעות תחשיב הפסוקים, ניתן להסיק באופן חד משמעי וכוללני שטענה ט' תהיה תקיפה לגבי כל קבוצת משתנים (א' ב' ו-ר') שלגביהם הנחה א' והנחה ב' תקפים.
 
שורה 30:
=== הצרנה (פורמליזציה) ===
 
הצרנה (מלשון צורה) או תיבנות של תחשיב פסוקים, היא תהליך העברת ההנחות והטענות הלוגיות לכיתוב תבניתי, במבנה מוסכם ([[פורמליזם (מתמטיקה)|פורמליסטי]]), דמוי סימני החשבון.
 
הסמנטיקה (מבנה המשמעות) של תחשיב הפסוקים מורה לנו כיצד עלינו להבין את היחס בין הסמלים המייצגים פסוקים שונים, ובין הטענות שהם מייצגים. כאשר מעוניינים לנתח טיעון או הוכחה כלשהי באמצעות תחשיב הפסוקים, ראשית יש לערוך '''הצרנה''' להנחות ולטענות. בתהליך זה מסמנים כל [[משפט (בלשנות)|משפט]] בסיסי (למשל 'השמש תזרח מחר' או 'יוסי גר בלונדון') בסימן קבוע (בדרך כלל אות אנגלית גדולה כמו <math>P</math> או <math>Q</math>, או הסימן <math>P_i</math> עם האינדקס <math>i</math>, המייצג מספר מסוים). סימן זה מייצג את הטענה בכל מקום שתופיע בטיעון, והוא מכונה "פסוק יסודי", או "פסוק אטומי". גם הקָשַרים הלוגיים אינם נכתבים בתחשיב הפסוקים במילים אלא באמצעות סימונים מוסכמים, כפי שיוסבר להלן:
שורה 37:
 
תחשיב פסוקים מסוים כולל קבוצה של '''פסוקים יסודיים''' או "פסוקים אטומיים", ומספר קָשַרים לוגיים סטנדרטיים. לדוגמה, נגדיר ש-<math>P</math> מייצג את הטענה "הגביע הוא שלנו", ו-<math>Q</math> מייצג את הטענה "אנחנו במפה"'. או אז ניתן להדגים את התחביר של חמשת הקשרים הלוגיים כך:
:'''שלילה''': <math>\neg</math> - זהו קשר אונרי, דהיינו הוא מקושר לאות פסוקית אחת בלבד. לדוגמה, <math>\neg P</math> מייצג את "הגביע הוא לא שלנו".
:'''הֵלחֵם''', או: '''קוֹנְיוּנְקְצִיָּה''' ("וגם"): <math>\land</math> או & - קשר בינארי, מקשר בין שני פסוקים. לדוגמה, הפסוק המורכב <math>P \land Q</math> מייצג את הטענה "הגביע הוא שלנו ואנחנו על המפה".
:'''ניתוק''' או '''דִיסְיוּנְקְצִיָּה''' ("או"): <math>\vee </math> - קשר בינארי, מקשר בין שני פסוקים. לדוגמה, הפסוק המורכב <math>P \vee Q</math> מייצג את הטענה "הגביע הוא שלנו או אנחנו על המפה".
:'''תנאי''' ("אם-אז"): <math>\to</math> - קשר בינארי, מקשר בין שני פסוקים. לדוגמה, הפסוק המורכב <math>P \to Q</math> מייצג את הטענה "אם הגביע הוא שלנו אזי אנחנו על המפה".
:'''תנאי כפול''' ("אם-ורק-אם", נקרא גם: "אך ורק אם"): <math>\leftrightarrow</math> - קשר בינארי, מקשר בין שני פסוקים. לדוגמה, הפסוק המורכב <math>P \leftrightarrow Q</math> מייצג את הטענה "הגביע הוא שלנו אם ורק אם אנחנו במפה".{{הערה|1=הביטוי העברי 'תנאי כפול' הוא מונח תלמודי משפטי, הנלמד מהחוזה התנ"כי בין משה לבין בני גד ובני ראובן, טרם הכניסה לארץ ישראל.}}
 
=== נוסחה בנויה כהלכה (נוסחה בנויה היטב) ===
שורה 51:
* אם <math>A</math> ו-<math>B</math> נוסחאות בנויות היטב, אז לכל קשר <math>\Omega</math> כך ש <math>\Omega \in \{ \to,\land,\vee,\leftrightarrow \}</math>, הרי ש <math>(A \,\Omega\, B)</math> היא נוסחה בנויה היטב (דהיינו עבור כל שתי נוסחאות בנויות היטב, הצבתו של אחד מן הקשרים הבינריים ביניהן יוצרת נוסחה בנויה היטב).
* כל דבר אחר איננו נוסחה בנויה היטב.
* רצפים חסרי מובן כמו <math>(\to A \neg B)</math> אינם פסוקים, ואינם עונים על ההגדרה הרקורסיבית.
בניסוח הפורמלי של תחשיב הפסוקים, קיים [[אלגוריתם]] מסודר וסופי המזהה אם רצף סימנים מסוים הוא פסוק או לא.
 
יש לשים לב שהסוגריים חיוניים בדרך כלל, אם כי ניתן ומקובל להשמיט את זוג הסוגריים החיצוניים ביותר.
 
אפשר לבנות סוגים שונים של תחשיבי פסוקים, באמצעות בחירה שונה של הקשרים המשתתפים. לדוגמה, אפשר להחליף את הקשר "אם <math>a</math> אז <math>b</math>" ב-"<math>b</math> או (לא <math>a</math>)", וכך להגדיר את הקשר 'אם-אז' באמצעות הקשרים "או" ו"לא". [[כללי דה-מורגן]] מאפשרים לוותר על אחד משני הקשרים "או" או "וגם".
שורה 60:
=== תחשיב פסוקים שלם (קבוצת קשרים שלמה) ===
 
'''תחשיב פסוקים שלם''' (או '''קבוצת קשרים שלמה''') הוא קבוצת קשרים, שכפסוק אפשר להציג באמצעותה כל [[פעולה בוליאנית]], או כל טבלת אמת (ר' להלן).
 
ישנם שני קשרים, שכל אחד מהם מהווה בעצמו "תחשיב פסוקים שלם", והם מכונים "הקשרים של שפר". קשרים אלו הם הקשרים "לא-וגם" ([[NAND לוגי|NAND]]) ו"לא-או" ([[NOR לוגי|NOR]]). התחביר הפורמלי של תחשיב הפסוקים המתמטי מתבסס על שני קשרים בלבד, "אם-אז" ו"לא" – כל שאר הקשרים מוגדרים כקיצורים של ביטויים הבנויים מקשרים בסיסיים אלו.
שורה 66:
=== הנחות יסוד (אקסיומות) וכללי היסק ===
 
הוגה הדעות והלוגיקאי פרופסור יאן לוּקאסייביץ' מ[[אוניברסיטת לבוב]], גילה מערכת אקסיומטית (מערכת הנחות יסוד) פשוטה בעלת שני קשרים בלבד: קשר גרירה וקשר שלילה, המהווה תחשיב פסוקים שלם:
 
שלוש הנחות יסוד - [[אקסיומה|אקסיומות]] מן הצורה הבאה:
 
# <math>(p \to (q \to p))</math>
שורה 75:
 
[[כלל היסק]] אחד, [[מודוס פוננס]] (קיומו של תנאי ונביעת טענה מקיומו של התנאי), המוגדר כך:
:מ-<math>p</math>
:ומ-<math>(p \to q)</math>
:הסק: <math>q</math>
 
במערכת זו הקשרים הקלאסיים האחרים, מלבד תנאי ושלילה, מוגדרים כך:
:<math>a \lor b</math> מוגדר כ- <math>\neg a \to b</math> (ובדומה, <math>\neg a \lor \neg b</math> מוגדר כ- <math>a \to \neg b</math>)
:<math>a \land b</math> מוגדר כ- <math>\neg(a \to \neg b)</math>
:<math>a \leftrightarrow b</math> מוגדר כ- <math>\neg((a \to b) \to \neg (b \to a))</math>
שורה 86:
'''דוגמה להוכחה'''. ניתן להוכיח מהמערכת הזו בקלות ש <math>a \to a</math>, כך:
 
'''(1)''' <math>(a\to((a\to a)\to a))\to ((a\to(a\to a))\to (a\to a)) </math>
 
'''(1)''' <math>(a\to((a\to a)\to a))\to ((a\to(a\to a))\to (a\to a)) </math>
::::::::::::::::::::::::אקסיומה 2 בו הצבנו <math>r=a, p=a</math> ו <math>q=(a\to a)</math>
'''(2)''' <math>a\to((a\to a)\to a)</math>
::::::::::::::::::::::::אקסיומה 1 בו הצבנו <math>q=(a\to a), p=a</math>
'''(3)''' <math>(a\to(a\to a))\to(a\to a)</math>
::::::::::::::::::::::::[[מודוס פוננס]] על שורות 1 ו-2.
'''(4)''' <math>a\to(a\to a)</math>
::::::::::::::::::::::::אקסיומה 1 בו הצבנו <math>p=a, q=a</math>
'''(5)''' <math>a\to a</math>
::::::::::::::::::::::::מודוס פוננס על שורות 3 ו-4: מש"ל.
 
שורה 101 ⟵ 100:
{{הפניה לערך מורחב|טבלת אמת}}
 
במסגרת הסמנטיקה (ניתוח המשמעות) המקובלת של תחשיב הפסוקים, כל פסוק יסודי יכול לקבל אחד משני [[ערך אמת|ערכי אמת]]: "אמת" או "שקר", ובלבד שהוא מקבל את אותו ערך בכל הופעה שלו באותו טיעון. כל קשר לוגי מובן כ[[פונקציה|פונקציית]]-אמת, אשר עבור כל צירוף של ערכי אמת, מחזיר הקשר ערך אמת אחד ויחיד.
 
לדוגמה, השלילה מחזירה פסוק שקרי עבור כל פסוק אמיתי אליו היא מקושרת, ומחזירה פסוק אמיתי עבור כל פסוק שקרי אליו היא מקושרת. נוח לייצג פונקציות אמת באמצעות [[טבלת אמת]], בהן T ו-F מייצגים את הערכים אמת ושקר (ב[[אלגברה בוליאנית]] יוחלפו אלו בערכים 1 עבור אמת ו-0 עבור שקר). בטורים הימניים של הטבלה אנו ממצים את כלל הצירופים האפשריים של ערכי האמת הניתנים לפסוקים היסודיים, ובטורים השמאליים אנו מציגים את ערך האמת המתקבל עבור הפסוק המורכב:
 
 
{|align="center" border="0" cellpadding="8"
 
|טבלת האמת של שלילה
{| border="1" cellpadding="3"
! | <math> P </math> || <math> \neg P </math>
|-align="center"
| F || T
שורה 118 ⟵ 116:
|}
 
|טבלת האמת של התנאי
{| border="1" cellpadding="3"
! | <math> P </math> || <math> Q </math> ||<math>P \to Q</math>
|-align="center"
שורה 133 ⟵ 131:
 
|טבלת האמת של הקוניונקציה - ההֶלחֵם
{| border="1" cellpadding="3"
! | <math> P </math> || <math> Q </math> ||<math>P \land Q</math>
|-align="center"
שורה 147 ⟵ 145:
 
|טבלת האמת של הדיסיונקציה - הניתוק
{| border="1" cellpadding="3"
! | <math> P </math> || <math> Q </math> ||<math>P \vee Q</math>
|-align="center"
שורה 160 ⟵ 158:
|}
|טבלת האמת של התנאי הכפול
{| border="1" cellpadding="3"
! | <math> P </math> || <math> Q </math> ||<math>P \leftrightarrow Q</math>
|-align="center"
שורה 181 ⟵ 179:
 
=== טבלאות אמת ככלי לבדיקת תקפות טיעונים ===
[[טבלת אמת|טבלאות אמת]] הן כלי נוח לשם בדיקת [[תקפות (לוגיקה)|תקפותם]] של טיעונים ([[היסק]]ים) בתחשיב הפסוקים. הטכניקה של טבלאות אמת מאפשרת לבטא את ערכי האמת של כל פסוק מורכב במונחי ערכי האמת של הפסוקים המרכיבים אותו, וכאשר הטבלה מלאה, ניתן לבדוק אם ישנם מצבים בהם הנחות הטיעון אמיתיות אבל המסקנה שקרית. אם יש שורה כזו בטבלה, הרי שהטיעון אינו תקף, שהרי זו מהווה דוגמה נגדית. אולם אם אין שורה כזו, הראנו שהטיעון תקף.
 
לדוגמה, לבדיקת תקפות הטיעון:
שורה 188 ⟵ 186:
# אם השמש זורחת האגם אינו קפוא
מסקנה: הברווזים לא עפים
 
 
יוצרנו הפסוקים האטומים על פי הלקסיקון (מילון תמציתי) הבא:
שורה 194 ⟵ 191:
: <math>Q</math>: האגם קפוא
: <math>R</math>: הברווזים עפים
 
 
הטיעון המוצרן נכתב כך:
שורה 200 ⟵ 196:
# <math>P \to \neg Q</math>
מסקנה: <math>\neg R</math>
 
 
וטבלת האמת שלו היא:
 
{| border="1" cellpadding="3"
! | || <math> P </math> || <math> Q </math> || <math> R </math>||<math>P \land (Q \to R)</math> ||<math>P \to \neg Q</math>||<math>\neg R</math>
|-align="center"
| 1 || T || T || T || T || F || F
|-align="center"
| 2 || T || T || F || F || F || T
שורה 225 ⟵ 220:
|}
 
על פי ההצבה של שורה שלוש בטבלה, ברור ששתי ההנחות אמיתיות אבל המסקנה שקרית. זו מהווה דוגמה נגדית, ועל כן הטיעון אינו תקף.
 
על פי ההצבה של שורה שלוש בטבלה, ברור ששתי ההנחות אמיתיות אבל המסקנה שקרית. זו מהווה דוגמה נגדית, ועל כן הטיעון אינו תקף.
 
== מערכות הוכחה ==
 
לתחשיב הפסוקים אפשר 'לבנות' מערכות הוכחה המוכיחות טענות נוספות הנובעות מקבוצת טענות ראשונית. מערכות היסק כאלה בנויות מכללים תחביריים (סינטקטיים) טכניים בלבד.
 
מערכת ההוכחות הפשוטה ביותר לתחשיב פסוקים היא מערכת [[מערכת דדוקציה טבעית|דדוקציה טבעית]], המכילה עשרה כללי היסק. עבור כל אחד מחמשת הקשרים היא מכילה '''כלל הבאה''' (נקרא גם '''כלל הכנסה''' או '''אינטרודוקציה''') ו'''כלל סילוק''' (נקרא גם '''כלל הוצאה''' או '''אלימינציה''').
 
מערכת זו היא '''נאותה''' - כלומר, כל נוסחה שניתנת להוכחה, היא אמיתית, ו'''שלמה''' - כלומר, כל נוסחה אמיתית גם ניתנת להוכחה מקבוצה זו במערכת.
 
=== דוגמאות למערכות הוכחה ===
שורה 240 ⟵ 234:
דוגמה ל'''כלל הבאה''' (כלל הכנסה - אינטרודוקציה) להקשר של פסוק התנאי:
 
::<math>\ P</math>
:: <math>\ Q</math>
––––––––––––––––––––––––
::<math>\ P\rarr Q</math>
 
 
 
דוגמה ל'''כלל סילוק''' (כלל הוצאה - אלימינציה) להקשר של פסוק ההלחם (הקוניונקציה):
 
::<math>\ P \land Q</math>
––––––––––––––––––––––––
::<math>\ P </math>
 
== ראו גם ==
 
== ראו גם ==
* [[תחשיב הפרדיקטים]]
* [[שפה מסדר ראשון]]