Tighter bounds and simpler constructions for Davenport-Schinzel sequences

1 / 70

# Tighter bounds and simpler constructions for Davenport-Schinzel sequences - PowerPoint PPT Presentation

Tighter bounds and simpler constructions for Davenport-Schinzel sequences. Haim Kaplan, Gabriel Nivasch , Micha Sharir Tel-Aviv University. What are Davenport-Schinzel sequences?. A Davenport-Schinzel sequence of order s on n symbols does not contain adjacent equal symbols ( aa )

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' Tighter bounds and simpler constructions for Davenport-Schinzel sequences' - connor-stevens

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Tighter bounds andsimpler constructions forDavenport-Schinzel sequences

Haim Kaplan, Gabriel Nivasch, Micha Sharir

Tel-Aviv University

What are Davenport-Schinzel sequences?
• A Davenport-Schinzel sequence of order s on n symbols
• does not contain adjacent equal symbols (aa)
• does not contain any alternating subsequence
• a … b … a … b …
• of length s + 2.

Examples:

a c d b c c a

Not a DS sequence

a c a b a d a c d c b

Not a DS seq. of order 3

d

c

a

b

d

a

b

a

b

Motivation: Lower envelopes

Suppose we have nx-monotone curves in the plane.

Each pair of curves intersects at most s times.

a

b

s = 2

c

d

Then the lower envelope corresponds to a DS sequence of order s.

Why: An alternation of length s + 2 would imply s + 1 intersections.

Motivation: Lower envelopes

What if we have nsegments of x-monotone curves? (Each pair of curves intersects at most s times.)

Then we get a DS sequence of order s + 2.

Example:

Straight-line segments.

Straight-line segments give DS sequences of order 3.

Alternation ababa is impossible:

a b a b a

Bounds for DS sequences

Let λs(n) be the maximum length of a DS sequence of order s on n symbols.

(We take s to be a constant.)

• s = 1 (no aba):

Max sequence: 1 2 3 … n

• s = 2 (no abab):

Max sequence: 1 2 3 … n … 3 2 1

or: 1 2 1 3 1 … 1 n 1

• What about s ≥ 3?

Not so simple anymore!

Involves inverse Ackermann function.

The inverse Ackermann function

Inverse Ackermann hierarchy:

# times you have to apply αk–1, starting from x, until you get a result ≤ 1.

We have:

etc.

Each function in the hierarchy grows much slower than the preceding one.

The inverse Ackermann function

For every fixed x ≥ 6, the sequence

Example: x = 9876!:

decreases strictly, until it settles at 3.

Inverse Ackermann function:

We have

for every fixed k.

Bounds for s ≥ 3

[Hart, Sharir ’86; Wiernik, Sharir ’88]

For s ≥ 4: [Agarwal, Sharir, Shor ’89]

Stabbing interval chains(a completely unrelated problem)

[Alon, Kaplan, N., Sharir, Smorodinsky ’08]:

Given parameters j, k, and n,

An interval chain of length k (or a k-chain) is a sequence of k consecutive, disjoint, nonempty intervals in [1,n].

10-chain stabbed by a 5-tuple

10-chain

n

1

A j-tuple stabs a k-chain if its j elements fall on j different intervals.

Problem: Build a family of j-tuples, as small as possible, that stab allk-chains in [1,n].

Stabbing interval chains(a completely unrelated problem)

Solution:

Stabbing with 2j-tuples: If we let the number of intervals be

then stabbing all k-chains in [1,n] requires

2j-tuples (roughly speaking).

Stabbing with (2j+1)-tuples: If we let

then stabbing all k-chains in [1,n] requires

(2j+1)-tuples (roughly speaking).

Back to DS sequences

Current bounds for DS sequences:

Conjecture: By analogy from interval chains, the DS bounds should be:

We will show

Need 2 things:

• 1/(s–1)! coefficient in the upper bounds.
• Lower bounds with log for odd s.
Back to DS sequences

Theorem:

We’ve got two different proofs!

order s – 2

order s – 2

order s – 2

order s – 2

order s – 2

b

a

b

a

b

a

b

a

s – 1

s-th

Bounding DS sequences

Let S be a DS sequence of order s on n symbols, of maximum length.

(s even)

Partition Sgreedily, from left to right, into maximalblocks of order s – 2.

Consider a block.

We can’t have a b before the block and an a after the block.

Every block is the first or last for at least one symbol.

Number of blocks is at most 2n.

(Also works for s odd.)

Bounding DS sequences

Let

be the maximum length of a DS sequence of order s on n symbols that can be partitioned into m or fewer blocks of order r.

If r = 1 then we write

We just showed:

Lemma 1:

(This is all [ASS89].)

n1distinct

symbols

n2distinct

symbols

n3distinct

symbols

n4distinct

symbols

n5distinct

symbols

n1

n2

n3

n4

n5

Bounding DS sequences

Let S be a max-length sequence of order s on n symbols that is partitionable into m blocks of order r.

s

r

r

r

r

r

d

a

e

b

f

b

b

a

a

c

c

f

f

a

b

d

d

f

c

b

d

a

g

g

e

g

b

e

c

c

f

b

S

Leave in each block just the first occurrence of each symbol:

S\'

Remove adjacent repetitions. (Remove at most m symbols.)

S\'\'

b

a

c

f

d

a

g

e

b

c

f

n1distinct

symbols

n2distinct

symbols

n3distinct

symbols

n4distinct

symbols

n5distinct

symbols

Bounding DS sequences

s

r

r

r

r

r

S

Let be a nondecreasing function of n such that

Lemma 2:

Bounding DS sequences

Lemma 1 + Lemma 2:

Let be a nondecreasing function of n such that

Then,

So all we need to do is bound and then substitute m = 2n.

(This is all [ASS89].)

b

b

b

a

a

b

b

a

b

b

starting

middle

ending

Recurrence for ψs(m,n)

Let S be a max-length sequence of order s on n symbols that is partitionable into m blocks of order 1.

block 1

block m

layer

Group the blocks into b layers of m/b blocks each. (b = free parameter)

Classify each symbol into:

• Local – appears in only one layer

ni – # symbols local to

i-th layer.

• Global – appears in more than one layer
• Classify occurrences of global symbols into:
• Starting (first layer)
• Middle (intermediate layers)
• Ending (last layer)

n* – # global symbols.

Recurrence for ψs(m,n)

Decompose S into 4 subsequences:

Tlocal – local symbols

Tstart – starting global symbols

Tmiddle – middle global symbols

Tend – ending global symbols

Remove adjacent repetitions from each seq. (at interface bet. blocks).

Removed at most 4m symbols. Get sequences

T\'local, T\'start, T\'middle, T\'end.

Bounding |T\'local|

The i-th layer in T\'local is a DS sequence of order s on ni symbols, partitionable into m/b blocks of order 1.

i-th layer

layer

a

b

a

b

a

a

b

s + 1

(s + 2)-nd in S

Bounding |T\'start| (and |T\'end|)

Each layer in T\'start is a DS sequence of order s – 1 on n* symbols.

Why: Each symbol of T\'start appears in S in a subsequent layer.

So no layer in T\'start can have an alternation of length s + 1.

Moreover, all ofT\'start is a DS sequence of order s – 1 on n* symbols.

Why: Each symbol appears in only one layer.

Similarly:

layer

b

a

a

b

a

b

a

a

b

s

Bounding |T\'middle|

Each layer in T\'middle is a DS sequence of order s – 2 on n* symbols.

Why: If a layer in T\'middle had an alternation of length s, then S would have an alternation of length s + 2.

(Warning: We can’t say all ofT\'middle is of order s – 2. A symbol can appear in many layers.)

[Agarwal, Sharir, Shor ’89] said:

We can do better!

Bounding |T\'middle|

Better bound for |T\'middle|:

Let n*i be the number of global symbols that appear in the i-th layer.

(So n*i ≤ n* for all i.)

We need to say something about the n*i’s.

We will get a bound on their sum

Bounding n*1 + … + n*b

Given original sequence S, form U by taking, from each layer, just the first occurrence of each global symbol.

S

i-th layer

n*i global symbols

U

n*i

U\'

Each layer becomes a block of order 1.

Form U\' by removing adjacent repetitions from U.

We remove at most b symbols.

The recurrence

Putting it all together, we have just proven:

Theorem: Given integers m, s, and n, and given an integer b,

there exists a partition of n into

and there exist integers

satisfying

such that

Using the recurrence

The recurrence yields the following:

Theorem: For every s and k there exist integers Ps,k and Qs,k, both of the form

such that

(Increasing k diminishes αk(m), but makes the coefficients Ps,k and Qs,k larger.)

Using the recurrence

Proof outline: Want to show:

Apply induction on s, k, and m.

Choose

(ind. on s)

bound by

(ind. on m)

bound by

bound by

bound by

(ind. on s)

(ind. on k)

Using the recurrence

We get:

if

(ds and d\'s – constants).

Initial conditions:

Then:

In general:

Wrapping up

where:

• If we take k = constant (say k = 10), then ψs(m,n) is slightly superlinear in m and linear in n. The constants Ps,k and Qs,k don’t matter.
• If we let kgrow very slowly with m, namely k = α(m), then the term αk(m) becomes 3. But now Ps,k and Qs,k are functions of α(m).

We get:

Wrapping up

We have finally bounded ψs(m,n):

Back to λs(n):

where

contributes lower-order terms

QED

… c e g

g b a …

We promised a second proof!

We define Almost Davenport-Schinzel (ADS) sequences:

• An ADS sequence of order s on m blocks
• has no alternation of length s + 2,
• is composed of at most m blocks, where each block contains distinct symbols.

We don’t disallow adjacent repetitions at the interface between blocks. But we limit the number of blocks.

1 2 3 …

1 2 3 …

… 3 2 1

… 3 2 1

We turn the problem around:

Suppose we have an ADS sequence of order s on m blocks, in which each symbol appears at least k times (in k different blocks).

We what is the maximium value of n, the number of distinct symbols?

Example 1:

If k = s (each symbol must appear s times), then we can have arbitrarily many symbols.

block 1

block 2

block 3

block s

Maximum alternation is of length s + 1.

Example 2:

If k = s + 1 (each symbol must appear s + 1 times), then there can be at most symbols.

There are only m blocks.

Proof: Suppose there are

symbols.

There must be two symbols a and b with their s – 1 inner occurrences in the sames – 1 blocks.

In the best case:

s

b a

a b

b a

a b

b a

a b

block 1

block 2

block 3

block s – 1

Alternation of length s + 2. Contradiction.

Let nks(m) be the maximum number of distinct symbols in an ADS sequence of order s on m blocks in which each symbol appears at least k times.

For fixed s, nks(m) is increasing in m and decreasing in k.

This is very similar to interval chains. We already know what to do!

Theorem: Let k1, k2, k3 be integers, and let

k = k2k3 + 2k1 – 3k2 – k3 + 2.

Then,

where t is a free parameter.

b

b

b

a

a

b

b

a

b

b

Proof:

Let S be an ADS sequence of order s on m blocks, in which each symbol appears at least k times, with maximum number of distinct symbols.

block 1

block m

layer

# distinct symbols: nks(m).

Group the m blocks into m/tlayers, with t blocks per layer.

• Local symbol – appears in only one layer
• Global symbol – appears in more than one layer
• Classify each global symbol into:
• Left-concentrated: The firstk1 occurrences fall in one layer.
• Middle-concentrated: Some innerk2 occurrences fall in one layer, and the symbol also appears in previous and subsequent layers.
• Right-concentrated: The lastk1 occurrences fall in one layer.
• Scattered: The symbol appears in at least k3 different layers.

Each global symbol must satisfy at least one of these properties.

Why: If a global symbol violates all properties, it occurs at most

(k1 – 1) + (k3 – 3)(k2 – 1) + (k1 – 1)

= k – 1

times.

But : k = k2k3 + 2k1 – 3k2 – k3 + 2.

Bounding # local symbols

For each layer, take just the symbols local to that layer.

Layer contains t blocks.

We get an ADS sequence of order s on t blocks. Each symbol appears k times.

# local symbols: At most

per layer.

At most

total.

For each layer, take just the left-concentrated global symbols that start at that layer.

We get an ADS sequence of order s – 1 on t blocks. Each symbol appears k1 times.

usual argument

# left-concentrated global symbols: At most

# right-concentrated global symbols: Same.

Bounding # middle-concentrated global symbols

For each layer, take just the middle-concentrated global symbols that appear at least k2 times in that layer, and aslo appear in previous and subsequent layers.

We get an ADS sequence of order s – 2 on t blocks. Each symbol appears k2 times.

usual argument

# middle-concentrated global symbols: At most

Bounding # scattered global symbols

For each scattered global symbol, leave just one occurrence per layer.

Each layer becomes a block (has distinct symbols).

We get an ADS sequence of order s on m/t blocks. Each symbol appears k3 times.

# scattered global symbols: At most

QED

Recurrence:

where:

k = k2k3 + 2k1 – 3k2 – k3 + 2.

Compare to recurrence for interval chains:

where:

k = k2k3 + 2k1 – 2k2.

Same thing basically!

The recurrence yields the following:

For fixed s, as k increases, nks(m) becomes closer to linear in m. Namely:

If we let

then we get

If we let

then we get

Question: Very nice, but what does this have to do with bounding λs(n)?

a

a

a

a

a

a

a

a

a\'

a

a\'

a

a\'

a

a

a\'

a\'

a

a

a

a

a

a

k

k

k

< k

a\'\'

a\'\'

a\'\'

a\'\'

a\'\'

Let S be a max-length Davenport-Schinzel sequence of order s on n symbols partitionable into m blocks.

Regularize the sequence, so that each symbol appears exactlyk times. Get sequence S\'. (k – free parameter)

(This doesn’t introduce any forbidden alternations.)

We removed at most kn symbols.

S\' is an ADS sequence on m blocks.

Applying our bounds on nks(m), we get:

(d – free parameter)

Let d = α(m).

Same bounds as before, obtained differently.

END OF

UPPER BOUNDS

Lower bounds for DS sequences

[Agarwal, Sharir, Shor ’89]:

Construction that gives the lower bound

We will show a simpler version of this construction.

The Ackermann hierarchy

Each function is repeated application of the previous one.

We have

etc.

Put differently, for k ≥ 2:

The Ackermann function:

The Ackermann hierarchy

The Ackermann recurrence relation:

The Ackermann hierarchy is robust to perturbations.

If we use a modified recurrence relation like

then we will have

for some c.

The DS construction

Sks(n) will be a DS sequence of order s, for s even.

Sks(n) has a recursive definition similar to the Ackermann recurrence relation.

• Sks(n) satisfies the following properties:
• It consists of blocks of length n. Each block – distinct symbols.
• Each symbol occurs exactly μs(k) times (function independent of n).
The DS construction

(We omit the base cases of the construction.)

General case:

We want to construct

• Let
• S\' has blocks of length n – 1.
• Let f be the number of blocks in S\'.

S\'

n – 1

f

S is of order s – 2.

• S has blocks of length f.
• Let g be the number of distinct symbols in S.
The DS construction
• Let

1

1

2

2

3

3

4

4

5

5

6

6

7

7

8

8

S

f

g

The DS construction
• Let
• S* is of order s.
• S* has blocks of length g.

S*

g

Replace each block in S* by a copy of S using the same symbols, making their first appearances in the same order.

g

1

2

3

4

5

6

7

8

f

S*

1

2

3

4

5

6

7

8

S

The DS construction

S* has blocks of length g. S has g distinct symbols.

S*

We get S*. It has blocks of length f.

g distinct

symbols

Let h be the number of blocks in S*.

Make h copies of S\', one for each block in S*.

Use fresh symbols for each copy of S\'.

For each block in S*, insert the symbols at the end of each block of the copy of S\'.

S*

n

The DS construction

S* has h blocks of length f.

S\' has f blocks of length n – 1.

1

2

3

4

5

6

7

S

copy of S\'

This is the desired sequence S. It has blocks of length n.

S*

S

S

The DS construction

Summary of the construction:

g distinct

symbols

f

S*

g

f

copy of S\'

copy of S\'

S

n – 1  n

f

(We still need to prove correctness.)

S*

copy of

Analysis: Multiplicity of the symbols

Recall: In Sks(n) each symbol occurs μs(k) times.

μs–2(k – 1)

μs(k – 1)

μs–2(k – 1)μs(k – 1)

μs(k)

We have: μs(k)= μs–2(k – 1)μs(k – 1)

Base case: μ2(k) = 2 (we didn’t show)

Analysis: Sequence length

For a fixed value of 2s, fix n = 2 and let k = 1, 2, 3, …

Meaning, take sequences

Nk - # distinct symbols in k-th sequence.

We have N(k) ≤ A(k + c) for some c.

Multiplicity of symbols in k-th sequence:

We want:

Sequence length as a function of # distinct symbols.

As claimed

S\'

S*

n

Proof of correctness
• We want to show that Sks(n):
• does not contain adjacent repetitions
• does not contain an alternation of length s + 2.

Recall: Sks(n) is composed of one copy of S*, and many copies of S\'. Each copy has different symbols.

In each block of length n, the first n – 1 symbols come from S\', and the last symbol comes from S*.

a

a

Proof: If the symbol comes from a copy of S\', by induction. If it comes from S*, it always has depth n.

Proof of correctness

We’ll first prove a few things by induction:

• Each symbol always occurs in the same position within the blocks. We call it the depth of the symbol.

Corollary: If n ≥ 2, there are no adjacent repetitions.

If they come from different copies of S\', or both from S*, they never appear together.

• If a comes from a copy of S\' and b comes from S*:

S*

b

a

a

a

a

a

a

S\'

Proof of correctness
• No two symbols appear together in more than one block.

a

b

a

b

• Proof:
• If both symbols come from the same copy of S\', by induction.

This copy of S\' receives only one b.

Suppose a has depth n (comes from S*), and b has depth ≤ n – 1 (comes from a copy of S\').

S*

a

a

a

a

a

a

a

S\'

b

b

b

b

b

b

ababa

Proof of correctness
• Symbols at different depths make alternations of length at most 5 (ababa).
• Proof:
• If both symbols have depth ≤ n – 1, they come from the same copy of S\'. So by induction. Or else they come from different copies of S\', so they don’t alternate at all.

This copy of S\' receives at most one a.

1 2 3 4 5

order s – 2

1 2 3 4 5

Sks(n)

Proof of correctness

Now what we want to prove. We need to prove by induction a stronger property.

• Claim:
• Sks(n) has no forbidden alternation of length s + 2.
• Even if we replace each block in Sks(n) by a sequence of order s – 2 with the same symbols, making their first appearances in the same order, we still get no alternation of length s + 2.

Say they have depth n (they come from S*). But S* is obtained from S* by block replacements. Contradiction to property 2 on S* by induction.

Proof of correctness
• Claim:
• Sks(n) has no forbidden alternation of length s + 2.
• Even if we replace each block by a sequence of order s – 2 (with 1st appearances in same order), we still get no forbidden alternation.

Proof of property 1:

Suppose for a contradiction that a, b make a forbidden alternation.

They must have the same depth (since s + 2 ≥ 6).

Say they have depth ≤ n – 1. They can’t come from different copies of S\'. And if they come from the same copy of S\', then contradiction by induction.

s – 1

a b a b a

a

a

a

a

b

b

b

b

b

a

b

b

b

a

a

b

b

b

a

b

s + 2

Proof of correctness
• Claim:
• Sks(n) has no forbidden alternation of length s + 2.
• Even if we replace each block by a sequence of order s – 2 (with 1st appearances in same order), we still get no forbidden alternation.

Proof of property 2:

Suppose for a contradiction that after block replacements on Sks(n), we get a forbidden alternation a…b….

a and b must have appeared together in a block.

4 options:

They appear together in only one block.

Suppose a has depth ≤ n – 1 (belongs to a copy of S\') and b has depth n (comes from S*).

a

a

a

a

b

b

b

b

In each of the 4 cases, this copy of S\' received two b’s from S*.

Proof of correctness

b

a

b

This can’t happen!

b

b

a

• If a and b have depth ≤ n – 1, then they belong to the same copy of S\'.

a

b

b

b

a

b

The same block replacement would have created a forbidden alternation in S\'. Contradiction to property 2 for S\'.

QED correctness.

s – 1

a b a b a b

a

b

a

b

a

b

a

b

a

a

a

a

a

b

b

b

b

b

a

b

s + 2

Problem with s odd

Why doesn’t the construction work for s odd?

The last argument breaks: