88-195 בדידה לתיכוניסטים תשעא/מערך שיעור/שיעור 0: הבדלים בין גרסאות בדף

מתוך Math-Wiki
שורה 74: שורה 74:


==== פסוקים מורכבים ====
==== פסוקים מורכבים ====
פסוקים יכולים להיות מורכבים יותר מאשר האטומים או חיבור של אטומים ע"י קשרים. המורכבות נוצרת ע"י הפעלה חוזרת של קשרים. במילים אחרות, נתייחס לכל אחד מהבאים כפסוק: א. אטומים ב. אם <math>p,q</math> פסוקים אזי <math>(p)\land (q),(p)\lor (q), (p)\to (q0</math> פסוקים. ג. אם <math>p</math> פסוק אזי <math>\lnot (p)</math> פסוקים.
פסוקים יכולים להיות מורכבים יותר מאשר האטומים או חיבור של אטומים ע"י קשרים. המורכבות נוצרת ע"י הפעלה חוזרת של קשרים. במילים אחרות, נתייחס לכל אחד מהבאים כפסוק: א. אטומים ב. אם <math>p,q</math> פסוקים אזי <math>(p)\land (q),(p)\lor (q), (p)\to (q)</math> פסוקים. ג. אם <math>p</math> פסוק אזי <math>\lnot (p)</math> פסוקים.


תכונות הקשרים: לכל שלוש פסוקים <math>A,B,C</math> מתקיים כי:
תכונות הקשרים: לכל שלוש פסוקים <math>A,B,C</math> מתקיים כי:

גרסה מ־13:39, 7 ביולי 2019

חזרה למערכי התרגול


סיכום הנושא המלא נמצא בדף 88-101 חשיבה מתמטית.

פסוקים וקַשָּרִים, פרדיקטים וכַּמָּתִים, הצרנה וטבלאות אמת

אטומים, פסוקים וקשרים

הגדרה (לא פורמאלית): השפה העברית מורכבת ממשפטים. המקבילה בשפה המתמטית נקראת "פסוק".האטומים הם חלק מאבני היסוד של הפסוקים. לדוגמא: הפסוק "שנת הלימודים החלה ויש 5 קורסים בשנה א'" מורכב משני אטומים- "שנת הלימודים החלה" ו"יש 5 קורסים בשנה א'" (שני האטומים מקשורים ע"י וו החיבור)

בצורה אחרת: אטומים הם יחידה תוכן בסיסית. פסוקים הם יחידות יותר מורכבות המורכבות מאטומים וקשרים. אטום מקבל ערך אמת TRUE ויסומן ב T או 1 (כלומר הוא אמיתי) או ערך אמת FALSE ויסומן ב F או 0 (כלומר הוא שקרי). פסוקים יקבלו ערך אמת לפי ערכי האמת של האטומים והקשרים המעורבים בפסוק.

כפי שציינו פסוקים הם יחידות תוכן יותר מורכבות בשל השימוש בקשרים.

קשרים

הגדרה: יהיו A,B אטומים (או פסוקים) היכולים להיות אמת (1) או שקר (0) אזי הקשרים

  • [math]\displaystyle{ A\to B }[/math] - "גרירה" (חד כיוונית)
  • [math]\displaystyle{ A \or B }[/math] "או"
  • [math]\displaystyle{ A\and B }[/math] "וגם"
  • [math]\displaystyle{ \neg A }[/math] "שלילה"

מוגדרים ע"י טבלאת האמת הבאה (טבלת שכל שורה בה מתאימה להצבה אחרת אחרת באטומים):

[math]\displaystyle{ \neg A }[/math] [math]\displaystyle{ A\and B }[/math] [math]\displaystyle{ A \or B }[/math] [math]\displaystyle{ A \to B }[/math] [math]\displaystyle{ B }[/math] [math]\displaystyle{ A }[/math]
1 0 0 1 0 0
1 0 1 1 1 0
0 0 1 0 0 1
0 1 1 1 1 1

הערה: קשר נוסף שהינו נפוץ בתחום המתמטקיה והוא גרירה דו-כיוונית (ידוע בכינויו אם ורק אם, אמ"מ). הגדרתו פשוטה (נובעת משמו..) והיא מוגדרת ע"י קשר הגרירה החד כיווני. [math]\displaystyle{ A\leftrightarrow B }[/math] שטבלת האמת שלו זהה לטבלת האמת של [math]\displaystyle{ (A\to B)\and(B\to A) }[/math]

דוגמאות מילוליות:

  • אם נסיים את החומר של השיעור אז נגמור מוקדם. אם נסיים את החומר וגם לא נגמור מוקדם אז הפסוק יקבל ערך F. אם לא נסיים את החומר וגם לא נגמור מוקדם אז הפסוק יקבל ערך T.
  • אינדוקציה לומדים בתיכון וגם זה קל. הפסוק יקבל ערך T רק אם האטומים המרכיבים אותו יקבלו ערך T (כלומר שניהם יתקיימו)
  • 3 הוא מספר ראשוני או 5 הוא מספר ראשוני. הפסוק הזה מקבל ערך T כיוון ש 3/5 מספר ראשוני. גם הפסוק "3 הוא מספר ראשוני או 4 הוא מספר ראשוני" הוא בעל ערך T.
  • מספר (טבעי) מסוים n ניתן להצגה בעזרת 2 ספרות (בבסיס עשרוני) [math]\displaystyle{ \iff }[/math] המספר n קטן מ 100. הפסוק יקבל ערך T רק אם שני התנאים יתקיימו ביחד. במילים אחרות, אם אחד מתקיים גם השני. במילים אחרות, אם אחד לא מתקיים אז השני גם לא מתקיים.


פסוקים מורכבים

פסוקים יכולים להיות מורכבים יותר מאשר האטומים או חיבור של אטומים ע"י קשרים. המורכבות נוצרת ע"י הפעלה חוזרת של קשרים. במילים אחרות, נתייחס לכל אחד מהבאים כפסוק: א. אטומים ב. אם [math]\displaystyle{ p,q }[/math] פסוקים אזי [math]\displaystyle{ (p)\land (q),(p)\lor (q), (p)\to (q) }[/math] פסוקים. ג. אם [math]\displaystyle{ p }[/math] פסוק אזי [math]\displaystyle{ \lnot (p) }[/math] פסוקים.

תכונות הקשרים: לכל שלוש פסוקים [math]\displaystyle{ A,B,C }[/math] מתקיים כי:

  • קיבוציות [math]\displaystyle{ (A\land B) \land C =A\land (B \land C), (A\lor B) \lor C =A\lor (B \lor C) }[/math]
  • חילופיות [math]\displaystyle{ A\land B =B\land A, A\lor B = B\lor A }[/math]
  • פילוג [math]\displaystyle{ A\lor (B\land C)= (A\lor B)\land (A\lor C), A\land (B\lor C)= (A\land B)\lor (A\land C) }[/math]
  • כללי דה מורגן [math]\displaystyle{ \neg (A \lor B) = \neg A \land \neg B, \neg (A \land B) = \neg A \lor \neg B }[/math]. תוכיחו אחד מהם בתרגיל הבית

הצרנה

הצרנה- כתיבת רעיון בעזרת ניסוח פורמאלי

דוגמא: נצרין את המשפט: "אם יש בגרות בשעה חופפת לקורס אז הוא מתבטל ". נגדיר [math]\displaystyle{ A }[/math] = יש בגרות בשעה שחופפת לקורס. [math]\displaystyle{ B }[/math]= הקורס מתבטל. המשפט אומר [math]\displaystyle{ A\to B }[/math]. כלומר בגרות בשעה חופפת לקורס זה תנאי מספיק לכך שהקורס מתבטל. שימו לב שזהו לא תנאי הכרחי כי יתכן שהקורס יתבטל מסיבות אחרות.

הצרן: למדתי היטב למבחן, ואף על פי כן נכשלתי בו.

פתרון: נסמן A למדתי לבמחן, B נכשלתי במבחן אזי ההצרנה היא [math]\displaystyle{ A\land B }[/math]

הצרן: "ערן לובש חולצה סגולה בכל פעם שהוא לובש מכנסיים בצבע שחור"

פתרון: נסמן A ערן לובש חולצה סגולה. נסמן B ערך לובש מכנסיים שחורות. ההצרנה [math]\displaystyle{ B\to A }[/math]

הצרן: "כאשר אני עייף ורעב אני נעשה עצבני, או שאני הולך לישון; אבל אם אני עצבני ולא עייף, אז אני רעב".

פתרון: נסמן A אני עייף, B אני רעב, C אני עצבני, D אני הולך לישון ההצרנה [math]\displaystyle{ [(A\land B)\to (C\lor D)]\and[(C \land \lnot A)\to B] }[/math]

טאוטולוגיות

הגדרה : טאוטולוגיה הינה ביטוי שנכון תמיד ללא תלות בערכים שמציבים בו. למשל [math]\displaystyle{ A \or \neg A }[/math]

הגדרה: נאמר שביטוי [math]\displaystyle{ A }[/math] שקול טאוטולוגית לביטוי [math]\displaystyle{ B }[/math] (ונסמן [math]\displaystyle{ A \equiv B }[/math]) אם הביטוי [math]\displaystyle{ A \leftrightarrow B }[/math] הינו טאוטולוגיה (במילים: A קורה אמ"מ B קורה)

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

פתרון: מתקיים [math]\displaystyle{ A\to B \equiv \neg A \or B }[/math] ומתקיים [math]\displaystyle{ A \and B \equiv \neg(\neg A \or \neg B) }[/math]

הוכח את הבאים:

  • [math]\displaystyle{ \ \neg(A \or B) \equiv \neg A \and \neg B }[/math]
  • [math]\displaystyle{ \ A\or (B \and C ) \equiv (A \or B ) \and (A \or C) }[/math]
  • [math]\displaystyle{ \ (A\rightarrow B) \equiv ((\neg A) \vee B) }[/math].
  • [math]\displaystyle{ \ (A \leftrightarrow B) \equiv ((A \wedge B)\vee((\neg A)\wedge (\neg B) }[/math].
  • [math]\displaystyle{ \ (A \leftrightarrow B) \equiv (A \rightarrow B) \wedge (B \rightarrow A) }[/math].
  • [math]\displaystyle{ \ (A \rightarrow B) \equiv ((\neg B) \rightarrow (\neg A)) }[/math].

הערה (טרמינולוגיה):

  • כאשר אומרים ש B הוא תנאי הכרחי ל A פירושו הוא שהפסוק [math]\displaystyle{ A \to B }[/math] נכון. לעיתים, לצורך הדגשה מסמנים [math]\displaystyle{ A \Rightarrow B }[/math]
  • כאשר אומרים ש B הוא תנאי מספיק ל A פירושו הוא שהפסוק [math]\displaystyle{ B \to A }[/math] נכון. לעיתים, לצורך הדגשה מסמנים [math]\displaystyle{ B \Rightarrow A }[/math]
  • כאשר אומרים ש B הוא תנאי הכרחי ומספיק ל A פירושו הוא שהפסוק [math]\displaystyle{ B \rightarrow A }[/math] נכון. לעיתים, לצורך הדגשה מסמנים [math]\displaystyle{ A \iff B }[/math]


דרכי הוכחה

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

הוכח:

  • [math]\displaystyle{ (A\rightarrow B) \equiv (\neg B \rightarrow \neg A) }[/math]
  • (הנחה בשלילה) [math]\displaystyle{ A \equiv (\neg A \rightarrow F) }[/math]
  • [math]\displaystyle{ (A\lor B) \equiv (\neg A \rightarrow B) }[/math]


דוגמאות מילוליות:

  • בשביל להוכיח את הטענה ש "אם מישהו יכתוב בדיחה במבחן במקום תשובה אז הוא יקבל ניקוד חלקי" ניתן להוכיח באופן שקול כי " אם מישהו לא קיבל ניקוד חלקי במבחן אז זה אומר שהוא לא כתב בדיחה במבחן במקום תשובה"
  • בשביל להוכיח את הטענה ש "הגובה שלי נמוך מ- 3 מטר" אפשר להוכיח באופן שקול כי הגובה שלי לפחות 3 מטר ולהגיע לסתירה. למשל הטיעון הבא: "אם הגובה שלי לפחות 3 מטר, אז הראש שלי היה נוגע בתקרה. כיוון שהוא לא נוגע בתקרה, זו סתירה ולכן איני בגובה 3 מטר"

פרדיקטים וכמתים

בניגוד לאטומים שהם ללא משתנים הפרדיקטים הינם פונקציות התלויות במשתנים. לדוגמא ניתן להגדיר את הפרדיקט [math]\displaystyle{ S(x) }[/math] להיות פרדיקט שמביע כי x הינו סטודנט באוניברסיטה ("מביע" פירושו שאם x הוא סטודנט אזי [math]\displaystyle{ S(x) }[/math] הוא T ואם x אינו סטודנט [math]\displaystyle{ S(x) }[/math] הוא F).

כיוון שאטומים הם ללא משתנים הם יכולים להיות T או F אבל לא שניהם. לעומתם פרדיקטים הם תלויים במשתנים ולכן ערך האמת שלהם יקבע לפי ההצבה במשתנים. למשל הפרדיקט [math]\displaystyle{ S(x,y) }[/math]שמביע כי [math]\displaystyle{ x\lt y }[/math] יהיה נכון במקרה ש [math]\displaystyle{ S(2,3) }[/math] ולא נכון במקרה ש [math]\displaystyle{ S(3,2) }[/math]. כלומר לכל הצבה במשתני הפרדיקטים נקבל פסוק. הערה: משמשים בקשרים גם בפרדיקטים למשל [math]\displaystyle{ S(x,y) }[/math] הפרדיקט המוגדר [math]\displaystyle{ x\gt 0 \land x\lt y }[/math]

בנוסף, ניתן להוסיף כמתים.

הכמת "לכל" [math]\displaystyle{ \forall }[/math] והכמת "קיים" [math]\displaystyle{ \exist }[/math]

תפקיד מרכזי של הכמת הוא להבהיר את כוונת הטענה. למשל הטענה ש "סטונדט הוא יצור חרוץ" יכולה לקבל 2 משמעויות בעזרת הכמתים. או "כל סטודנט הוא יצור חרוץ" או "קיים סטודנט שהוא יצור חרוץ".

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

לעומתה הטענה השניה טוענת שניתן למצוא סטודנט אחד (לפחות) שהוא חרוץ (אם רוצים להוכיח את הטענה צריך למצוא סטודנט שהוא חרוץ ואם רוצים להוכיח כי הטענה לא נכונה צריך לעבור בין כל הסטודנטים ולוודא שהם אינם חרוצים

הצרן: לכל מספר p גדול מ-1: (p ראשוני) אמ"מ (אם הוא מחלק מכפלת מספרים אז הוא מחלק את אחד המספרים).

פתרון: ההצרנה [math]\displaystyle{ \forall p \gt 1 : (P(p)\iff Q(p)) }[/math] כאשר

  • [math]\displaystyle{ P(x) }[/math] הוא הפרדיקט "x" הוא ראשוני.
  • [math]\displaystyle{ Q(x) }[/math] הוא הפרדיקט [math]\displaystyle{ \forall a,b : p|ab \Rightarrow (p|a \lor p|b) }[/math]

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

הערה: שמות המשתנים אינם חשובים למשל עבור הפרדיק [math]\displaystyle{ S(x,y) }[/math] המוגדר [math]\displaystyle{ x\leq y }[/math] הפסוק [math]\displaystyle{ \forall x\forall y S(x,y) }[/math] הוא זהה לפסוק [math]\displaystyle{ \forall t\forall s S(t,s) }[/math]

הערה: סדר הכמתים כן משתנה (לפעמים) למשל [math]\displaystyle{ \exist x\forall y S(x,y) }[/math] לא שקול לפסוק [math]\displaystyle{ \forall y \exist x S(x,y) }[/math]


נשים לב כי בשביל לקבוע אם הפסוק [math]\displaystyle{ \forall x P(x) }[/math] אנחנו צריכים לדעת איזה x ים "חוקיים" (בהנחה שאנחנו יודעים את P) ומכאן שנעבור להגדרות הבאות.

הגדרות הקשורות לקבוצות

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

[math]\displaystyle{ \{1,\mathrm{horse},3\} }[/math], [math]\displaystyle{ \{1,2,3\} }[/math] ו[math]\displaystyle{ \{1,\{2,3\},\{\}\} }[/math]

איבר השייך לקבוצה אנו מסמנים בסימן [math]\displaystyle{ \in }[/math]. למשל [math]\displaystyle{ 1\in\{1,2,3\} }[/math], ואילו [math]\displaystyle{ 4\notin\{1,2,3\} }[/math]. שימו לב שגם [math]\displaystyle{ 1\notin\{\{1,2,3\}\} }[/math] שכן האיבר היחיד בקבוצה זו הינה הקבוצה [math]\displaystyle{ \{1,2,3\} }[/math].

  • אומרים שקבוצה A מוכלת בקבוצה B (מסומן [math]\displaystyle{ A \subseteq B }[/math]) אם כל האיברים בA הם גם איברים בB.
  • חיתוך של שתי קבוצות A ו B הינו אוסף האיברים השייכים גם לA וגם לB (מסומן [math]\displaystyle{ A\cap B }[/math]).
  • איחוד של שתי קבוצות A ו B הינו אוסף האיברים השייכים לA או לB (מסומן [math]\displaystyle{ A\cup B }[/math]).
  • A הפרש B הינה הקבוצה המכילה את כל האיברים בA שאינם בB (מסומן A\B).
  • ההפרש הסימטרי בין שתי קבוצות A וB הוא אוסף האיברים הנמצאים באחת הקבוצות אך לא בחיתוך (מסומן [math]\displaystyle{ A\Delta B }[/math]).

תרגיל:

  • הצרן תנאי השקול לכך ש-a שייך לאיחוד של הקבוצות A וB

פתרון [math]\displaystyle{ a\in A \or a\in B }[/math]

  • הצרן תנאי השקול לכך ש-a אינו שייך לאיחוד של הקבוצות A וB
  • הצרן תנאי השקול לכך ש-a שייך לחיתוך של הקבוצות A וB
  • הצרן תנאי השקול לכך ש-a אינו שייך לחיתוך של הקבוצות A וB

הגדרה: קבוצה A מוכלת בקבוצה B אם בB נמצאים כל האיברים מA (למשל הטבעיים מוכלים בשלמים [math]\displaystyle{ \mathbb{N}\subseteq\mathbb{Z} }[/math], והשלמים מוכלים בממשיים [math]\displaystyle{ \mathbb{Z}\subseteq\mathbb{R} }[/math]).

  • הצרן תנאי השקול לכך ש-C מוכלת בחיתוך של A וB

פתרון: [math]\displaystyle{ \forall c [c\in C \rightarrow (c\in A \and c \in B)] }[/math]

  • הצרן תנאי השקול לכך ש-C אינה מוכלת באיחוד של A וB

דוגמאות מילוליות:

  • "כלב נובח אינו נושך" אם"ם "כלב נושך אינו נובח"

הסבר: נסמן ב- D את קבוצת כל הכלבים ב -A את הנובחים וב- B את הנושכים אז הדוגמא היא בעצם [math]\displaystyle{ \forall x\in D :((x\in A\to x\notin B)\iff (x\in B \to x\notin A)) }[/math]

שזה בעצם מהצורה (לכל כלב) * [math]\displaystyle{ \ (p \rightarrow q) \iff ((\neg q) \rightarrow (\neg p)) }[/math].

  • מי שלא לומד בסמסטר נכשל במבחן אמ"מ מי שלא נכשל במבחן למד בסמסטר

שלילת פסוקים

מהי השלילה של הפסוק "לכל סיר יש מכסה המתאים לו", או "לכל מאכל, יש מישהו שמכין אותו טעים"?

בעת שלילה של פסוק לוגי, הכמתים 'לכל' ו'קיים' מתחלפים זה עם זה, והשלילה עוברת הלאה. את השלילה על הקשרים ניתן לבצע באמצעות טאוטולוגיות וטבלאות אמת.

לדוגמא:

  • "לכל אדם בעולם קיים דג עם מספר קשקשים כגיל האדם או שאורכו עשירית מאורך האדם"

השלילה היא:

  • "קיים אדם כך שלא קיים דג עם מספר קשקשים כגיל האדם או שאורכו עשירית מאורך האדם"

נמשיך:

  • "קיים אדם שלכל דג בעולם לא נכון ש(יש לו מספר קשקשים כגיל האדם או שאורכו עשירית מאורך האדם)"

כלומר

  • "קיים אדם שלכל דג בעולם יש מספר קשקשים שונה מגיל האדם וגם אורכו של הדג שונה מעשירית אורך האדם"


הערה: סדר הכמתים הוא חשוב (כמו בעברית) - לדוגמא: יש הבדל בין "לכל סיר קיים מכסה" לבין "קיים מכסה שמתאים לכל סיר".דוגמא: הצרן את המשפט "לכל מספר טבעי יש מספר טבעי הגדול ממנו" פתרון: [math]\displaystyle{ \forall n\in\mathbb{N}\,\exists m\in\mathbb{N}:n\lt m }[/math] לעומת זאת [math]\displaystyle{ \exists m\in\mathbb{N}\,\forall n\in\mathbb{N}:n\lt m }[/math] פירושו שקיים מספר טבעי שגדול מכל המספרים הטבעיים.

  • תרגיל: הצרן את המשפט "כל מספר ממשי ניתן לקרב ע"י מספרים רציונאליים בקירוב טוב כרצוננו"

פתרון: [math]\displaystyle{ \forall x\in\mathbb{R}\,\exists A\subset\mathbb{Q}:\forall\epsilon\in\mathbb{R}_{+}\exists q\in A\,:|x-q|\lt \epsilon }[/math] .

מה היא שלילתו של המשפט?

פתרון: נכתוב את הרמות השונות

  • [math]\displaystyle{ \neg(\forall x\in\mathbb{R}\,\exists A\subset\mathbb{Q}:\forall\epsilon\in\mathbb{R}_{+}\exists q\in A\,:|x-q|\lt \epsilon ) }[/math]
  • [math]\displaystyle{ \exists x\in\mathbb{R}\,\neg( \exists A\subset\mathbb{Q}:\forall\epsilon\in\mathbb{R}_{+}\exists q\in A\,:|x-q|\lt \epsilon ) }[/math]
  • [math]\displaystyle{ \exists x\in\mathbb{R}\, \forall A\subset\mathbb{Q}:\neg(\forall\epsilon\in\mathbb{R}_{+}\exists q\in A\,:|x-q|\lt \epsilon ) }[/math]
  • [math]\displaystyle{ \exists x\in\mathbb{R}\, \forall A\subset\mathbb{Q}:\exists\epsilon\in\mathbb{R}_{+}\neg(\exists q\in A\,:|x-q|\lt \epsilon ) }[/math]
  • [math]\displaystyle{ \exists x\in\mathbb{R}\, \forall A\subset\mathbb{Q}:\exists\epsilon\in\mathbb{R}_{+}\forall q\in A\,\neg(:|x-q|\lt \epsilon ) }[/math]
  • [math]\displaystyle{ \exists x\in\mathbb{R}\,\forall A\subset\mathbb{Q}:\exists\epsilon\in\mathbb{R}_{+}\forall q\in A\,:|x-q|\geq\epsilon }[/math]

תרגילים: דוגמאות של הצרנת ושלילת המושגים 'תלות לינארית', 'גבול סדרה', 'חח"ע', וכדומה

צורות נורמליות: CNF ,DNF

ישנן שתי "צורות נורמליות" להצגת כל פסוקית - DNF ו CNF.

DNF

ביטוי בצורת DNF מורכב מאוסף "פסוקיות" המחוברות ביניהן על ידי פעולות "או". כל פסוקית בעצמה מורכבת מאטומים המחוברים ביניהם על ידי פעולות "וגם". כל אטום הוא משתנה או שלילת משתנה.

בצורה סכמטית: [math]\displaystyle{ D_1 \lor D_2 \lor \dots \lor D_n }[/math] כאשר כל [math]\displaystyle{ D_i }[/math] מהצורה [math]\displaystyle{ p_1\land p_2 \land \dots \land p_m }[/math] וכל [math]\displaystyle{ p_i }[/math] שווה למשתנה [math]\displaystyle{ x }[/math] או לשלילתו [math]\displaystyle{ \lnot x }[/math].

דוגמא: נמצא את צורת DNF של טבלת האמת הבאה:


[math]\displaystyle{ f(x_1,x_2,x_3) }[/math] [math]\displaystyle{ x_3 }[/math] [math]\displaystyle{ x_2 }[/math] [math]\displaystyle{ x_1 }[/math]
0 0 0 0
0 0 0 1
1 0 1 0
1 1 0 0
0 0 1 1
1 1 0 1
0 1 1 0
0 1 1 1

נתמקד בשורות שערך האמת שלהן הוא 1 (שורות 3, 4, 6).

לשורה 3 נתאים את הפסוקית [math]\displaystyle{ D_1=\lnot x_1 \land x_2 \land \lnot x_3 }[/math]

מה עשינו? החלפנו כל משתנה שערכו 0 בשלילה שלו, וכל משתנה שערכו 1 השארנו בלי לגעת.

מה יצא לנו מזה? שימו לב שרק הצבה של ערכי האמת של [math]\displaystyle{ x_1,x_2,x_3 }[/math] שמופיעים בשורה 3 תתן ערך אמת 1 ב [math]\displaystyle{ D_1 }[/math]. כל הצבה אחרת (כלומר: הצבה של ערכי אמת של המשתנים בשורה אחרת) תתן 0 ב [math]\displaystyle{ D_1 }[/math].

באופן דומה נייצר [math]\displaystyle{ D_2 }[/math] עבור שורה 4 ו [math]\displaystyle{ D_3 }[/math] עבור שורה 6:

[math]\displaystyle{ D_2=\lnot x_1 \land\lnot x_2 \land x_3, \quad D_3=x_1\land \lnot x_2 \land x_3 }[/math]

כעת ה DNF של טבלת האמת היא פשוט

[math]\displaystyle{ D_1\or D_2 \or D_3=(\lnot x_1 \land x_2 \land \lnot x_3) \or (\lnot x_1 \land \lnot x_2 \land x_3) \or (x_1 \land \lnot x_2 \land x_3) }[/math].

CNF

ביטוי בצורת CNF מורכב מאוסף "פסוקיות" המחוברות ביניהן על ידי פעולות "וגם". כל פסוקית בעצמה מורכבת מאטומים המחוברים ביניהם על ידי פעולות "או". כל אטום הוא משתנה או שלילת משתנה.

בצורה סכמטית: [math]\displaystyle{ C_1 \land C_2 \land \dots \land C_n }[/math] כאשר כל [math]\displaystyle{ C_i }[/math] מהצורה [math]\displaystyle{ q_1\lor q_2 \lor \dots \lor q_m }[/math] וכל [math]\displaystyle{ q_i }[/math] שווה למשתנה [math]\displaystyle{ x }[/math] או לשלילתו [math]\displaystyle{ \lnot x }[/math].

נדגים על הדוגמא לעיל.

נתמקד בשורות שערך האמת שלהן הוא 0 (שורות 1, 2, 5, 7, 8)

לשורה 1 נתאים את הפסוקית [math]\displaystyle{ C_1= x_1 \lor x_2 \lor x_3 }[/math]

מה עשינו? כל משתנה שערכו 0 השארנו בלי לגעת, וכל משתנה שערכו 1 החלפנו בשלילתו.

מה יצא לנו מזה? שימו לב שרק הצבה של ערכי האמת של [math]\displaystyle{ x_1,x_2,x_3 }[/math] שמופיעים בשורה 1 תתן ערך אמת 0 ב [math]\displaystyle{ C_1 }[/math]. כל הצבה אחרת (כלומר: הצבה של ערכי אמת של המשתנים בשורה אחרת) תתן 1 ב [math]\displaystyle{ C_1 }[/math].

באופן דומה נייצר [math]\displaystyle{ C_2,C_3,C_4,C_5 }[/math] עבור שורות 2 , 5, 7 ו-8:

[math]\displaystyle{ C_2= x_1 \lor \lnot x_2 \lor \lnot x_3, C_3=\lnot x_1\lor \lnot x_2 \lor x_3 }[/math]

[math]\displaystyle{ C_4=x_1 \lor \lnot x_2 \lor \lnot x_3, C_5= \lnot x_1 \lor \lnot x_2 \lor \lnot x_3 }[/math]

כעת ה CNF של טבלת האמת היא פשוט

[math]\displaystyle{ C_1 \land C_2 \land C_3 \land C_4 \land C_5 }[/math]

הרחבה על עניינים אלו ניתן למצוא פה 88-101 חשיבה מתמטית