כל הקורסים
-
חדו"א: פונקציות של משתנה אחד
סמסטר ב' , שנה א’נקודות זכות: 4הקורס מציג לסטודנטים את הרעיונות המרכזיים של האנליזה ומראה איך ניתן בעזרתם לחקור תכונות של פונקציות.
המספרים הממשיים: תכונות של הממשיים, קטעים, ערך מוחלט, חסם עליון, חסם תחתון. השוואה בין מושג המספר במתמטיקה ובתכנות.
גבול של פונקציה: איך ניתן להבטיח כי הפלט של הפונקציה נמצא בטווח רצוי תוך שליטה בקלט? נראה איך ההגדרה הפורמאלית של הגבול היא התשובה המתמטית לבעיה החישובית הזו.
פונקציות רציפות וגזירות בקטע: נראה מה ניתן ללמוד על פונקציה מהגבולות והנגזרת שלה. משפט ערך הביניים ומשפטי וויארשטראס. משפט רול, משפט לגרנג', חקירת פונקציות (תחומי עליה וירידה, נקודות קיצון, קמירות, אסימפטוטות), כלל לופיטל. פונקציות מונוטוניות. משפטים על פונקציות הפוכות, פונקציות הפוכות טריגונומטריות, פונקצית הלוגריתם והפונקציה המעריכית).
אינטגרלים: האינטגרל המסוים, האינטגרל הלא מסוים, והקשר ביניהם.
-
אלגברה ליניארית ב'
סמסטר ב' , שנה א’נקודות זכות: 4קורס זה הוא קורס המשך של הקורס באלגברה ליניארית א. הנושאים בהם נדון בקורס זה: ערכים עצמיים ווקטורים עצמיים. לכסון מטריצות ואופרטורים. מרחבי מכפלה פנימית מעל הממשיים ומעל המרוכבים. בסיסים אורתונורמליים ותהליך Schmidt-Gram .גאומטריה של מרחבי מכפלה פנימית. פיתוח Fourier .קירוב טוב ביותר בתת-מרחב נוצר סופית. מטריצות אורתוגונליות והעתקות אורתוגונליות. מבוא קצר לגאומטריה אפינית.
-
סדנה במתמטיקה ב'
סמסטר ב' , שנה א’נקודות זכות: ללאהסדנה מסייעת לסטודנטים להתמודד עם אופייה של המתמטיקה הפוסט-תיכונית. הדגשים בסדנה הם על מושג ההוכחה במתמטיקה, על שימוש נכון בשפה המתמטית, ועל טכניקות שונות לפתרון בעיות.
-
מתמטיקה דיסקרטית (פריסה אישית)
סמסטר ב' , שנה א’נקודות זכות: 4הקורס מתחיל ביסודות השפה המתמטית ומציג את כללי המשחק ואת המושגים הבסיסיים של לימודי המתמטיקה בפרט והתיאוריה של מדעי המחשב בכלל.
הפרק הראשון, לוגיקה מתמטית מבהיר מהו פסוק מתמטי ומהו משפט מתמטי, מהי הוכחה מתמטית, ומהן דרכים אפשריות לבניית הוכחה. הפרק כולל את הנושאים הבאים: מבוא, תחשיב הפסוקים, הקשרים הלוגיים, שקילות לוגית, טאוטולוגיות וסתירות, הוכחה בדרך השלילה, קבוצות שלמות של קשרים, פסוקים בצורת CNF ובצורת DNF. תחשיב היחסים, הכמתים הלוגיים, שקילות לוגית.
הפרק השני, תורת הקבוצות עוסק במושג המרכזי של הקורס ובשילובים שונים בין קבוצות. תחילה נראה שלא כל ביטוי מגדיר קבוצה (פרדוקס הספר). אחר-כך נעסוק במושגים הבסיסיים ובפעולות הבסיסיות (קבוצה, איבר, תת-קבוצה, קבוצת החזקה, קבוצה אוניברסאלית, חיתוך, איחוד, משלים, הפרש סימטרי, מכפלה קרטזית). נייצג קבוצות בכלים גרפיים באמצעות דיאגרמות וון.
הפרק יחסים בינאריים פותח צוהר למספר כיוונים מרכזיים בלימודי המתמטיקה: הוא מאפשר להגדיר את יחס השקילות, את יחס הסדר (ומתוכו את מושג האינדוקציה) ואת הפונקציה (גרף של פונקציה, טווח, תחום, פונקציה חד-חד-ערכית, פונקציה על, הרכבה של פונקציות, פונקציה הפיכה, תמורות, פונקציות אופייניות). המושגים הללו גם יאפשרו לנו להגדיר גודל של קבוצה.
בפרק קומבינטוריקה נעסוק בגדלים של קבוצות. נבין איך ילד יודע למנות (ולחשב גודל של קבוצה) ובעקבותיו נעשה זאת גם אנו. נפגוש בעקרון שובך היונים ונחשב את מספר הדרכים שבהן יכול שומר המעילים במלתחת התיאטרון להשיב לקבוצת אנשים את מעיליהם כך שלא יהיה אפילו חבר אחד בקבוצה שיחזור הביתה עם מעילו שלו (שיטות מנייה, משפט הבינום, זהויות קומבינטוריות, עיקרון ההכלה וההדחה).
-
מבוא לתכנות מונחה עצמים והנדסת תוכנה
קוד הקורס: 10204032שם המרצה: נועם אוחנהדרישות קדם: מבוא למדעי המחשב, תכנות מודולארי, מבני נתונים (השתתפות)סמסטר א' , שנה ב’נקודות זכות: 5כיצד מפתחים יישומים רחבי היקף ומורכבים? כיצד דואגים שהיישומים יהיו שלמים וכלליים? מה המפתח לתכנות ברור ונוח לתחזוקה? תשובות לשאלות אלו הן הבסיס לתכנות מונחה עצמים והנדסת תוכנה. הקורס יעסוק בלימוד העקרונות תוך יישומם בשפת C++. הקורס ילווה בדוגמאות ותרגילים של יישומים מלאים על מגוון מרכיביהם: מבני נתונים, אלגוריתמים, בינה מלכותית, ממשק, גרפיקה, אבטחת מידע, ביצועים ועוד. הקניית העקרונות, בסמסטר זה, תהיה בעיקר סביב הכלים של מחלקות, ירושה, פולימורפיזם, דיאגראמות UML, ומבוא לתבניות עיצוב.
-
תכנות מערכת ומבוא לתכנות מקבילי
קוד הקורס: 10203052שם המרצה: ד"ר יורם ביברמןדרישות קדם: מבוא למדעי המחשב, תכנות מודולארי, מבנה המחשב (או לחילופין 'מערכות חומרה תכנה ותכנות בשפת סף')סמסטר א' , שנה ב’נקודות זכות: 5כיצד ניתן לכתוב תכנית אשר קוראת נתונים משני מקורות בו זמנית? או באופן כללי: מבצעת מספר משימות במקביל ובצורה מתואמת אלה עם אלה? כיצד יראה עולם התכנות בעידן בו המעבד כולל מספר ליבות? כיצד ניתן לעשות שימוש מועיל בליבות הרבות?
הקורס כולל שני חלקים: מרכיב תכנותי הכולל היכרות נרחבת עם קריאות המערכת (system calls) של Unix, ועם כלים לתקשורת בין תהליכים ותהליכונים (IPC), ומרכיב תיאורטי הדן ביסודות מערכת ההפעלה, ובמושגי התהליך והתהליכון (thread).
נושאים שילמדו: מבוא למערכות הפעלה. נושאים בארכיטקטורה הרלוונטיים למ.ה. (בפרט פסיקות). מרכיבים של מ.ה. תהליכים (כולל יצור תהליכים ב-Unix: fork(), exec()). תקשורת בין תהליכים ב- Unix (signal, pipes, named pipes, message queues, sockets, shared memory) פתילים (threads, כולל ספריית pthreads). תזמון המעבד (בפרט ב- Linux). סינכרון בין תהליכים (בפרט סמפור בתיאוריה, ב- Unix, וב- pthreads). טיפול בחסימות הדדיות. פרדיגמת התכנות המקבילי: אפשרויות ואתגרים.
-
מבני נתונים
קוד הקורס: 10202032שם המרצה: ד"ר ערן לונדוןדרישות קדם: אלגברה ליניארית א', אלגברה ליניארית ב', מתמטיקה דיסקרטית, מבוא לתיאוריה של מדמ"חסמסטר א' , שנה ב’נקודות זכות: 4נעסוק בדרכים לייצג מידע במחשב בצורה יעילה, כך שפתרון בעיות יהיה מהיר וחסכוני. כך נפגוש במחסניות, תורים, רשימות מקושרות, עצים מושרשים, ערמות ותורי קדימויות.
הקורס יכלול את הנושאים הבאים:
- בעיית המיון: איך ניתן למיין מערך של נתונים בצורה נוחה ומהירה? נפגוש בפתרונות שונים (ולעיתים משונים) המתאימים לבעיות שונות: מיון הכנסה, מיון בחירה, מיון ערמה, מיון מיזוג, מיון מהיר. נפגוש בחסמים תחתונים למיון. נעסוק בתוחלת זמן הריצה של מיון מהיר. נסיים במיונים ליניאריים: מיון מניה, מיון בסיס, מיון דלי.
- בעיית החיפוש במבנה נתונים דינמי: איך ניתן לייצג במחשב ספר טלפונים ("ענק") המתעדכן כל העת ולחפש בו בצורה מהירה? נפגוש בעצי חיפוש בינאריים ובפרט בעצים מאוזנים (כדוגמת עץ אדום-שחור).
- מהו מבנה הנתונים המתאים לניהול מאגר "קטן" של פריטים בלתי צפויים (כדוגמת מאגר החדרים של רשת מלונות אשר צריך להיות מסוגל להכיל כל מבקר אפשרי)? נפגוש בטבלאות גיבוב ופונקציות גיבוב. נראה איך ניתן לאגור אנציקלופדיה שלמה על DVD כך שזמן החיפוש של כל ערך יהיה קצר (מאוד).
- מהי הדרך היעילה לדחוס מידע כך שלא "יתפוס" הרבה מקום בזיכרון? על כך נענה באמצעות צופן הופמן.
- מהי הדרך הנוחה לטייל בעיר זרה כך שנכיר אותה בצורה מושלמת, ואיך זה מתקשר לתנועת גלים באגם ולפתרון חידות של מבוכים? על כך נענה באמצעות חיפוש לרוחב וחיפוש לעומק בגרפים.
- איך ניתן להבטיח השקעה מזערית בסלילת כבישים בלי פגיעה בזרימת התנועה בין כל שתי נקודות בעיר?
- איך ניתן לחשב את המרחק בין כל שתי ערים בארץ, כאשר נתונים לנו רק אורכי הכבישים בין צמתים סמוכים? איך זה מתקשר לשוק המטבעות הבינלאומי?
-
חדו"א: שימושים של האינטגרל וחישובים מקורבים
סמסטר א' , שנה ב’נקודות זכות: 4שימושים של אינטגרל: בעזרת אינטגרלים ניתן לחשב נתונים גיאומטריים רבים, כגון השטח של תחום הכלוא בין עקומות או הנפח של גוף במרחב. נראה גם מתי ניתן להכליל את האינטגרל למקרים אינסופיים.
חישובי שטח ונפח, נפח של גוף סיבוב. אינטגרלים לא אמיתיים.
חישובים מקורבים: איך מחשב יכול לחשב אם הוא יודע רק לחבר ולהכפיל? איך מחשבים את הערך שבו פונקציה מתאפסת אם אין לנו נוסחה? החלק השני של הקורס מתייחס לשאלות כאלה. נשתמש בתוכנות גרפיות ונומריות כדי להדגים את המושגים.
סדרות: הגדרה, גבול, סדרת קושי, סדרות רקורסיביות. טורים: הגדרה, התכנסות טורים (בהחלט ובתנאי), מבחני התכנסות, טורי לייבניץ. פולינומי טיילור. טור טיילור של פונקציה והתכנסות לפונקציה. טורי חזקות: הגדרה, רדיוס התכנסות, תחום התכנסות, גזירה ואינטגרציה של טור חזקות, הצגה של פונקציות אלמנטאריות כטורי חזקות, שימוש של טורי חזקות לחישוב ערכים מקורבים, למשוואות דיפרנציאליות. אנליזה נומרית: שיטת החצייה, שיטת ניוטון רפסון, שיטת האיטרציה.
-
מבנים אלגבריים
קוד הקורס: 10201092דרישות קדם: כלים מתמטיים למדעי המחשב, מתמטיקה דיסקרטית, אלגברה ליניארית א', אלגברה ליניארית ב'סמסטר א' , שנה ב’נקודות זכות: 4בקורס זה נלמד נושאים מתמטיים הנחוצים להבנת סוגיות בתיאוריה של מדעי המחשב, בפרט באלגוריתמים, בהצפנה, ובקודים לתיקון שגיאות. הנושאים הנלמדים: חבורות: הגדרת חבורה ותת חבורה, החבורה הסימטרית, הומומורפיזם ואיזומורפיזם, הצגת תמורות, מסלולים, מחלקות ימניות ומחלקות שמאליות, חבורת מנה, המשפט היסודי של ההומומורפיזם. חוגים: הגדרת חוג ותת חוג, אידיאל, תחום שלמות, שדה, חוגי פולינומים, חוגים אוקלידיים, חוגים ראשיים, חוג מנה, בניית שדות סופיים. תורת המספרים: האלגוריתם המורחב של אוקלידס, קונגראנציה. משפט Fermat, משפט ,Euler משפט Wilson , משפט השאריות הסיני, שאריות ריבועיות, טרנספורם Fourier דיסקרטי.
-
כתיבה והצגה מדעית - קבוצה א'
סמסטר א' , שנה ב’נקודות זכות: 2כתיבה טכנית ומדעית הפכה להיות חלק בלתי נפרד מהעולם המקצועי של מדעי המחשב. מטרת הקורס היא לפתח מיומנויות כתיבה והצגה הנדרשות הן במהלך התואר והן בחיים המקצועיים לאחר סיום הלימודים. הקורס יתמקד בנושאים הבאים: קריאת מאמרים מתחום מדעי המחשב, אפיון הכתיבה המדעית, התמודדות עם קריאת מאמר והפיכת הקריאה ללימוד אקטיבי. מבנה המאמר המדעי, עקרונות הסיכום וההתנסות האקדמיים. חיפוש מושכל במאגרי מידע ומנועי חיפוש. בניית מצגות. במהלך הקורס נתרגל את המיומנויות השונות באמצעות כתיבת דוחות, בחירת מאמר והצגתו בפני הכיתה.