CS300 Algorithms
2008 Fall semester Mid-term Solution
1
1.1 Since our algebraic decision tree
T
is linear, (i.e.
f
(
x
1
,x
2
,
···
,x
n
) for all nodes
i
is linear),
L
r
node of
T
divides the space into two convex spaces (ex.
f >
0,
f
≤
0). Let
S
j
be the
selected space from
j
th
L
r
node which you pass through until the leaf node
l
i
. Then,
D
i
=
S
1
∩
S
2
∩ ··· ∩
S
d
,
where
d
is the depth of
T
.
Since each
S
j
is convex and the intersection of a ﬁnite number of convex sets is also convex,
D
i
is also convex.
1.2 We show that if
Y
(
w
i
), 1
≤
i
≤
p
, are distinct then
||
W
||
>
||
L
||
: We know that if
an algorithm
A
represented by a linear decision tree solves a problem
D
then for all
i
,
w
i
∩
D
j
6
=
∅
for some 1
≤
j
≤
d
. Therefore, by the pigeonhole principal, it holds.
1.3 Suppose that
Y
(
w
i
), 1
≤
i
≤
p
, are not distinct. Then,
Y
(
w
i
) =
Y
(
w
j
) =
h
, for 1
≤
i <
j
≤
p
, 1
≤
h
≤
d
. By deﬁnition,
Y
(
w
i
) =
h
⇒
w
i
∩
D
h
6
=
∅
.
Y
(
w
j
) =
h
⇒
w
j
∩
D
h
6
=
∅
.
Take two points
q
1
,q
2
∈
D
h
such that
q
1
∈
w
i
∩
D
h
and
q
2
∈
w
j
∩
D
h
. Since
D
h
is convex,
the line segment joining
q
1
and
q
2
must be contained in
D
h
. However,
w
i
∩
w
j
=
∅
since
w
i
are disjoint connected components. Therefore, the line segment joining
q
1
and
q
2
exits
w
i
and enters
w
j
again, which means that ﬁrst it gives an answer ”yes”, then ”no”, and
”yes” again. But since the segment is contained in a domain
D
h
, it is supposed to give
only one answer. A contradiction!
1.4 Because
||
L
|| ≥ ||
W
||
from 1.2 and 1.3, the time complexity for solving
π
of the input size
n
is
T
(
n
)
≥
c
log
2
||
L
|| ≥
c
log
2
||
W
||
.
Therefore,
T
(
n
) = Ω(log
2
||
W
||
).
1