490 likes | 758 Views
מבנה המחשב + מבוא למחשבים ספרתיים תרגול 2#. Boolean Algebra cont’ The digital abstraction Graphs and Topological Sort. Theorem 11: DeMorgan’s Law For every pair of elements a , b B, ( a + b ) ’ = a’ · b’ ( a · b ) ’ = a’ + b’. Proof:
E N D
מבנה המחשב + מבוא למחשבים ספרתייםתרגול 2# Boolean Algebra cont’The digital abstractionGraphs and Topological Sort
Theorem 11: DeMorgan’s Law • For every pair of elements a , b B, • ( a + b )’ = a’ · b’ • ( a · b )’ = a’ + b’ Proof: (1) We first prove that (a+b) is the complement of a’·b’. Thus, (a+b)’ = a’·b’ By the definition of the complement and its uniqueness, it suffices to show: (i) (a+b)+(a’b’) = 1 and (ii) (a+b)(a’b’) = 0. (2) Duality (a·b)’ = a’+b’
Distributivity Commutativity Associativity a’ and b’ are the complements of a and b respectively Theorem: For any a B, a + 1 = 1 Idempotent Law
Commutativity Distributivity Commutativity Associativity Commutativity a’ and b’ are the complements of a and b respectively Theorem: For any a B, a · 0 = 0 Idempotent Law
Transfer function for an inverter • Given an electronic device whose transfer function is: f(x) = 1-x • Is it a valid device for an inverter? • In the two threshold model: • Yes, chose for example Vlow = 0.25, Vhigh = 0.75 • In the (more realistic) four threshold model?
Transfer function for an inverter (cont.) • Assume it is a valid device • There exists four numbers vil, vih, vol, voh such that: • f(vil) voh ,namely if in signal is vil the out signal is voh. (the device is an inverter). • f(vih) vol (same as above) • vol < vil < vih < voh (4-thresholds model). • However, according to the transfer function: • f(vih) = 1- vih • f(vil) = 1- vil
Transfer function for an inverter (con. 2) • 1- vil voh and 1- vih vol • voh + vil 1 and vol + vih 1 • A contradiction, since voh > vol and vil > vih • Conclusion: not any monotonically decreasing function is adequate to be a transfer function in the 4-thresholds model.
Graph Representationby List of Neighbors 1 3 5 6 8 2 3 7 5 6 4 5 2 8 6 7 8
Topological Sort • Works only on Directed Acyclic Graphs (DAG). • Notations: • In degree: The number of edges entering a vertex. • Sources: vertices with in-degree 0. • The Algorithm: • Initialize: V The set of all vertices. • While V is not empty • Extract a source s (if non-exists, then not a dag). • Decrease the incoming degree of all its neighbors. • Set s to be the next vertex in the topological order.
Topological Sort Example IN AND OR XOR OUT NOT IN = Independent Vertex
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN IN
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN IN OR
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN IN OR AND
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN IN OR AND NOT
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN IN OR AND NOT XOR
Topological Sort Example IN AND OR XOR OUT NOT IN The Topological Sort: IN IN OR AND NOT XOR OUT
The next slides are for the interested students (home reading)
Theorem: Associative Law • In a Boolean algebra, each of the binary operations ( + ) and ( · ) is associative. That is, for every a , b , c B, • a +( b + c )= ( a + b ) + c • a · ( b · c ) = ( a · b ) · c
Proof: (1) Let Distributivity Commutativity Distributivity Distributivity Idempotent Law Absorption Law Absorption Law
Commutativity Distributivity Distributivity Idempotent Law Absorption Law Commutativity Absorption Law
Same transitions Putting it all together: · before +
Also, (2) Duality
Boolean expression - Recursive definition: base: 0 , 1 , a B – expressions. recursion step: Let E1 and E2 be Boolean expressions. Then, E1’ ( E1 + E2 ) ( E1 · E2 ) Dual transformation - Recursive definition: Dual: expressions → expressions base: 0 → 1 1 → 0 a → a , a B\{0,1} recursion step: Let E1 and E2 be Boolean expressions. Then, E1’ → [dual(E1)]’ ( E1 + E2 ) → [ dual(E1) · dual(E2) ] ( E1 · E2 ) → [ dual(E1) + dual(E2) ]
Let fd be the dual of a function f ( x1 , x2 , … , xn ) Lemma: In switching algebra, fd = f’ ( x1’, x2’, … , xn’) Proof: Let f ( x1 , x2 , … , xn ) be a Boolean expression. We show that applying the complement on the whole expression together with replacing each variable by it’s complement, yields the dual transformation definition. Induction basis: 0 , 1 – expressions.
If Induction hypothesis: Lemma holds for Boolean expressions: E1 and E2 . That is: Induction step: show that it is true for E1’ ( E1 + E2 ) ( E1 · E2 ) then,
If then, If then,
Definition: A function f is called self-dual if f = fd Lemma:For any function f and any two-valued variable A, the function g = Af + A’fd is a self-dual. Proof:(holds for any Boolean algebra) Dual definition Distributivity Commutativity
Distributivity Commutativity A’ is the complement of A Identity Commutativity Notice that the above expression has the form: ab + a’c +bc where “a” =A, “b”=f, “c” = fd.
We now prove a stronger claim: Identity a’ is the complement of a Distributivity Commutativity Commutativity Distributivity Theorem: For any a B, a + 1 = 1 Identity
For example: self-dual
Easier proof (1) for switching algebra only: (using dual properties) Switching algebra OR Identity
Easier proof (2) for switching algebra only: (case analysis) A = 0 0’ = 1 Identity Commutativity Theorem: For any a B, a · 0 = 0 Absorption Law Identity
Complement of X B: Algebra of Sets Consider a set S. B = all the subsets of S (denoted by P(S)). “plus” set-union ∪ “times” set-intersection ∩ Additive identity element – empty set Ø Multiplicative identity element – the set S.
B is a set of at least two elements • For every non empty set S: • → |B| ≥ 2. • Closure of (∪) and (∩) over B (functions ) . Theorem: The algebra of sets is a Boolean algebra. Proof: By satisfying the axioms of Boolean algebra:
An element lies in the union precisely when it lies in one of the two sets X and Y. Equally an element lies in the union precisely when it lies in one of the two sets X and Y. Hence, A1. Cummutativity of ( ∪ ) and ( ∩ ).
We have and . Hence, If , If , We have and . Hence, A2. Distributivity of ( ∪ ) and ( ∩ ). Let and or or
Taking(*) and (**) we get, Distributivity of union over intersection can be conducted in the same manner.
and This can be conducted in the same manner as ⊆. We present an alternative way: Definition of intersection * Also, definition of intersection definition of union Similarly, **
A3. Existence of additive and multiplicative identity element. A4. Existence of the complement. All axioms are satisfied Algebra of sets is Boolean algebra.
slope = -1 slope = -1
slope = -1 slope = -1 true only if:
slope = -1 slope = -1 BUT, this is not always the case. For example: Moreover, in this example it can be proved that no threshold values exist, which are consistent with definition 3 from lecture notes.
f (x) = x Using the assumption: slope < -1
f (x) = x slope < -1
slope = -1 f (x) = x slope = -1 true if: slope < -1