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

Slides:



Advertisements
Similar presentations
Completeness and Expressiveness. תזכורת למערכת ההוכחה של לוגיקה מסדר ראשון : אקסיומות 1. ) ) (( 2. )) ) (( )) ( ) ((( 3. ))) F( F( ( 4. ) v) ( ) v ((
Advertisements

מבוא למדעי המחשב לתעשייה וניהול
©Silberschatz, Korth and Sudarshan4.1Database System Concepts סכימה לדוגמא.
מבוסס על הרצאות של יורם זינגר, האוניברסיטה העברית י"ם
מתמטיקה בדידה תרגול 3.
Gate-Level Minimization. Digital Circuits The Map Method The complexity of the digital logic gates the complexity of the algebraic expression.
רקורסיות נושאי השיעור פתרון משוואות רקורסיביות שיטת ההצבה
חורף - תשס " ג DBMS, Design1 שימור תלויות אינטואיציה : כל תלות פונקציונלית שהתקיימה בסכמה המקורית מתקיימת גם בסכמה המפורקת. מטרה : כאשר מעדכנים.
שערים לוגיים – © Dima Elenbogen Wired AND – © Dima Elenbogen 2009.
אוטומט מחסנית הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 11.
חורף - תשס " ג DBMS, צורות נורמליות 1 צורה נורמלית שלישית - 3NF הגדרה : תהי R סכמה רלציונית ותהי F קבוצת תלויות פונקציונליות מעל R. R היא ב -3NF.
לוגיקה צירופית יחידות סטנדרטיות מבוסס על הרצאות של יורם זינגר, האוניברסיטה העברית י " ם יהודה אפק, נתן אינטרטור אוניברסיטת תל אביב.
משפט ההרכבה Composition Theorem תהי C מחלקה של פונקציות בוליניות תהי נגדיר סדרת פונקציות שניתנות לחישוב בזמן פולינומיאלי.
בהסתברות לפחות למצא בעיה במודל PAC עבור בהסתברות ε הפונקציה f טועה מודל ONLINE 1. אחרי כל טעות הפונקציה משתפרת 2. מספר הטעיות קטן.
מסדי נתונים תשס " ג 1 תכנון סכמות – אלגוריתם פירוק לתבניות בצורת BCNF מסדי נתונים.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
משטר סטטי שערים לוגיים Wired Drives – © Dima Elenbogen 2009, Moshe Malka :29.
תורת הקבוצות חלק ב'. קבוצה בת מניה הגדרה: קבוצה אינסופית X היא ניתנת למניה אם יש התאמה חד-חד ערכית בין X לבין .
שערים לוגיים – © Dima Elenbogen Wired AND – © Dima Elenbogen 2009.
1 Formal Specifications for Complex Systems (236368) Tutorial #1 Course site : T.A. :Emilia Katz.
Boolean Algebra and Logic Gates
תחשיב הפסוקים חלק ג'. צורות נורמליות א. DF – Disjunctive Form – סכום של מכפלות. דוגמא: (P  ~Q  R)  (R  P)  (R  ~Q  ~P) הגדרה: נוסחה השקולה לנוסחה.
מודל ONLINE לומדמורה 1. כל ניתן לחישוב בזמן פולינומיאלי 2. אחרי מספר פולינומיאלי של טעיות ( ) הלומד לא טועה ז"א שווה ל- Littlestone 1988.
א " ב, מילים, ושפות הפקולטה למדעי המחשב אוטומטים ושפות פורמליות ( ) תרגיל מספר 1.
Ray 7 דוגמא אלגוריתם 1.קבל דוגמאות 2. פלט f a עבור הדוגמה a המינימלית החיובית ?
תחשיב הפסוקים חלק ד'. תורת ההיסק של תחשיב הפסוקים.
Data Structures, CS, TAU, Perfect Hashing 1 Perfect Hashing בעיה : נתונה קבוצה S של n מפתחות מתחום U השוואה ל - Hash : * טבלה קבועה (Hash רגיל - דינאמי.
1 Data Structures, CS, TAU, Perfect Hashing בעיה: נתונה קבוצה S של n מפתחות מתחום U השוואה ל- Hash : * טבלה קבועה (Hash רגיל - דינאמי) * רוצים זמן קבוע.
מפות קרנו ולוגיקה צירופית יהודה אפק, נתן אינטרטור אוניברסיטת תל אביב
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א מודל הלמידה מדוגמאות Learning.
עקרון ההכלה וההדחה.
יחס סדר חלקי.
תחשיב היחסים (הפרדיקטים)
מודל הלמידה מדוגמאות Learning from Examples קלט: אוסף של דוגמאות פלט: קונסיסטנטי עם פונקציה f ב- C ז"א קונסיסטנטי עם S ז"א.
מתמטיקה בדידה תרגול 2.
1 מבוא למדעי המחשב סיבוכיות. 2 סיבוכיות - מוטיבציה סידרת פיבונאצ'י: long fibonacci (int n) { if (n == 1 || n == 2) return 1; else return (fibonacci(n-1)
אלגברה בוליאנית - אלגברת המיתוג:
Chapter 10.1 and 10.2: Boolean Algebra Based on Slides from Discrete Mathematical Structures: Theory and Applications.
1 Logic Gates Digital Computer Logic Kashif Bashir WWW:
F = ∑m(1,4,5,6,7) F = A’B’C+ (AB’C’+AB’C) + (ABC’+ABC) Use X’ + X = 1.
Logic Design Dr. Yosry A. Azzam.
Chapter 2: Boolean Algebra and Logic Gates. F 1 = XY’ + X’Z XYZX’Y’XY’X’ZF1F
Switching Theory and Logic Design
Chapter 3 Gate-Level Minimization
Discrete Mathematics CS 2610 September Equal Boolean Functions Two Boolean functions F and G of degree n are equal iff for all (x 1,..x n )  B.
Computer Systems 1 Fundamentals of Computing Simplifying Boolean Expressions.
BOOLEAN ALGEBRA Kamrul Ahsan Teacher of
Boolean Algebra & Logic Circuits Dr. Ahmed El-Bialy Dr. Sahar Fawzy.
Chapter 2: Basic Definitions BB inary Operators ●A●AND z = x y = x yz=1 if x=1 AND y=1 ●O●OR z = x + yz=1 if x=1 OR y=1 ●N●NOT z = x = x’ z=1 if x=0.
Lecture 18: Boolean Algebra Boolean Functions. w = Chris is allowed to watch television x = Chris's homework is finished y = it is a school night z =
1 Ch. 4 Boolean Algebra and Logic Simplification Boolean Operations and Expressions Laws and Rules of Boolean Algebra Boolean Analysis of Logic Circuits.
Karnaugh Map (K-Map) By Dr. M. Khamis Mrs. Dua’a Al Sinari.
Dr. Nermin Hamza. x · y = y · x x + y = y + x x · (y · z) = (x · y) · z x + (y + z) = (x + y) + z x · (y + z) = (x · y) + (x · z) x + (y · z) = (x + y)
CSE 461. Binary Logic Binary logic consists of binary variables and logical operations. Variables are designated by letters such as A, B, C, x, y, z etc.
CSE 260 BRAC University.
Basic Laws, theorems, and postulates of Boolean Algebra
Mu.com.lec 9. Overview Gates, latches, memories and other logic components are used to design computer systems and their subsystems Good understanding.
Lecture 4 Topics Boolean Algebra Huntington’s Postulates Truth Tables
SQL בסיסי – הגדרה אינדוקטיבית
Lecture 14: Boolean Algebra
Chapter 2 Boolean Algebra and Logic Gate
תרגול 11 NP complete.
2. Boolean Algebra and Logic Gates
Lecture 4 Topics Boolean Algebra Huntington’s Postulates Truth Tables
ייצוג מספרים יהודה אפק, יוסי מטיאס אוניברסיטת תל אביב
Chapter 10.1 and 10.2: Boolean Algebra
Chapter 10.1 and 10.2: Boolean Algebra
Chapter 4 Combinational Logic Design Principles. Overview Objectives -Define combinational logic circuit -Analysis of logic circuits (to describe what.
DIGITAL DESIGN MORRIS MANO UNIT 3 ANSWERS OF THE PROBLEMS 1-29
Presentation transcript:

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

אלגברה בוליאנית - אלגברת המיתוג: George Boole – 1854  Boolean Algebra Claude Shannon – 1938  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 לא שדה

הגדרה אקסיומטית: 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 אלגברת המיתוג)

הערות והארות: 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 התנאים מתקיימים

Venn’s diagrams

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

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

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

פונקציות בוליאניות: {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

משלים של פונקציה כלל דה- מורגן 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= סכום מכפלות

צורות קנוניות: 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’+…

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

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

אופרטורים לוגיים נוספים: יש פונקציות הערות שם סמל פונקציה 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

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

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

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

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

מערכות שלמות -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 בלבד!

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

פישוט פונקציות ע"י מפות קרנו: 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’

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" פונקציה "פשוטה" ריבועים גדולים

דוגמא נוספת: 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

מפה של ארבעה משתנים: מפה של חמישה משתנים: 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’

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