Monotonicity Testing Yevgeniy Dodis, Oded Goldreich, Eric Lehman, - - PowerPoint PPT Presentation

monotonicity testing
SMART_READER_LITE
LIVE PREVIEW

Monotonicity Testing Yevgeniy Dodis, Oded Goldreich, Eric Lehman, - - PowerPoint PPT Presentation

Monotonicity Testing Yevgeniy Dodis, Oded Goldreich, Eric Lehman, Sofya Raskhodnikova, Dana Ron and Alex Samorodnitsky 1 Probabilistic Property Testing Probabilistic Algorithm YES Always accept. NO Reject with probability 1/2. 2


slide-1
SLIDE 1

1

Monotonicity Testing

Yevgeniy Dodis, Oded Goldreich, Eric Lehman, Sofya Raskhodnikova, Dana Ron and Alex Samorodnitsky

slide-2
SLIDE 2

2

Probabilistic Property Testing

Probabilistic Algorithm

YES

Always accept. Reject with probability 1/2.

NO 

slide-3
SLIDE 3

3

Probabilistic Property Tester

Close to YES

Far from YES

YES

Reject with probability 1/2. Don’t care Always accept.

Probabilistic Property Testing

Probabilistic Algorithm

YES

Always accept. Reject with probability 1/2.

NO 

slide-4
SLIDE 4

4

Probabilistic Property Tester Algorithm

Accept if the object has the property. Reject with Pr 1/2 if the object is far from any

  • bject with the property.

slide-5
SLIDE 5

5

Probabilistic Property Tester Algorithm

Accept if the object has the property. Reject with Pr 1/2 if the object is far from any

  • bject with the property.

slide-6
SLIDE 6

6

Probabilistic Property Tester Algorithm

Accept if the object has the property. Reject with Pr 1/2 if the object is far from any

  • bject with the property.

slide-7
SLIDE 7

7

Express property testing as testing properties of functions.

Probabilistic Property Tester Algorithm

Accept if the object has the property. Reject with Pr 1/2 if the object is far from any

  • bject with the property.

slide-8
SLIDE 8

8

Motivation

  • much

uch fast ster er tha han n an e n exa xact t algo gori rithm; thm;

  • the

he on

  • nly

y op

  • ption
  • n whe

hen n the he exa xact ct prob

  • blem

lem is not s not decidable; dable;

  • us

used d for

  • r preprocessing;

processing;

  • go

good

  • d eno

nough ugh in ap n application ation whe here e so some errors

  • rs are

tol

  • ler

erable. able. Probabilistic Property Tester can be

slide-9
SLIDE 9

9

Problem Statement Algorithm

ε

Accept if f is monotone. Reject with Pr 1/2 if f is -far from monotone. 

slide-10
SLIDE 10

10

R f

n 

Σ :

  • For two n-symbol strings x and y we

say if y is formed from x by increasing one

  • r more symbols.

y x 

001001 011001 011111 100000

? examples

Definitions for

slide-11
SLIDE 11

11

 y x 

f (x) 0 3 7 8 8 9 x 0 1 2 3 4 5

  • f is monotone if

f (x) f (y) for all .

R f

n 

Σ :

  • For two n-symbol strings x and y we

say if y is formed from x by increasing one

  • r more symbols.

y x 

001001 011001 011111 100000

? examples

Definitions for

slide-12
SLIDE 12

12

f (x) 0 3 9 8 7 9 x 0 1 2 3 4 5 1/3-far from monotone

  • f is -far from monotone if

every monotone function disagrees with f on at least an -fraction of the domain.  y x 

f (x) 0 3 7 8 8 9 x 0 1 2 3 4 5

  • f is monotone if

f (x) f (y) for all .

R f

n 

Σ :

  • For two n-symbol strings x and y we

say if y is formed from x by increasing one

  • r more symbols.

y x 

001001 011001 011111 100000

? examples

Definitions for

slide-13
SLIDE 13

13

Results Q = Query Complexity of Monotonicity Tests

           | | | |

2 2

R n

O 

Q =

         | | log | | log R n

O 

Q =

[GGLR98] This work

slide-14
SLIDE 14

14

Algorithm (Reduction to a simpler case)

x y

  • INPUT:

–  and

  • Repeat several times:

– Pick a line along the axes of the hyper-grid uniformly at random. – Use your favorite algorithm to test if the line is monotone [our paper, EKKRV98, Noga Alon] . – If a pair (x, y) of points on the line with and f (x) > f (y) is found, then REJECT.

  • Otherwise, ACCEPT.

y x 

R f

n 

 :

slide-15
SLIDE 15

15

  • Edge xy iff and

x and y differ in one coordinate

  • Edge xy is a violated edge of f

if f (x) > f (y).

y x 

f(000) f(111) f(011) f(100) f(101) f(110) f(010) f(001)

Special case:

R f

n 

} 1 , { :

slide-16
SLIDE 16

16

Algorithm for

x y

  • INPUT:

–  and

  • Repeat Q/2 times:

– Pick an edge xy uniformly at random. – If xy is violated (i.e. f (x) > f (y)), then REJECT.

  • Otherwise, ACCEPT.

R f

n 

} 1 , { :

R f

n 

} 1 , { :

slide-17
SLIDE 17

17

Intuition for Analysis

  • If f is monotone, the algorithm

always accepts.

  • If f is not monotone:

– If f has few violated edges, we can make f monotone by changing its value at a few points. – If f has many violated edges, the algorithm succeeds with high probability. YES

Don’t care

NO

slide-18
SLIDE 18

18

Proof Plan

  • BINARY RANGE ( )

THEOREM: If f is -far from monotone, then a random edge is violated with probability

} 1 , { } 1 , { : 

n

f

. 2n 2 n 2 2 2 2 points altered # 2 edges violated #       

n n n n

n n

1 1 1

violated edges 1 0

edges violated # 2 points altered #  

slide-19
SLIDE 19

19

  • RANGE REDUCTION ( )

THEOREM: If f is -far from monotone, then a random edge is violated with probability

R f

n 

} 1 , { :

| | log edges violated # 2 points altered # R   

. | | log 2n | | log 2 2 n 2 | | log 2 2 points altered # 2 edges violated # R R R n n

n n n n

      

Proof Plan

  • BINARY RANGE ( )

THEOREM: If f is -far from monotone, then a random edge is violated with probability

} 1 , { } 1 , { : 

n

f

. 2n 2 n 2 2 2 2 points altered # 2 edges violated #       

n n n n

n n

1 1 1

violated edges 1 0

edges violated # 2 points altered #  

slide-20
SLIDE 20

20

Repairing Violated Edges in One Dimension

1 1 1 1 1 1 Swapping red dimension.

Swap violated edges 10 in red dimension to 01.

slide-21
SLIDE 21

21

Repairing Violated Edges in One Dimension

Swap violated edges 10 in red dimension to 01.

Sort 1 1 1 1 1 1 1 1

slide-22
SLIDE 22

22

Repairing Violated Edges in One Dimension

1 1 1 Swapping red dimension.

Swap violated edges 10 in red dimension to 01.

slide-23
SLIDE 23

23

  • LEMMA. Swapping violated edges in dimension i
  • 1. repairs all violated edges in dimension i;
  • 2. does not increase the number of violated edges in dimension j, for all .

Repairing Violated Edges in One Dimension

i j 

1 1 1 1 1 1

Swap violated edges 10 in red dimension to 01.

Swapping red dimension.

slide-24
SLIDE 24

24

  • LEMMA. Swapping violated edges in dimension i
  • 1. repairs all violated edges in dimension i;
  • 2. does not increase the number of violated edges in dimension j, for all .

Repairing Violated Edges in One Dimension

i j 

1 1 1 1 1 1

Swap violated edges 10 in red dimension to 01.

Swapping red dimension.

slide-25
SLIDE 25

25

Back to the Proof Plan

  • BINARY RANGE ( )
  • RANGE REDUCTION ( )

W.l.g. assume R={0, 1,…, 2s-1}. Prove by induction on s.

} 1 , { } 1 , { : 

n

f R f

n 

} 1 , { :

| | log edges violated # 2 points altered # R    edges violated # 2 points altered #   s    edges violated # 2 points altered #

slide-26
SLIDE 26

26

How can we make f monotone?

a b 2s-1 violated edges of f

Swap violated edges in red dimension?

slide-27
SLIDE 27

27

How can we make f monotone?

a b 2s-1 violated edges of f

Swap violated edges in red dimension?

1 1 2 1 1 2

slide-28
SLIDE 28

28

Operator SQUASH

       

  • therwise

) ( if ) ( if ) ( ) ]( , , [ SQUASH b x f a x f x f b a x b a f

a b 2s-1 violated edges of f

a b

violated edges of SQUASH[f,a,b] 2s-1

PROPERTY: does not introduce new violated edges.

slide-29
SLIDE 29

29

PROPERTIES:

  • 1. does not introduce new violated edges.
  • 2. clears interval [a, b].
  • 3. leaves clear intervals clear.

Operator CLEAR

a b

2s-1

Squash: Repair (switch to

closest monotone function with range {a,...,b}):

Unsquash values not

altered by repair:

a b

2s-1

a b

2s-1

a b 2s-1

slide-30
SLIDE 30

30

Making f monotone

f Clear [2s-1-1, 2s-1] Clear [0, 2s-1-1] Clear [2s-1, 2s-1-1]

2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1

slide-31
SLIDE 31

31

Making f monotone

f Clear [2s-1-1, 2s-1] Clear [0, 2s-1-1] Clear [2s-1, 2s-1-1]

2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 #violated edges

2v 2r

) (

2

r l  v

2

slide-32
SLIDE 32

32

Reminder

We are proving (by induction on s) that for functions with a range of size 2s, Base case [functions with a range of size 2]: Induction hypothesis [functions with a range of size 2s-1]:

edges. violated # 2 points altered #  

.

edges violated # 2 points altered #

s

   ). 1 ( edges violated # 2 points altered #    

s

slide-33
SLIDE 33

33

Making f monotone

f Clear [2s-1-1, 2s-1] Clear [0, 2s-1-1] Clear [2s-1, 2s-1-1]

2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 2s-1 2s-1-1 2s-1 #points changed #violated edges

) 1 (

2

  s l

v

2

) 1 (

2

  s r

2v 2r

s v  2

total

) (

2

r l  v

2

slide-34
SLIDE 34

34

We are done

  • BINARY RANGE ( )
  • RANGE REDUCTION ( )

W.l.g. assume R={0, 1,…, 2s-1}. Proof by induction on s.

} 1 , { } 1 , { : 

n

f R f

n 

} 1 , { :

| | log edges violated # 2 points altered # R    edges violated # 2 points altered #  

slide-35
SLIDE 35

35

Conclusions

  • SUMMARY OF RESULTS IN THIS TALK

– Monotonicity test for f :{0,1}n {0,1} [switching argument]. – Monotonicity test for f :{0,1}n R [SQUASH and CLEAR argument].

  • SUMMARY OF RESULTS IN THE PAPER

– Designed good monotonicity tests for

.

– Reduced testing monotonicity of to the case n =1 [sorting argument (a generalization of the switching argument)]. – Reduced testing monotonicity of to the case [SQUASH and CLEAR argument].

  • OPEN PROBLEMS

– Query complexity independent of the size of the range? – , where D is any partially ordered set. – Tests for other properties.

R f

n 

 : R D f  :

} 1 , { :   f } 1 , { : 

n

f    } 1 , { : 

n

f 