קיומה של התכונה תלוי בטווח עליו מוגדרת הפונקציה: כך למשל, הפונקציה המתאימה לכל אדם את אמו היא על אם הטווח הוא קבוצת הנשים שיש להן ילדים, אבל לא על אם הטווח שלה מוגדר כקבוצת כל הנשים (כי יש נשים שאין להן ילדים). מסיבה זו, מקובל לציין שפונקציה היא על קבוצה מסוימת (שפירושו: אם קבוצה זו תילקח כטווח הפונקציה, יתקיימו הדרישות לפונקציה על).
תכונות.
עבור קבוצות סופיות, אם קיימת פונקציה מקבוצה formula_1 לקבוצה formula_2 שהיא על, אזי מספר האיברים ב-formula_2 קטן או שווה למספר האיברים ב-formula_1. אם קיימת בין הקבוצות פונקציה שהיא חד-חד ערכית, אזי מספר האיברים ב-formula_1 קטן או שווה למספר האיברים ב-formula_2 ואם קיימת בין הקבוצות פונקציה שהיא חד-חד ערכית ועל, אזי מספר האיברים ב-formula_1 שווה למספר האיברים ב-formula_2.
על הבסיס הזה בנה גאורג קנטור שיטה להשוות קבוצות אינסופיות, המהוות נושא מרכזי בתורת הקבוצות. קנטור הציג את המושג עוצמה כך ששתי קבוצות שיש ביניהן פונקציה שהיא חד-חד ערכית ועל הן שוות עוצמה.
אפימורפיזמים.
בתורת הקטגוריות, מורפיזם formula_44 נקרא אפימורפיזם אם לכל אובייקט formula_45 ולכל זוג מורפיזמים formula_46 מתקיים שאם formula_47 אז formula_48. בקטגוריה של קבוצות, המושגים פונקציה על ואפימורפיזם מתלכדים, אך יש קטגוריות, כגון הקטגוריה של חוגים, שבהן יש אפימורפיזמים שאינם פונקציות על.
פונקציה חד-חד ערכית
שפת מכונה
שפת מכונה היא אוסף של הוראות המובן בצורה ישירה (ללא כל תרגום) על ידי המעבד של המחשב, ומבוצע על ידיו בעת פעולת המחשב.
הוראות (פקודות) שפת המכונה הן רצף של סיביות. לסיבית שני מצבים אפשריים ועל כן ערכה מיוצג באמצעות הספרות אפס ואחת. כך למשל, רצף הסיביות 10001001110110000000000111010000 מהווה למעשה זוג פקודות בשפת המכונה של מעבדים מסדרת x86 של אינטל, המורה למעבד בן 16bit לחבר את המספרים המאוחסנים בשניים מהאוגרים הפנימיים של המעבד הנקראים BX ו-DX ולהציב את הסכום באוגר AX (הפקודה הראשונה מעתיקה את המידע מ־BX ל־AX, והשנייה מחברת אליו את המידע שב־DX).
בשל הקושי של בני אדם לפענח ולזכור את משמעותם של רצפים ארוכים של סיביות, יצירת תוכניות שימושיות בשפת מכונה כמעט ואינה מעשית. לצורך כך נוצר ייצוג של כל פקודה בשפת מכונה בעזרת רצף תווים נהיר יותר, בדרך כלל רצף אותיות היוצר מילה שמשמעותה מרמזת על הפקודה בשפת מכונה שאותה היא מייצגת. ייצוג כזה נקרא שפת סף (Assembly) והוא הקרוב ביותר לשפת המכונה. אסמבלר הוא מהדר המתרגם פקודות משפת סף אל שפת מכונה על מנת שיהיה ניתן להריצן על ידי מעבד. תכנות בשפת מכונה או בשפת סף נקרא תכנות low-level ובראשית ימי המחשוב התכנות נעשה בצורה זו. החל משנות ה-50 של המאה ה-20 החלו ליצור שפות תכנות היוצרות הפשטה גבוהה יותר, זאת באמצעות פקודות הדומות יותר לשפת בני אדם וניתוק הקשר בין פקודה יחידה בשפת מכונה לפקודה יחידה בשפת התכנות, כך שפקודה אחת בשפת התכנות עשויה להיות מתורגמת בזמן ההידור לרצף פקודות בשפת מכונה. שפות כאלו נקראות שפות תכנות עיליות ועיקר התכנות כיום מתבצע בעזרתן.
מעבדים מדגמים שונים נבדלים בפקודות שכל אחד מהם יכול לבצע. הפקודות שיודע לבצע מעבד מושפעות בין היתר מאופן מימושו הפיזי, למשל מכמות האוגרים שהוא מכיל ומגודלם. אוסף ההוראות בשפת מכונה שמעבד מסוים מסוגל לבצע ואופן ייצוגן הבינארי נקרא סט פקודות. גם אם שני מעבדים יודעים לבצע פקודה מסוימת, רצף הסיביות המייצג את הפקודה עשוי להיות שונה בסט הפקודות של כל אחד מהם. שני מעבדים שקולים זה לזה מבחינה פונקציונלית כאשר יש להם אותה שפת מכונה, ללא תלות באופן המימוש האלקטרוני של שפה זו. בשל השוני בסט פקודות של מעבדים שונים, תוכנית מחשב בשפת מכונה של מעבד אחד לא יכולה להיות מבוצעת על ידי מעבד עם שפת מכונה שונה. תכנות בשפת תכנות עילית מצמצם קושי זה: אין צורך לכתוב את התוכנית לכל מעבד בנפרד בשפת המכונה שלו, אך יש צורך בהידור הקוד מהשפה העילית לשפת המכונה של כל מעבד. בעת יצירת דור חדש של מעבד, משתדל היצרן שסט הפקודות של המעבד החדש יכיל את כל סט הפקודות של המעבד הקודם ("תאימות לאחור"), כדי לאפשר הפעלה של תוכנות שפותחו או הודרו עבור המעבד הקודם גם באמצעות המעבד החדש.
בעשרות השנים הראשונות לקיום המחשב המגמה הייתה להרחיב את אוצר ההוראות של המעבד, כך שניתן יהיה לבצע פעולות מורכבות יותר באמצעות הוראה בודדת. מעבדים בעלי אוצר הוראות מורחב מכונים מעבדי CISC (כלומר: Complex Instruction Set Computer). למגמה זו היה יתרון בולט בעת תכנות בשפת סף, אך בעת המעבר לתכנות בשפות עיליות יתרון זה מתגמד.
מניתוח כמותי של התפלגות הפקודות הנוצרות על ידי המהדרים, בין אם בשל מבנה המהדר ובין אם בשל נוהגי כתיבת התוכנה, נמצא כי מגוון הפקודות של המעבד אינו מנוצל, וכי במרבית המקרים (כ־80 אחוז) מנוצל אך מעט (כ־20 אחוז) ממגוון הפקודות של המעבד. כתוצאה מכך חל מהפך מחשבתי בכל הנוגע לעיצוב ארכיטקטורת המעבד הרצויה, אשר הוביל לפיתוח מעבד בעל מספר הוראות מצומצם (RISC - Reduced Instruction Set Computer). מספר ההוראות המצומצם, הביא להקטנת שטח הפיסה, להגברת יעילות המיתוג הפנימי ולמהירות ביצוע גבוהה מאוד של כל הוראה, כך שבמבחני השוואת ביצועים, ובעיקר במבחני יחס תועלת, עשויים ביצועיו של מעבד זה להיות טובים מאלה של מעבד בעל מספר הוראות רב. כיום הבדל זה זניח כי מצד אחד גם מעבדי CISC ממירים את הפקודות לפקודות מיקרוקוד פשוטות ומצד שני התגלה כי היתרון מבחינת התכנון של המעבד של RISC איננו משמעותי (את רוב התוצאות החיוביות ניתן לממש גם ב־CISC), כתוצאה מכך ההבדל המעשי בין שני הסוגים נעלם כמעט לחלוטין.
במעבדי RISC לכל ההוראות בשפת המכונה אורך אחיד, ואילו במעבדי CISC קיימות הוראות באורכים אחדים (לפי קוד ההוראה יודע המעבד את אורכה).
גרמניה
הרפובליקה הפדרלית של גרמניה (בגרמנית: Bundesrepublik Deutschland "בונדסרפובליק דויטשלנד") היא מדינה במרכז אירופה, הנמנית עם המדינות המתועשות החזקות בתבל. בצפונה גובלת גרמניה בים הצפוני, בדנמרק, ובים הבלטי; במזרחה בפולין ובצ'כיה; בדרומה באוסטריה ובשווייץ ובמערבה היא גובלת בצרפת, בלוקסמבורג, בבלגיה ובהולנד. נהרות הריין, האלבה והדנובה חוצים את שטחה, דבר שהקנה לה לאורך ההיסטוריה מעמד של מרכז כלכלי, מסחרי ותרבותי ביבשת כולה.
גרמניה היא איחוד פדרלי הכולל שש-עשרה מדינות (Bundesländer, הגייה ). היא לא התקיימה כמדינת לאום מאוחדת עד 1871, אף שהתרבות והשפה הגרמנית עתיקות הרבה יותר. במשך קרוב למילניום, עד 1806, הייתה גרמניה בבחינת מקבץ מדינות אוטונומיות למדי, במסגרת האימפריה הרומית הקדושה. בין 1815 ל-1867 התאגדו המדינות הגרמניות בקונפדרציה רופפת. תחת אוטו פון ביסמרק אוחדו אותן מדינות ב-1871 למדינה גרמנית מאוחדת, שהפכה באחת לכוח החזק ביותר באירופה. המדינה תועשה במהרה ורשמה זינוק כלכלי עצום, אולם ניסיונותיה להשיג מעמד של מעצמה אירופית מן הדרג הראשון הגיעו לקיצם עם תבוסתה במלחמת העולם הראשונה.
הסנקציות והקנסות שספגה גרמניה ממדינות ההסכמה לאחר המלחמה, וכן קשייה הכלכליים החמורים של רפובליקת ויימאר, יחד עם ייאוש מתבוסת המלחמה, הובילו במידה רבה לעלייתם לשלטון של אדולף היטלר והמפלגה הנאצית, אשר סחפו בסופו של דבר את מדינתם ואת שאר העולם למלחמת העולם השנייה. במהלך מלחמה זו, חוללה גרמניה תחת השלטון הנאצי את השואה – רצח עם ייחודי בתולדות העמים – במהלכה נרצחו באופן שיטתי כשישה מיליון יהודים בשל יהדותם, ממניעים אידאולוגיים-אנטישמיים. כמו כן, במהלך המלחמה, נרצחו בידי הנאצים כחמישה מיליון בני מיעוטים אתניים נוספים.
גרמניה הובסה בשנית ונכבשה על ידי בעלות הברית, ואולם לנוכח המלחמה הקרה פוצלה המדינה למערב גרמניה הפרו-מערבית ולמזרח גרמניה שנתמכה על ידי ברית המועצות. בנפול הקומוניזם והגוש המזרחי, התאחדו שתי הגרמניות תחת הרפובליקה הפדרלית בשנת 1990. השוני בין מזרח ומערב וצמיחה כלכלית איטית, מוסיפים להקשות על המדינה.
כחברת ארגון המדינות המתועשות (G7), כלכלתה של גרמניה היא הרביעית בגודלה בעולם, והיא ידועה בתעשיות הברזל, הפלדה, המיכון והרכב שלה. גרמניה היא עמוד תווך מרכזי של האיחוד האירופי, לצד צרפת, בהיותה אחת ממייסדות הארגון ובפרט כחברה בעלת האוכלוסייה והכלכלה הגדולה ביותר באיחוד. המדינה חברה גם באומות המאוחדות ובברית נאט"ו.
כנשיאה התורנית של האיחוד האירופי, גרמניה מובילה קו תקיף כנגד משבר האקלים והביאה להעלאת יעדי קיצוץ פליטת גזי חממה מ־40% ל־55% עד שנת 2030. כמו כן גרמניה מסייעת לערב הסעודית לעבור לשימוש באנרגיות מתחדשות ולזנוח את תלותה בנפט, על ידי מימון הקמת מפעל אלקטרוליזה בשטחה, שישמש להפקת חשמל נקי מדלקים מזהמים.
שמותיה של גרמניה ואטימולוגיה.
יותר מכל מדינה אירופאית אחרת, גרמניה נקראת בשמות שונים בשפות שונות. הדבר נובע בין היתר מריבוי השבטים שחיו בחבל הארץ הנחשב גרמניה היום, ומהעובדה שגרמניה התאחדה למדינה אחת בשלב מאוחר מאוד ביחס למדינות אירופאיות אחרות.
ניתן לתלות את שמה של גרמניה בשפות השונות בשישה מקורות שונים:
היסטוריה.
גרמניה אוחדה לראשונה כמדינת לאום מודרנית בשנת 1871, עם כינון האימפריה הגרמנית ושוב בשנת 1990 במהלך שנודע כאיחוד מחדש.
זאת אף שהשפה הגרמנית ותחושת ה"גרמניות" קיימות כבר יותר מאלף שנים.
מקרל הגדול ועד לאימפריה הגרמנית: 800–1871.