CNF

מתוך ויקיפדיה, האנציקלופדיה החופשית
קפיצה לניווט קפיצה לחיפוש

Conjunctive Normal Form או הצורה הנורמלית הקוניוקטיבית הוא ביטוי המורכב מאוסף "פסוקיות" המחוברות ביניהן על ידי פעולות וגם. (קוניונקציה)

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

דוגמה:

נוסחת CNF במשתנים בעלת צורה כגון

העברת נוסחה לצורת CNF[עריכת קוד מקור | עריכה]

כל נוסחא בתחשיב הפסוקים ניתנת להצגה כנוסחת CNF כך:

  1. מציאת כל השמות ערכי האמת שאינן מספקות את הנוסחה
  2. עבור כל השמה כזו, בניית פסוקית אשר מכילה את כל המשתנים שערכם "שקר", ואת שלילת כל המשתנים המקבלים ערך אמת "אמת". (וביניהם, פעולות "או")
  3. הנוסחה הרצויה היא קוניונקציה של כל הפסוקיות שנמצאו.

ספיקות נוסחא בצורת CNF[עריכת קוד מקור | עריכה]

Postscript-viewer-shaded.png ערך מורחב – בעיית הספיקות

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

ראו גם[עריכת קוד מקור | עריכה]

  • DNF (צורה נורמלית דיסיונקטיבית)