Presentation is loading. Please wait.

Presentation is loading. Please wait.

אלגברה בוליאנית יהודה אפק, יוסי מטיאס אוניברסיטת תל אביב

Similar presentations


Presentation on theme: "אלגברה בוליאנית יהודה אפק, יוסי מטיאס אוניברסיטת תל אביב"— Presentation transcript:

1 אלגברה בוליאנית יהודה אפק, יוסי מטיאס אוניברסיטת תל אביב
אלגברה בוליאנית יהודה אפק, יוסי מטיאס אוניברסיטת תל אביב מבוסס על הרצאות של יורם זינגר, האוניברסיטה העברית י"ם

2 אלגברה בוליאנית - אלגברת המיתוג:
George Boole –  Boolean Algebra Claude Shannon –  Dual Valued Boolean Algebra (Information Theory) מושגי יסוד: * B - קבוצה (סופית, אם |B| = 2  אזי Boolean Algebra ) * • - אופרטור בינארי: SS  S :• (דוגמא: 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) = xy + xz לא שדה

3 הגדרה אקסיומטית: x+(y•z) = (x+y) • (x+z)
* 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,yB ( |B| = 2 אלגברת המיתוג)

4 הערות והארות: AND OR * כל 6 התנאים מתקיימים
5v OR * אסוציאטיביות מתקיימת אך איננה אקסיומה: (X •Y) • Z=X• (Y•Z) * חוק הפילוג מתקיים עבור +, •: * המשלים לא קיים באלגברה סטנדרטית * קיימות אלגברות בוליאניות עם 2< |B| : אלגברה בוליאנית דו ערכית (מיתוג): {1 , 0}= B AND OR NOT X.Y Y X 1 X+Y Y X 1 X’ X 1 * כל 6 התנאים מתקיימים

5 Venn’s diagrams

6 משפטים יסודיים:

7 הוכחת כלל דה מורגן (X+Y)’ X+Y Y X 1 X’.Y’ Y X 1

8 משפט: x+(x’•y) = x+y הוכחה:
א. פילוגיות (כלל 8) : 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+y QED קדימות אופרטורים: ( )  NOT  AND  OR ( )  ¬,( )’  • ,   ,+ דוגמא: (x + (y • (z)’))  x + y z’ משמיטים אם ברור מהתוכן

9 פונקציות בוליאניות: {0,1} : {0,1}n x x+y y x x’ x x•y y x’ x
* כל משתנה יכול להופיע ושלילתו. * טבלת האמת בעלת 2n כניסות . *יצוג ע"י סכימת שערים: x x+y y x x’ x x•y y x’ x x’•(y+z) y z

10 משלים של פונקציה כלל דה- מורגן De – Morgan Rule שמוש ב- דה-מורגן 0=
כאשר הפונקציה "צפופה" (קימים הרבה קלטים עבורם ƒ(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= סכום מכפלות

11 צורות קנוניות: x’y’z’+x’yz’+x’yz+xy’z’+xyz’+xyz (x+y+z’) (x’+y+z’) •
כל פונקציה בוליאנית ניתנת לכתיבה כסכום מכפלות: x’y’z’+x’yz’+x’yz+xy’z’+xyz’+xyz (x+y+z’) (x’+y+z’) ומכפלת סכומים: מכפלות סכומים סימון גורם f z y x M0 x+y+z m0 x’y’z’ 1 M1 x+y+z’ m1 x’y’z M2 x+y’+z m2 x’yz’ M3 x+y’+z’ m3 x’yz M4 x’+y+z m4 xy’z’ M5 x’+y+z’ m5 xy’z M6 x’+y’+z m6 xyz’ M7 x’+y’+z’ m7 xyz בהינתן טבלת אמת של פונקציה f: נרשום את f כמכפלת סכומים ע"י לקיחת Mi עבורם f=0. או: 2) נרשום את f כסכום מכפלות ע"י לקיחת mi עבורם f=1. minterm (x+y+z’) (x’+y+z’) x’y’z’+x’yz’+…

12 דוגמא לכתיבת פונקציה בצורה סטנדרטית:
f2 f1 z y x 1 2 3 4 5 6 7 בהינתן מכפלה של סכומים לא מלאה נרצה לעיתים להרחיבה כדי להשתמש ביחידות סטנדרטיות (ספרתיות). נפעל בדומה לסכום מכפלות

13 הרחבה לצורה סטנדרטית פעולות דומות ניתן לבצע עבור מכפלת סכומים.
המרה בין צורות: נניח כי ורוצים לרשמה כמכפלת סכומים.

14 אופרטורים לוגיים נוספים:
יש פונקציות הערות שם סמל פונקציה F0=0 AND X • Y F1=xy X/Y F2=xy’ F3=x Y/X F4=x’y F5=y XOR X+Y F6=xy’+x’y OR F7=x+y universal NOR X Y F8=(x+y)’ Equivalence F9=xy+x’y’ F10=y’ F11=x+y’ F12=x’ F13=x’+y NAND X Y F14=(xy)’ F15 = 1

15 שערים לוגיים ספרתיים: שערים סטנדרטיים שנארזים בסיליקון.
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

16 A F = XY’ + X’Y = X Y XOR ( X<>Y) eXclusive OR F B A F = XY + X’Y’ = X * Y Equivalence ( X==Y) eXclusive NOR F B

17 שערים מרובי כניסות: xyz xyz Semantics of NOR? (x y) z = x (y z) = =

18 שעריNOR/NAND מרובי כניסות:
abc NAND (A,B,C) = (A*B*C)’ abc NOR (A,B,C) = (A+B+C)’ שעריXOR מרובי כניסות: abc

19 מערכות שלמות -Universal Systems
ראינו שכל פונקציה בוליאנית ניתנת למימוש ע"י סכום מכפלות או/ו מכפלת סכומים. לכן כל פונקציה בוליאנית ניתנת למימוש ע"י קבוצת האופרטורים: NOT, AND, OR {‘, +, *} קבוצת האופרטורים הינה שלמה (Universal) אם ניתן לממש בעזרת הפעלות חוזרות של אופרטורים מהקבוצה כל פונקציה בוליאנית. טענה: א. {NOT, OR} היא שלמה ב. {NOT, AND}היא שלמה הוכחה: (עבור א) נסתכל על F כלשהיא. יתכנו שלשה מקרים: א. F = (G)’ השתמש ב- NOT. ב. F = G+Q השתמש ב- OR. ג. F = G*Q F = ((G*Q)’)’ = (G’+Q’)’ שימוש בOR וNOT בלבד!

20 NOR and NAND - Universal Systems
מכיוון ש - {NOT, AND} היא שלמה ניראה כי ניתן לממש את AND ו-NOT ע"י NAND בלבד X’ = (X • X)’ = NAND(X,X) 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

21 פישוט פונקציות ע"י מפות קרנו:
y E. Veitch, 1952 ; M. Karnaugh 1953 טבלה של שני משתנים: y 1 m0 m1 m2 m3 x 1 x’y’ x’y xy’ xy x y ייצוג ערכים: y 1 x f = m1+m2+m3 y f = x+y x x z טבלה של שלושה משתנים: yz 00 01 11 10 x’y’z’ x’y’z x’yz x’yz’ 1 xy’z’ xy’z xyz xyz’ 00 01 11 10 m0 m1 m3 m2 1 m4 m5 m7 m6 x x y ** כל שני ריבועים סמוכים במפה נבדלים במשתנה אחד בלבד. m2 + m6  x’yz’ + xyz’  yz’

22 f=z’ + xy 1. z’ 2. xy פונקציה "פשוטה" ריבועים גדולים y 1 x z
00 01 11 10 1 1. z’ x 2. xy f=z’ + xy z f = x’y’z’ + xy’z’ + xyz + xyz’ + x’yz’ כדי לפשט את הפונקציה נחפש ריבועים "מוכללים" גדולים שיכסו את ה"1" פונקציה "פשוטה" ריבועים גדולים

23 דוגמא נוספת: f(x,y,z) = (0,1,5,6,7) y 1 x z f = x’y’ + xz + xy
00 01 11 10 1 f = x’y’ + y’z + xy y’(x’+z) לא ניתן לפישוט ע"י מפת קרנו. הפישוט המינימלי לא תמיד יחיד 2 3 1 6 7 5 4 f = x’y’ + xz + xy לא ניתן לפישוט ע"י מפת קרנו. x(y + z) x z

24 מפה של ארבעה משתנים: מפה של חמישה משתנים:
y yz wx 00 01 11 10 1 f=x’z’ + w’z’ x w z מפה של חמישה משתנים: C 1 B A E D E f = AC’ + AD’E’ + CDE’ + B’D’E’

25 איברים / צירופים אדישים:
y 00 01 11 10 1 x w z   “Don’t Care” ניתן להשים ל"1" או "0“ (לאו דווקא בעקביות) f = z’w + zx סכום מכפלות


Download ppt "אלגברה בוליאנית יהודה אפק, יוסי מטיאס אוניברסיטת תל אביב"

Similar presentations


Ads by Google