18
םםםם םםםםםם םםםםם םםםם4

מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n {0,1} is monotone if x y f (x) f ( y) (where x y means : for every i x i

  • View
    238

  • Download
    1

Embed Size (px)

Citation preview

Page 1: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

מבנה מחשבים

4תרגול מספר

Page 2: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

Definition:

A Boolean function f :{0,1}n {0,1} is monotone if x y f (x) f ( y)

(where x y means : for every i xi yi ).

Prove the following claim:

f :{0,1}n {0,1} is monotone iff f can be implemented by a combinational circuit that contains only AND-gates and OR-gates.

Page 3: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

Sum of products

a

b

a

c

b

c

b

c

F(x)=ab’+ac’+bc’+bc

Page 4: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 5: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 6: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 7: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 8: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 9: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 10: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

A Boolean function

f : {0,1}2 →{0,1} is associative if

f(f(1,2),3) = f(1,f(2,3))

for every 1, 2,3 {0,1}

Associative Boolean functions

Page 11: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

Question 3.3

Design a zero-tester defined as follows.Input: x[n-1 : 0].Output: yFunctionality:y = 1 iff x[n-1 : 0] = 0n:1. Suggest a design based on an or-tree.2. Suggest a design based on an and-tree.3. What do you think about a design based on a tree

of nor-gates?

Page 12: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 13: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 14: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

balanced partition

Two positive integers a,b are a balanced partition of n if:

1. a+b = n,

2. Max{ } 2 2log a , log b 12log n

Page 15: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

Question 3.7

Prove that if n = 2k-r, where 0r<2k-1,

then any partition in which

2k-1-r a 2k-1 and b = n - a is a balanced partition.

Page 16: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i
Page 17: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i

Question 3.8

Consider the following recursive algorithm for constructing a binary tree Tn with n2 leaves. Prove that the depth of Tn is .

1. The case that n2 is trivial (two leaves connected to a root).

2. If n > 2, then let a, b be balanced partition of n.

3. Compute trees Ta and Tb. Connect their roots to a new root to obtain Tn.

2log n

Page 18: מבנה מחשבים תרגול מספר 4. Definition: A Boolean function f :{0,1} n  {0,1} is monotone if x  y  f (x)  f ( y) (where x  y means : for every i x i