שפה מסדר ראשון – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
ArikVirus (שיחה | תרומות)
Matanyabot (שיחה | תרומות)
מ בוט החלפות: כדי, פונקציית, דוגמת
שורה 11:
# <math> \mathcal C </math> - אוסף כל סימני הקבועים שלנו: <math>\ c_0,c_1,c_2,\dots</math>.
# <math> \mathcal F </math> - אוסף כל סימני הפונקציות, כאשר כל פונקציה מאופיינת בשלושה דברים עיקריים (מלבד שמה), והם:
:::::: א. [[מקומיות|פונקציתפונקציית המקומיות]] <math> \sigma </math>, אשר בעצם אומרת לנו כמה פרמטרים מקבלת הפונקציה וכמה היא תחזיר.
:::::: ב. [[תחום (פונקציות)|תחום הפונקציה]] <math> Dom </math>, אשר בעצם אומר לנו מאילו קבוצת ערכים נקבל את הפרמטרים שלנו.
:::::: ג. ו[[טווח (פונקציות)|טווח הפונקציה]] <math> Rng </math>, אשר בעצם אומר לנו לאילו קבוצת ערכים שייכת תוצאת הפונקציה.
::4. <math> \mathcal R </math> - אוסף כל סימני היחסים (הפרדיקטים), כאשר כל סימן יחס מאופיין במציין המקומיות <math> \sigma </math>, בדומה לפונקציות. אלא אם כן צוין אחרת, ההנחה הרווחת היא שסימן השוויון שייך ל-<math>\mathcal{R}</math>. לרוב מקובל להשתמש בסימון <math> \approx </math> במקום בסימון <math> =</math>, וזאת בכדיכדי להבדיל מהסימן המקובל להשמת ערך.
::5. [[קשר לוגי|קשרים לוגיים]] ושני ה[[כמת]]ים, '''לכל''' <math>\ \forall</math> ו'''קיים''' <math>\ \exists</math>.
::6. סימני עזר כגון [[סוגריים]], [[פסיק]] ו[[נקודתיים]].
שורה 48:
 
==פינת המשל==
ניתן לחשוב על מושג השפה והמודל כעל מקבילים למושג ה[[ממשק]] ('''Interface''') וה[[מחלקה]] ('''Class''') ב[[שפת תכנות|שפות תכנות]] כדוגמאתכדוגמת [[ג'אווה]]. הממשק מכיל את השיטות (הפעולות) והמשתנים, אך אינו באמת מבצע משהו מתוכם. כאשר אנו כמתכנתים בונים מחלקה המממשת אותו, רק אז השיטות והמשתנים מקבלים ערכים, ובכך מאבדים מכלליותם. היחס בין שפה למבנה לשפה הוא זהה.
 
== ראו גם ==