קשר האיווי מסומן בפרולוג באמצעות נקודה-פסיק. חוק עם טענת איווי יראה כך:
party(tuesday) :- no_homework(tuesday); no_test(wednesday).
חוק זה מביע את הטענה "יש מסיבה ביום שלישי אם לא ניתנו שיעורי-בית ביום שלישי או אין מבחן ביום רביעי ". הנקודה-פסיק משמעה "או".
אילו היה חוק זה, עם האיווי, מגדיר את מועד קיום המסיבה, פרולוג היה עונה "כן" לשאלה:
?- party(tuesday).
משום שתנאי אחד מתקיים (ידוע שאין מבחן ביום רביעי), לכן הגוף כולו נכון ואפשר להסיק את נכונות הראש.
התבוננו בשני החוקים האחרונים שהצגנו. מבחינה חיצונית הם נראים כמעט זהים! על מנת להקל על הקריאות של תכניות פרולוג נוהגים מתכנתים רבים להשתמש בכתיב חלופי כדי להביע איווי בתוך חוקים. גם אנו ננקוט בשיטה זו, המכונה "חוקים חלופיים":
שימו לב שבתכנית שהצגנו בתחילת הסעיף יש שני חוקים עם ראש זהה – run_away(tuesday). משני החוקים אנו למדים שבורחים ביום שלישי אם אין שומר ביום שלישי, או אם אין מבחן ביום רביעי. כלומר, רישום מספר חוקים עם אותו ראש היא דרך להביע איווי.
|