210 likes | 512 Views
אלגברה בוליאנית - אלגברת המיתוג:. George Boole – 1854 Boolean Algebra Claud Shannon – 1938 Daul Valued Boolean Algebra (Information Theory) מושגי יסוד:
E N D
אלגברה בוליאנית - אלגברת המיתוג: George Boole – 1854 Boolean Algebra Claud Shannon – 1938 Daul Valued Boolean Algebra (Information Theory) מושגי יסוד: * B - קבוצה (סופית, אם |B| = 2 אזי Boolean Algebra ) * •- אופרטור בינארי: SSS:•(דוגמא: S – הטבעיים עם חיבור) * סגירות של “•”: הטוח של • הינו ב-S דוגמא שלילית : S – הטבעיים עם חיסור * קיבוציות - אסוציאטביות: (X •Y) • Z = X • (Y •Z) * חילופיות - קומטטיביות:X •Y = Y • X * איבר יחידה: 1 • X = X • 1 = X (For all X in S) * הופכיותFor all X there exists Y such that: X •Y = 1 לאמתקיימת באלגברה בוליאנית * פילוגיות – דיסטריבוטיביות: שני אופרטורים + x(y+z) = xy + xz לאשדה
הגדרה אקסיומטית: * B - קבוצה ; (2= |B| אלגברת המיתוג) * שני אופרטורים: + (OR ,) ;•)AND, ) 1. B סגורה ביחס ל"+" ו-"•" . 2. א. קיים איבר יחדה ביחס ל-"+" x+0 = 0+x = x ב. קיים איבר יחידה ביחס ל-"•" . x•1 = 1•x = x 3. חוק החילוף: x+y = y+x x•y = y•x 4. מתקיימת פילוגיות: x•(y+z) = x•y + x•z x+(y•z) = (x+y) • (x+z) 5. משלים: לכל x קיים x’(not(x), ¬x) כך: x+x’ = 1(x or (not(x)) = True) x•x’ = 0(x and (not(x)) = False) 6. קיימים לפחות שני איברים: x,yB ( |B| = 2 אלגברת המיתוג)
הערות והארות: AND 5v OR * אסוציאטיביות מתקיימת אך איננה אקסיומה: (X •Y) • Z=X• (Y•Z) * חוק הפילוג מתקיים עבור +, •: לא מתקיים באלגברה סטנדרטית (ממשיים) * המשלים לא קיים באלגברה סטנדרטית * קיימות אלגברות בוליאניות עם 2< |B| : אלגברה בוליאנית דו ערכית (מיתוג):{1 , 0}= B AND OR NOT * כל 6 התנאים מתקיימים
הוכחת תכונות ומשפטים בא"ב: • דוגמא: x·x = x • כדי להוכיח תכונות /משפטים בא"ב נשתמש ב-6 הכללים (האקסיומות) המגדירות א"ב. • ניתן להוכיח משפטים גם ע"י רשימת הטבלה המתאימה (Brute Force) עיקרון הדואליות: כל בטוי נכון בא"ב ניתן להחלפה בבטוי שגם יהיה תקף ע"י: x+(y•z)•+ x•(y+z)0 1 דוגמא:x •1 = xx + 0 = x
משפטים יסודיים: • x+x = xx•x = x • x+1 = 1x•0 = 0 • (x’)’ = x • (x•y)•z = x•(y•z)(x+y)+z = x+(y+z) • משפט דה- מורגן: • (x•y)’ = x’+y’ • (x+y)’ = x’•y’ • צמצום: x+(x•y) = xx •(x+y) = x • משפט: x+(x’•y) = x+y {(X1 + X2+ .. + Xn)’= X1’. X2’ … . Xn’ }
משפט: x+(x’•y) = x+y הוכחה: א. פילוגיות (כלל 4) : x+(x’•y) = (x+x’) • (x+y) ב. כלל המשלים (1= (x+x’ : (x+x’)•(x+y) = 1•(x+y) ג. איבר יחידה (x•1 = 1•x = x) : 1•(x+y) = x+yQED לעיתים נזדקק לאינדוקציה בנוסף לכללי ההיסק הבסיסיים (כלל דה – מורגן המוכלל).) קדימות אופרטורים: 3 2 1 0 ( ) NOT AND OR ( ) ¬,( )’ • , ,+ דוגמא: (x + (y • (z)’)) x + y z’ משמיטים אם ברור מהתוכן
פונקציות בוליאניות: {0,1}: {0,1}n * פונקציה בוליאנית בעלת n משתנים. * כל משתנה יכול להופיע ושלילתו. *טבלת האמת בעלת 2nכניסות . *יצוג ע"י סכימת שערים: x x+y y x x’ x x•y y x’ x’•(y+z) x y z
משלים של פונקציה כאשר הפונקציה "צפופה" (קימים הרבה קלטים עבורם ƒ(x,…,z) = 1 ), כדאי לממש את ההופכי/ המשלים של ƒ ולהפוך בסוף את התוצאה. כלל דה- מורגןDe – Morgan Rule (x + y)’ = x’ • y’ (x • y)’ = x’ + y’ הכלל מוכלל באינדוקציה ורקורסיה ליותר משני משתנים ויותר מקינון אחד של ביטויים. (x+y’z (t’+sqx’))’ = (x’ • (y’z ( t’ + sqx’))’) = x’ ( y+z’ + ( t’+ sqx’)’) = x’ ( y+z’ + t •(s’ + q’ + x)) = x’y + x’z’ + x’ts’ + x’tq’ + x’tx שמוש ב- דה-מורגן 0= סכום מכפלות
x’y’z’+x’yz’+xyz כל פונקציה בוליאנית ניתנת לכתיבה כסכום מכפלות: צורות קנוניות: (x+y+z’) • (x’+y+z’) ומכפלת סכומים: מכפלות סכומים • בהינתן טבלת אמת של פונקציה f: • נרשום את f כמכפלת סכומים ע"י לקיחת Mi עבורם f=0. • או: • 2) נרשום את f כסכום מכפלות ע"י לקיחת mi עבורם f=1. minterm (x+y+z’) (x’+y+z’) x’y’z’+x’yz’+…
דוגמא לכתיבת פונקציה בצורה סטנדרטית: • בהינתן מכפלה של סכומים לא מלאה נרצה לעיתים להרחיבה כדי להשתמש ביחידות סטנדרטיות (ספרתיות). • נפעלבדומה לסכום מכפלות
הרחבה לצורה סטנדרטית פעולות דומות ניתן לבצע עבור מכפלת סכומים. המרה בין צורות: נניח כי ורוצים לרשמה כמכפלת סכומים.
אופרטורים לוגיים נוספים: יש פונקציות
שערים לוגיים ספרתיים:שערים סטנדרטיים שנארזים בסיליקון. A F F=A • B AND B A F=A+B OR F B F=A’ Inverter A A’ A A F=A Buffer A F=(A • B)’=A’+B’ NAND F B A F=(A+B)’=A’ • B’ NOR F B
F = XY’ + X’Y = X Y XOR (1 X<>Y) eXclusive OR F = XY + X’Y’ = X * Y Equivalence (1 X==Y) eXclusive NOR A F B A F B
xyz xyz (x y) z = x (y z) = שערים מרובי כניסות: Semantics of NOR? =
abc abc abc שעריNOR/NAND מרובי כניסות: NAND (A,B,C) = (A*B*C)’ NOR (A,B,C) = (A+B+C)’ שעריXOR מרובי כניסות:
מערכות שלמות-UniversalSystems • ראינו שכל פונקציה בוליאנית ניתנת למימוש ע"י סכום מכפלות או/ו מכפלת סכומים. לכן כל פונקציה בוליאנית ניתנת למימוש ע"י קבוצת האופרטורים: • NOT, AND, OR {‘, +, *} • קבוצת האופרטורים הינה שלמה (Universal) אם ניתן לממש בעזרת הפעלות חוזרות של אופרטורים מהקבוצה כל פונקציה בוליאנית. • טענה:א. {NOT, OR} היא שלמה • ב. {NOT, AND}היא שלמה • הוכחה: (עבור א) • נסתכל על F כלשהיא. יתכנו שלשה מקרים: • א. F = (G)’ השתמש ב- NOT. • ב. F = G+Q השתמש ב- OR. • ג. F = G*QF = ((G*Q)’)’ = (G’+Q’)’ • שימוש בOR וNOT בלבד! • זהו צעד האינדוקציה ובסיס האינדוקציה
NOR and NAND- Universal Systems X’ = (X • X)’ = NAND(X,X) מכיוון ש - {NOT, AND} היא שלמה ניראה כי ניתן לממש את AND ו-NOTע"י NAND בלבד A • B = ((A • B)’)’ = )NAND)A,B))’= NAND(NAND(A,B),NAND(A,B)) מכיוון ש - {NOT, OR} היא שלמה ניראה כי ניתן לממש את OR ו-NOTע"י NOR בלבד X’ = (X + X)’ = NOR(X,X) A + B = ((A + B)’)’ = )NOR)A,B))’= NOR(NOR(A,B),NOR(A,B)) Equivalence A A F F B B
C: 1 0 B: 0 1 A: 0 1 A*B: 0 1 F: 1 1 ? חוצץאחד השימושים של חוצץ הוא לפתור בעיות תזמון. CAB A*B+C =F 1 0 1 0 1 0 Delay Time 1 0 1 1 “Spikes”ניתן לפתור ע"י תכנון מתאים או/ו הוספת חוצצים. CA (C + A) (C + B) = AB + C CB