Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 מספר פאונים במערך על-מישורים Number of faces in an arrangement of hyperplanes מאת: שמעון מגל, בהנחיית פרופ' שריר ופרופ' קפלן, סמינר בגיאומטריה חישובית.

Similar presentations


Presentation on theme: "1 מספר פאונים במערך על-מישורים Number of faces in an arrangement of hyperplanes מאת: שמעון מגל, בהנחיית פרופ' שריר ופרופ' קפלן, סמינר בגיאומטריה חישובית."— Presentation transcript:

1 1 מספר פאונים במערך על-מישורים Number of faces in an arrangement of hyperplanes מאת: שמעון מגל, בהנחיית פרופ' שריר ופרופ' קפלן, סמינר בגיאומטריה חישובית 24/5/09

2 2 מה על הפרק ? מערכים של על-מישורים מערכים של עצמים גיאומטריים אחרים מספר הקודקודים ברמה שהיא לכל היותר k חזרה קצרה משפט ה-Zone למת החיתוך (Cutting lemma) - הכללה

3 3 מושגים - מערך R על-מישור (hyperplane) הוא תת-מרחב אפיני ב- R d ממימד d-1. R R תהי H קבוצה של על-מישורים ב- R d, אזי הקבוצה משרה חלוקה של R d לפאות (faces). חלוקה זאת נקראת מערך של H. ישנם 0-face (קודקודים), 1-face (קשתות), 2-face (מצלועים קמורים), וכן הלאה, d-פאה (פאונים קמורים ממימד d). דוגמאות: 2R2R2R2R R 3R3R3R3R

4 4 מצב כללי – General position מצב כללי: חיתוך של כל k על-מישורים הוא ממימד d-k. אם k>d, אזי חיתוך של k על-מישורים הוא ריק. אנחנו מניחים מצב כללי כי מספר הפאות שחלוקה משרה הוא מירבי במצב כללי (במקרים מנוונים יותר, אנחנו נמנעים מחיתוך), ולכן החסמים שנחשב יהוו גם חסמים עליונים של המקרים הלא כלליים. אנו מגדירים מצב כללי כך, משום שכל על-מישור נפרש על ידי d-1 וקטורים בלתי תלוים אפינית. עבור קבוצה של על-מישורים, אנחנו רוצים למקסם את יחודו של כל על-מישור, ולכן נבחר וקטורים בלתי-תלוים אפינית לכל על-מישור. לכל היותר, אנחנו נבחר לכל על-מישור אחד כזה, ולכן סך הכל – k וקטורים. אם כך, בחיתוך של k על-מישורים יהיו d-k וקטורים בלתי תלויים אפינית, והם יפרשו עצם מימד d-k.

5 5 משפט שהוכח בכיתה R ב- R d מספר התאים (d-פאות) שנוצרים על ידי מערך H, כאשר |H|=n, הוא: נניח לאורך החישובים שלנו ש-d הוא קבוע ולכן,

6 6 משפט ה -Zone The Zone Theorem R הגדרה של zone: יהיו H – קבוצה של n על-מישורים ב-R d, ו-g מרחב על (יתכן כי g ב-H ויתכן כי לא), אזי נגדיר את ה-zone של g להיות קבוצת ה- faces שנוצרים על ידי H, אשר רואים את g. ראיה: F רואה את g אם"ם בהנתן F (face של H), קיימות נקודות x ו -y, x  F, y  g, והקטע הפתוח xy אינו נחתך עם אף אחד מאיברי H. הגדרה שקולה: F רואה את g אם"ם בהנתן F (פאה של H), לכל נקודה x,x  F, קיימת נקודה y  g, כך שהקטע הפתוח xy אינו נחתך עם אף אחד מאיברי H. ניתן לדמיין כי כל על-מישור הוא אטום ו"מסתיר" לעל-מישורים אחרים.

7 7 הגדרה פורמלית הגדרה פורמלית: הגדרה פורמלית שנייה: שתי ההגדרות שקולות משום שאם יש איזשהו רכיב של H ש"מסתיר" לנקודה כלשהי ל-g, והרי רכיב זה הוא תת-מרחב אפיני, אזי הוא מסתיר לכולם.

8 8 דוגמאות ל -zone g – באדום zone(g) - בכחול R

9 9 משפט ה -Zone משפט ה-Zone טוען כי עבור H, קבוצה בעלת n מרחבי על, במימד d ובמצב כללי, מספר הפאות ב- zone(g) הוא: O(n d-1 ) (בהנחה כי d קבוע) הוכחת המשפט תתפרש על גבי חמישה חלקים. במהלך ההוכחה נשתמש בשיטה ההסתברותית, כדי להעריך את הגודל שברצוננו לחשב. לשם ההוכחה נניח כי g  H ו -{g}  H במצב כללי.

10 10 הוכחה – חלק ראשון טענה: מספר התאים (d-פאות) ב-zone במצב כללי הוא O(n d-1 ). הוכחה: ב-H ישנם n על-מישורים. מהנחת המצב הכללי, כולם נחתכים עם g. לכן, נוצרים תאים על g. כל תא שכזה הוא היטל של d-face שנמצא ב-zone, שרואה את g. יתרה מזאת, כל תא שנוצר על g, נחתך עם לכל היותר d-face אחד. כלומר, במקום לאמוד את מספר התאים ב-zone, נתמקד על g ונאמוד את מספר התאים על g. ממשפט משיעור קודם:

11 11 הוכחה – חלק שני ( בסיס אינדוקציה ) עבור d=1, מדובר ב-g שהיא נקודה. ניתן להקיף אותה על ידי שתי נקודות, נקודה אחת או 0 נקודות. לכן, O(2) = O(1)=O(n 1-1 ). נוכיח עבור d=2 כחלק מההוכחה באינדוקציה: למצולע קמור יש אותו מספר של קודקודים וקשתות, לכן נאמוד רק את מספר הקשתות. נניח כי g מאוזן ונתמקד רק במספר הקשתות הנראות מעל g. מתוך הקווים, לכל היותר n חותכים את g. נתבונן בישר - l. נסתכל בנקודה החיתוך שלו עם g. נסמנה b. כעת, נסתכל על קו אחר h. נסמן את נקודת החיתוך שלו עם g ב-a. מהמצב הכללי, גם - l ו - h נחתכות. נסמן נקודה זו ב - u ונסתכל על קשת uv שנמצאת על ישר h. נגדיר את uv כקשת ימנית רואה אם " ם הנקודה b ימנית ל-a. באופן דומה, נגדיר קשת שמאלית רואה אם"ם הנקודה b שמאלית ל-a. g x y u v l1 ab l h x

12 12 נראה כי לכל ישר ישנה רק קשת ימנית אחת לכל היותר. נניח בשלילה, כי יש קשת ולה שתי קשתות ימניות רואות, אזי נסמנן xy ו-uv. הן אינן נחתכות ולכן אחת מתחת לשניה. נניח בה"כ uv מתחת ל-xy. (נשתמש באותם הסימונים כמקודם) xy היא קשת ימנית רואה. כעת, החלק של g שהוא מימין ל-a נחסם עבור xy בגלל h, והחלק משמאל ל-a נחסם בגלל l. סתירה. כעת, מספר הקשתות הימניות הרואות הן O(n) ובאופן סימטרי גם הקשתות השמאליות הרואות הן O(n) וכן הקשתות שעשויות להופיע מתחת ל-g, גם משיקולי סימטריה, O(n). נוסיף, את הקשתות שנחתכות עם g, נקבל O(n). מספר הקודקודים זהה למספר הקשתות, כאמור, וכן בנוגע ל-2 פאות: O(n 2-1 ). לכן, סך הכל: O(n) = O(n 2-1 )

13 13 חלק שלישי של ההוכחה – אינדוקציה : מעבר מ -d-1 ל -d כעת, d>2. נשתמש בשיטה ההסתברותית. כדי לפשט את הדגימה שאנחנו עושים, נדגים אותה ראשית על d-1-faces (נקראים גם facets) ובשלב הרביעי נכליל אותה ל-d-k- faces. נסמן f(n) להיות מספר ה-d-1-faces בzone. אנחנו רוצים לאמוד את f(n). ראשית, נבחר h  H. נצבע אותה באדום ואת שאר איברי h נצבע בכחול. נגדיר facet כחול אם הוא מוכל בעל-מישור כחול. סיכוי לבחור facet כחול הוא. לכן, בתוחלת יש לנו על-מישורים כחולים.

14 14 מצד שני, נסתכל כעת על הסידור של מרחבי העל הכחולים בלבד. אזי, f(n-1) הוא מספר ה-d-1-faces (facets) אשר ב-zone בסידור הזה. כעת, נשיב את h לסידור ונראה בכמה הוא מעלה את מספר ה- facets הכחולים ב-zone. h גדיל את מספר ה-facets הכחולים אם"ם הוא מחלק facet F שראתה את g לשני חלקים,F 1 ו-F 2 שכל אחד מהם רואה את g. אם זה קורה, אזי בפרט h  F רואה את.h  g לכן, ניתן להסתכל על המקרה בו h  g הוא ממימד d- 2 ואחנו סופרים את מספר ה-facets של ה-Zone של h  g, את זה אנחנו יודעים מהנחת האינדוקציה– O(n d-2 ).

15 15 לכן הוספה של האדום בחזרה עשויה להוסיף לנו לכל היותר O(n d-2 ). הערכנו את מספר ה-facets הכחולים בשני דרכים, ולכן מתקיים:

16 16 חלק רביעי של ההוכחה עבור k: 1  k  d-2. נתמקד כעת על d-k-פאות, ונגדיר: f d-k (n) כמספר אותו אנחנו רוצים לאמוד. כלומר, מספר הd-k- faces ב-zone, במערך שנוצר ע"י H בגודל n. נצבע אחד באדום ואת השאר בכחול. נגדיר d-k-face להיות כחול אם החיתוך שלו עם h האדום ריק. ההסתברות לכך היא: d-k-face נוצר על ידי חיתוך של k על-מישורים (מהגדרת המצב הכללי) ולכן ההסתברות היא כשם שההסתברות שמרחב-העל לא משתתף ביצירה של ה-face-d-k:

17 17 כלומר: הוא תוחלת ה-d-k-faces הכחולים. מאידך, באופן דומה למקודם, נסתכל על המערך ללא האדום, דהיינו f d-k (n-1). נוסיף כעת את האדום. האדום תורם לנו d-k-face אם הוא מחלק d-k-face, F, שראה את g לשני חלקים שרואים את g. משום כך, גם החיתוך של h עם g, h  F ( שהוא ממימד d-k-1) רואה את.h  g אם כך, h  F הוא (d-1)-k-face של h  g בעל מימד d-2. לכן, מהנחת האינדוקציה: מספרם: O(n d-2 ) נקבל אם כך,

18 18 עבור k<d-1, נקבל: כלומר,

19 19 חלק חמישי הנחנו במעבר הקודם כי k<d-1. זאת משום שעבור k=d-1 ו-k=d, אנחנו מקבלים מן השיטה הזאת: O(n d-1 logn) ו-O(n d ). צריך, אם כך, שיטה אחרת, עבור המקרים הללו (קודקודים וקשתות). ראשית, נציין שוב כי מספר הקודקודים והקשתות בתוך מצולע קמור, זהה, נוכל להתמקד רק על אחד מהם. נתמקד על קודקודים. יהי קודקוד. בפרט, הוא נמצא באיזשהו 3-face (כי הוא נוצר ע"י חיתוך של d על-מישורים, שניתן לראות גם כחיתוך של d-3 מרחבי על עם 3 מרחבי על).

20 20 בתוך 3-face, מספר הקודקודים הוא לא יותר מפי שלושה ממספר ה-2-faces בתוך ה-3-face (לפי משפט בפרק 5). כל 2-face יכול להופיע מספר חסום של פעמים ב- 3-faces. נקבל אם כך שמספר הקודקודים, f 0 (n) פורפורציונלי לכל היותר למספר ה-2-faces ב-zone ולכן f 0 (n)=O(n d-1 ). כעת, לפי מה שציינו לעיל, גם מספר הקשתות שווה לערך זה: f 1 (n)=O(n d-1 ). לבסוף, נסכם: f 0 (n)+f 1 (n)+…+f d (n)  O(dn d-1 ) = O(n d-1 )

21 21 מקרים כלליים של zone ניתן להכליל את השאלה של מספר faces ב-zone ולשאול עבור קבוצות של עצמים גיאומטריים ב-R d : A ו-Z, מהו מספר ה-faces של zone z  Z עבור חלוקה של a 1,…,a n  A. שאלות אלו מובילות לתוצאות מעניינות. אחת מהן היא המקרה בו Z היא תת-מרחב-אפיני מדרגה k. עבור מערך של n על-מישורים, מתקבלת התוצאה (מספר faces): כאשר: אי-זוגי  =1  d+k זוגי  =0  d+k

22 22 הטריק הבא קושר קשר בין שאלת ה-zone לשאלה אחרת: בהנתן השאלה, מהו מספר ה-faces של zone של קטע ישר במערך שנוצר על ידי n קטעים ישרים: z

23 23 שימוש אלגוריתמי ל -zone – בניית המערך ב -R 2 ב -O(n 2 )

24 24 למת החיתוך - הכללה

25 25 למת החיתוך - הכללה ראינו בפרק מספר 4 את למת החיתוך וכעת נוכיח אותה שוב, וכן נכליל את המשפט למימדים גבוהים יותר: למת החיתוך במישור: בהנתן n קווים במישור, ניתן למצוא לכל r>1, טריאנגולציה של המישור ל-O(r 2 ) כך שכל משולש נחתך על ידי קווים (בשטחו הפנימי). קוראים לזה גם

26 26 הקדמות נרצה לדגום באמצעות ניסויים ברנוליים בלתי תלויים. לשם כך, נבנה דגימה S בצורה הבאה: נסתכל על כל איבר h  H ונצרף אותו ל-S בהסתברות. שיטות ישירות אינן עובדות, ולכן ננקוט באסטרטגיה הבאה: פירוק למשולשים בשלושה שלבים: שלב א - נבחר S, דגימה של ישרים ונבנה באמצעותו פירוק למשולשים של המישור. שלב ב – נראה כי יתכנו משולשים אשר דרכן עוברים יותר מדי ישרים ונטפל בהם באמצעות פירוק למשולשים נוסף. שלב ג – נראה כי יתכנו גם טרפזים בפירוק הראשוני, ונטפל בהם.

27 27 החלוקה הראשונית ( שלב א ') ציינו כי השלב הראשון של הטריאנגולציה שלנו הוא לחלק את המישור למשולשים, עבור קבוצת דגימות. כעת נראה איך. במקרה המישורי, קל יותר לבנות פירוק מאונך (vertical decomposition): מכל קודקוד שנוצר ע"י S (מפגש של שני ישרים ב-S), נוריד אנך (יחסית לציר ה-x) ונעלה אנך עד אשר האנכים יפגשו איזשהו קו אחר ב-S. דוגמא:

28 28 שתי בעיות עם החלוקה בעיה ראשונה - יתכן כי לא כל משולש שנקבל מקיים את התכונה שהוא (החלק הפנימי של המשולש) נחתך עם לכל היותר ישרים. בעיה שניה - קבלנו גם טרפזים ולא רק משולשים. את הבעיה הזאת נפתור על ידי חלוקה של כל טרפז לשני משולשים.

29 29 שלב ב ' – טיפול בבעיה הראשונה נסמן : I(  ) – קבוצת הישרים שחותכים את החלק הפנימי של המשולש . n  = |I(  )| נגדיר יתרה של , כעת, אם 1t  , אזי n   n/r, ונאמר כי  הוא אזרח טוב בטריאנגולציה. ה - , כך 1t  >, זקוקים לטיפול נוסף. נחלק אותם למשולשים פעם נוספת עד אשר כל אחד מהם נחתך עם n/r קווים לכל היותר. כיצד נעשה את זה?

30 30 עבור כל משולש בעייתי,  : נתבונן ב -I(  ) תוך התעלמות מ -  ונחלק לפיו ל- 1/t  -cutting(כלומר, ניצור טריאנגולציה כך שבכל משולש יעבור לכל היותר n  /t  ישרים). לאחר מכן, נחתוך את הטריאנגולציה שהתקבלה עם , ונקבל משולשים, מרובעים, מחומשים ומשושים. כל אחד מהם נחלק למשולשים. במקרה הגרוע ביותר נקבל משושים, כי שני משולשים נחתכים זה עם זה לכל היותר בשש נקודות. מכיוון שהמשולש נחתך עם לכל היותר n  /t  ישרים, הוא למעשה נחתך עם n/r ישרים ונקבל את ה-1/r- cutting שרצינו.

31 31 מכיוון שהמשולש נחתך עם לכל היותר n  /t  ישרים, הוא למעשה נחתך עם n/r ישרים ונקבל את ה-1/r-cutting שרצינו. נראה כעת כיצד ליצור את החלוקה.

32 32 למת תת - חלוקה ( חלוקה כמעט אופטימלית ) לכל קבוצה סופית של ישרים ו-u>1, ישנה 1/u-cutting אשר מורכבת מלכל היותר מ- משולשים. כאשר K קבוע. נוכיח את הלמה בהמשך. הערה: איננו יכולים להשתמש בחסם זה ישירות על המישור כולו, כי החסם גס מדי. יחד עם זאת, עבור תתי-החלוקה אליהן התייחסנו, הן מספיקות. כלומר, לב ההוכחה הוא ההבנה שמספר המשולשים שדורשים טיפול נוסף אינו גדול מדי.

33 33 מסקנה מן הלמה מספר המשולשים ב-1/r-cutting חסום על ידי (בכל שלב לוקחים את המשולש שנוצר על ידי החלוקה הראשונית או זה שנוצר באמצעות החלוקה המשנית (שיתכן כי יצרה משושה במקרה הגרוע ביותר [המקיים את התנאי של מספר הישרים העוברים דרכו] ולכן, נחלקו ל-4 משולשים שכל אחד מהם מקיים את התנאי).

34 34 קבלנו משולשים אך גם נוצרו טרפזים. נתמקד כעת על טרפזים – וגם את אותם משולשים שנוצרו, נתייחס אליהם כטרפזים (או שנאחד שניים מהם לכדי טרפז). נסמן : T (S) – מספר הטרפזים שמשרה S על המישור ביחד עם שיטת החלוקה שהוצעה לעיל. טענה: יהיו H, קבוצה של n ישרים במצב כללי; p=r/n, כאשר 1  r  n/2. S יבחר ע"י מאורעות בלתי תלווים, כך: על כל ישר ב-H נגריל מטבע עם לצרפו או לא. יהי t  0. נסמן T (S)  t כקבוצת הטרפזים אשר כמות הישרים שחותכים אותה גדול מ- אזי עבור C קבוע ומוחלט: יופיע ללא הוכחה. שלב ג ' – טיפול בבעיה השניה

35 35 הוכחה של למת תת - חלוקה - כמעט - אופטימלית לכל קבוצה סופית של ישרים ו-u>1, ישנה 1/u-cutting אשר מורכבת מלכל היותר מ- משולשים. כאשר K קבוע. הוכחה: אנו מחפשים 1/u-cutting. נסמן r=Aulog(u+1), עבור A מספיק גדול. נבחר S (כפי שהוצע בשקף הקודם). נבצע חלוקה ראשונית. נקבל מן החלוקה הראשונית משולשים וטרפזים, כאמור. עבור t=0, עבור t=Alog(u+1), עבור A גדול מספיק. לכן, מכאן, קיים S כך זה אומר, שיש לנו 1/u-cutting לתוך O(r 2 ) = O((ulog(u+1)) 2 ) טרפזים.

36 36 הוכחה של למת החיתוך כדי ליצור 1/r-cutting, אנו בוחרים S, קבוצת דגימות של ישרים, עם הסתברות r/n. נסמן T = T (S), הפירוק האנכי שלה. נעדן כל טרפז עם יתרה 1<t  באמצעות חלוקת-עזר 1/t  -cutting. לפי מסקנה, גדול זה חסום ולכן נעריך אותו באמצעות התוחלת, תוך שימוש בטענה:

37 37 למת החיתוך - הכללה למימד כלשהו יהיו: d  1 – המימד. נניח כי זהו מספר קבוע. H קבוצה של על-מישורים ב-R d. r פרמטר 1<r  n. אזי: ישנה 1/r-cutting של H בגודל O(r d ). כלומר, חלוקה ל- O(r d ) סימפלקסים* מוכללים, כך שכל סימפלקס נחתך בחלקו הפנימי עם לכל היותר n/r על-מישורים של H.

38 38 סימפלקסים ( פתוחים ) הכללה של משולש: במימד R d d+1 קודקודים אשר כל שניים מהם מחוברים בקטע, וכל קטע כזה נמצא על ישר שהוא בלתי תלוי אפינית בישרים האחרים. לחלופין, הגדרה רקורסיבית: ב-R, סימפלקס הוא קטע (פתוח ולא מנוון). ב-R d סימפלקס נוצר כך: ניקח סימפלקס ב-R d-1 נוסיף לכל קודקוד שלו קורדינאטה d זהה. כעת, ניצור נקודה חדשה בעלת קורדינאטה d שונה מכל הקודקודים האחרים, ונבחר באמצעות קטע קודקוד זה לכל אחד מהקודקודים האחרים. כעת, נסובב את הסימפלקס, והוא עדיין ישאר סימפלקס. דוגמאות:

39 39 תיאור הפירוק לסימפלקסים צריך להכליל את המושג של פירוק מאונך. נקרא להכללה זאת טריאנגולצית-קודקוד-תחתון. עבור פוליטופ (הכללה של מצולע למימדים גבוהים יותר) קמור ממימד k, נגדיר את הטריאנגולציה בדרך הבאה: עבור k=1, הפוליטופ הוא קטע של קו ישר, והוא בעצמו הטריאנגולציה. עבור k>1, יהי v קודקוד בפוליטופ, בעל הקורדינאטה האחרונה הקטנה ביותר (במקרה של שיוויון נכריע לפי קורדניאטה קודמת וכן הלאה). נבצע טריאנגולציה על כל אחת פאה של הפוליטופ (באופן רקורסיבי). כעת, נעביר את סימפלקסים מ-v לכל סימפלקס אחר ש-v איננו קודקוד שלו.

40 40 טיפול בפוליטופים שאינם חסומים נחסום באמצעות "קופסא" (פוליטופ ממימד d) מספיק גדולה ונתייחס לטריאנגולציה של קופסא זו כטריאנגולציה של הפוליטופ שאינו חסום. זה מספק לרב הישומים של למת החיתוך.

41 41 הוכחה קבלנו טריאנגולציה T(S) עבור כל S, קבוצת דגימות. |T(S)| = O(|S| d ) – ראשית, מספר הקודקודים הנוצרים על ידי קבוצה של |S| מישורי-על, הוא כי כל קודקוד נוצר מחיתוכם של d מישורי- על. מצד שני, מספר הסימפלקסים בכל תא, פורפורציונלי למספר הקודקודים בתא (בהנחה כי d קבוע), ולכן סך הכל מספר הסימפלקסים, הוא O(|S| d ).

42 כעת, נזכר כי |S| הוא למעשה משתנה מקרי של ניסוי ברנולי בלתי תלויים. |S| = |S 1 |+|S 2 |+…+|S n |. כאשר H היא קבוצה של מישורי-על שגודלה n. כלומר, ניתן להתייחס ל-S כסכום של משתנים מקריים מהסוג |S i | כאשר |S i | הוא 1, אם איבר i נכנס לקבוצה S בניסוי הברנולי. אחרת, |S i | הוא 0. טענה בהסתברות: יהיה X כך כאשר כל ה-X i הם משתנים מקריים בלתי תלויים שמקבלים 1 בהסתברות p ומקבלים 0 בהסתברות 1- p, אזי קיים עבור כל d≥1 קיים קבוע c d כך: 42

43 לפיכך: מליניאריות של תוחלת: מהטענה ההסתברותית: כזכור, קבענו את p כ-p=r/n, ולכן: הערה: הוכחנו כי שיטה זו של חלוקה משיגה מספר סימפלקסים בגודל הרצוי. יחד עם זאת, לא הוכחנו כי כל סימפלקס מקיים את התכונה שרק n/r מישורי-על עוברים דרכו. במידה וישנם סימפלקסים אשר אינם מקיימים את התכונה הרצויה, אנחנו חוזרים על פירוק של כל סימפלקס כזה לסימפלקסים נוספים באמצעות שיטה דומה ונעזרים במשפטים אנאלוגיים לאלו שראינו במישור המאפשרים לנו לחסום את מספר הסימפקלסים החדשים שיוצרו. חלק זה הוא ללא הוכחה. 43


Download ppt "1 מספר פאונים במערך על-מישורים Number of faces in an arrangement of hyperplanes מאת: שמעון מגל, בהנחיית פרופ' שריר ופרופ' קפלן, סמינר בגיאומטריה חישובית."

Similar presentations


Ads by Google