תכנון מסלולים אופטימלי עבור כלי טיס בלתי מאויישים בעזרת תכנות במשתנים מעורבים
תכנות לוגי פרולוג
-
Upload
adena-espinoza -
Category
Documents
-
view
47 -
download
9
description
Transcript of תכנות לוגי פרולוג
מטרות הקורס
היכרות עם תורת היגיון - לוגיקה
.היכרות עם עקרונות של תכנות לוגי
.היכרות עם שפת פרולוג, עקרונותיה ויתרונותיה
.כתיבת יישומים מתחומים שונים
.להציג נתונים בצורה מופשטת
.היכרות עם תוכנית הלימודים בפרולוג
קצת היסטוריה
עקרונות המחשב כתפיסה, כפי הוא מוכר.40היום, התגבשו בשנות ה-
כיצד לבנות מחשב כיצד להשתמש במחשב.
.התפתחות השפות שפה.מבנה המחשב .תכנות לוגי
מבוא ללוגיקה) תורת ההיגיון (
: )הגדרה ראשונה ) נתקן אותה אחר כך היסק לוגי : אוסף של משפטים אשר אחד מהם
הוא מסקנה והיתר הם הנחות.: דוגמאות
המים הם קרים וכחולים , לכן הם כחולים.
המים הם קרים או כחולים, לכן הם כחולים. .לא תמיד נשמר הסדר בין המסקנה וההנחות.דוגמא : הכל רטוב כי יורד גשם
טענה היא משפט שהתשובה אליו היא אמת אושקר.
: אוסף של היסק לוגיעכשיו נתקן את ההגדרה: טענות שאחת מהן היא מסקנה והשאר הן
הנחות. היסק תקף : ההנחות גוררות את המסקנה
והמסקנה נובעת מההנחות. : כל ציפורים שריםדוגמא
הזמיר הוא ציפורלכן הזמיר שר
בהיסק תקף לא יתכן מצב בו כל ההנחותאמיתיות יחד, והמסקנה שקרית.
בהיסק בטל יתכן מצב בו כל ההנחות אמיתיות יחד, והמסקנה שיקירת.
מאפיינים של שפות לוגיות
.הן משתמשות בלוגיקה להעברת מידע
.הן משתמשות בלוגיקה לייצוג בעיות במחשב
הן משתמשות במנגנון ההיסק לוגי כדי לפתור בעיות
(AND) : גם קשר הגימום
המים קרים וכחולים
המים קריםהמים כחולים
אמתאמתאמת
אמתשקרשקר
שקראמתשקר
שקרשקרשקר
(AND) : גם קשר הגימום
המים קרים וכחולים
q AND q - pהמים קרים - qהמים כחולים
אמתאמתאמת
אמתשקרשקר
שקראמתשקר
שקרשקרשקר
קשר האימוז .
אם ברונו ישן" ו- "ברנו ישן אז ברונו חולם אםהטענות " ברונו חולם" הן שתי טענות מורכבות )זהות( המורכבות משתי
טענות פשוטות וקשר האימוז ביניהם.
כל טענות האימוז מורכבות מראש וגוף באופן הבא:
והראש מציין את ה- אז. הגוף מציין את ה- אם
בין הטענות טבלת האמת הבאה מציגה את הקשר הפשוטות "ברונו ישן" ו- "ברונו חולם", לבין הטענה המורכבת
"ברונו ישן אם ברונו חולם".
גוף ראש
ברונו ישן ברונו חולם
קשר האימוז: גרירה לוגיתיש עננים אם יורד גשם
אם יורד גשם אז יש עננים
יורד גשםיש עננים
אמתאמת
אמתשקר
שקראמת
שקרשקר
קשר האימוז: גרירה לוגית
יש עננים אם יורד גשם
אם יורד גשם אז יש ענניםיורד גשםיש עננים
אמתאמת
אמתשקרשקר
שקראמת
שקרשקר
קשר האימוז: גרירה לוגית
יש עננים אם יורד גשם
אם יורד גשם אז יש עננים
יורד גשםיש עננים
אמתאמתאמת
אמתשקרשקר
שקראמתאמת
שקרשקראמת
קשר האימוז: גרירה לוגית
אם יורד גשם אז יש עננים
p q q יש עננים –
יורד גשם - p
אמתאמתאמת
אמתשקרשקר
שקראמתאמת
שקרשקראמת
שימור האמת- היסק תקף או בטל
:הנחות
משה יתקלח אם הוא הזיע
משה הזיע אם הוא רץ
משה רץ אם הוא התאמן
משה התאמןמסקנה
משה יתקלח
כללי היסק
כלל ההחזרה
כלל הוספת גימום
– כלל מודוס פננסModus Ponens
– כלל מודוס טולנסModus Tolens
כלל שרשרת
כלל הוספת איווי
- כלל החלטהResolution
% תוכנית המשפחה התנכית
% עובדות
% המתאר אב)_אדם,_מישהו( % מתאר ש _אדם הוא אבא של _מישהו.
אב) אברהם,יצחק(.
אב )אברהם,ישמעאל(.אב)יצחק,יעקב(.אב)יצחק,עשו(.
אב)יעקב,ראובן(.אב)יעקב,שמעון(.
המתאר אם)_אדם,_מישהו( %.מתאר ש _אדם הוא אימא של _מישהו %
.אם)שרה,יצחק(
.אם )הגר,ישמעאל(
.אם)רבקה,יעקב(
.אם)רבקה,עשו(
.אם)לאה,ראובן(
.אם)לאה,שמעון(
% המתאר זכר)_אדם(
% מתאר ש _אדם הוא ממין זכר.
זכר)אברהם(. זכר)ישמעאל(.
זכר)יצחק(. זכר)יעקב(.זכר)עשו(.
זכר)ראובן(.(. זכר)שמעון
% חוקים:
% המתאר הורה)_אדם,_מישהו( % מתאר ש _אדם הוא הורה של _מישהו.
הורה)_אדם,_מישהו( :- אב)_אדם,_מישהו(.הורה)_אדם,_מישהו( :- אם)_אדם,_מישהו(.
% המתאר בן/בת )_מישהו,_אדם(
% מתאר ש _מישהו הוא בנו/בתו של _אדם.
מישהו( , ,_אדם( :- הורה) _אדם,_ בן) _מישהוזכר) _מישהו(.
מישהו(, ,_אדם( :- הורה)_אדם,_בת)_מישהונקבה) _מישהו(.
% המתאר אב)_אדם( % מתאר ש _אדם הוא אב.
אב)_אדם( :- אב)_אדם,_מישהו(.
% המתאר אם)_אישה( % מתאר ש _אישה היא אימא
אם)_ אישה( :- אם)_אישה,_מישהו(.
( 2,_אח%1 המתאר אח)_אח הם אחים.2 ו _אח%1 מתאר ש _אח
(,1(:- הורה) _הורה,_אח2,_אח1 אח) _אח(,2 הורה) _הורה,_אח
\= 1(, _אח1 זכר) _אח.2_אח
הוא ממין נקבה )אחות(.%1 כאשר _אח
(,1(:- הורה) _הורה,_אח2,_אח1 אחות) _אח(,2 הורה) _הורה,_אח
(, 1 נקבה) _אח.2 \= _אח1_אח
( 2,_אח%1 המתאר אח_או_אחות)_אח הם אחים.2 ו _אח%1 מתאר ש _אח
(,1( :- הורה)_הורה, _אח2,_אח1אח_או_אחות)_אח(.2 הורה)_הורה, _אח
( 2,_בן-דוד%1 המתאר בן-דוד)_בן-דוד הם בני דודים.2 ו- _בן-דוד%1 מתאר ש_בו-דוד
(,1,_בן_דוד1(:- הורה)_הורה2, _בן_דוד1בן_דוד) _בן_דוד
(,2,_בן_דוד2הורה)_הורה
(,2,_הורה1אח_או_אחות)_הורה
.2 \= _בן_דוד1 _בן_דוד