6.896 Sublinear Time Algorithms
November 30, 2004
Lecture 21
Lecturer: Eli Ben-Sasson
Scribe: Mihai Pˇ
atra¸
scu
1
Testing Monotonicity
Previously, we have seen how to test the linearity of a function. We will now consider another interesting
property of a function, namely monotonicity. There have been several results on testing monotonicity;
the one we present is from Goldreich et al [1].
In Lecture 1 we have already seen monotonicity testing in one dimension, so now we concentrate
on functions with several variables.
We will only consider the canonical multidimensional case, the
Hamming cube, though this can be generalized.
Defnition 1 (Distance)
The distance between two functions
f
and
g
is deFned as
δ
(
f,g
)=Pr
x
[
f
(
x
)
6
=
g
(
x
)]
,where
x
is drawn uniformly from the domain. The distance between
f
and a set of functions
S
is
δ
(
f,S
) = min
g
∈
S
δ
(
)
.
Defnition 2 (Monotonicity)
±or
x, y
∈{
0
,
1
}
n
,say
x
¹
y
if
(
∀
)
i
∈
[
n
]
,x
i
≤
y
i
.
A function
f
:
{
0
,
1
}
n
→{
0
,
1
}
is monotone i²
(
∀
)
x, y
0
,
1
}
n
,
x
¹
y
implies
f
(
x
)
≤
f
(
y
)
.L
e
t
M
n
be the set of
monotone boolean functions on
n
variables.
Given
n
and oracle access to a function
f
:
{
0
,
1
}
n
0
,
1
}
, our problem is to test proximity to
M
n
(in a sense that will be deFned below). The tester is quite simple, following the spirit of our linearity
test.
Monotonicity Tester:
Pick
x
0
,
1
}
n
and
i
∈
[
n
] uniformly (and independently) at random. Let
y
be
x
with the
i
-th bit reversed. Accept i±
f
(min
{
x, y
}
)
≤
f
(max
{
x, y
}
).
Theorem 3
Let
ε
(
f
)
to be the probability that the monotonicity tester rejects
f
. Then for every Boolean
function
f
:
{
0
,
1
}
n
0
,
1
}
,
2
δ
(
f,M
n
)
≥
ε
(
f
)
≥
δ
(
n
)
n
In this lecture, we will only prove the lower bound on
ε
(
f
). It can be shown that both inequalities
are tight for this algorithm [1]. The lower bound may seem small due to the
n
factor, but one should