Based on Theorem 4.1.19, we directly show in Proposition 4.2.3 that there is a circuit realizing the And-Or path g(t) with delay at most log2W(t) + log2log2W(t) + log2log2log2W(t) + 4.8. Afterwards, we will prove a stronger result: By modifying the instance, we can reduce the dependency on W(t). The modification is based on two ideas: First, we can round up small arrival times to a common value without losing too much regarding the maximum delay. Secondly, shifting all arrival times by some number does not change the problem. These two modifications allow us to reduce the problem to instances with a total weight of at most 2m. This leads to a delay bound oflog2W(t)+log2log2m+log2log2log2m+7.1proven in Remark 4.2.5.
In a further step, we make use of the fact that for a small numberm of inputs, the delay bound of the circuits constructed in Held and Spirkl [HS17b] is better than ours.
By this, we obtain our final delay bound oflog2W(t)+log2log2m+log2log2log2m+ 4.3in Theorem 4.2.4.
The next two lemmas are a common technical preparation for these results.
Lemma 4.2.1. The functionκ:x7→ x2logx−12x is strictly monotonely increasing for all x≥3.
Proof. To prove the statement, we compute the derivative ofκ:
d
dxκ(x) =
ln(2)2x−1xlog2x−2x−1
log2x+xln(2)x1 x2log22x
= 2x−1log2x ln(2)x−1
−ln(2)1 x2log22x
Algorithm 4.1: Delay optimization for extended And-Orpaths Input: Inputss= (s0, . . . , sn−1) and t= (t0, . . . , tm−1),
arrival timesa(s0), . . . , a(sn−1), a(t0), . . . , a(tm−1)∈N. Output: CircuitC(s, t) computing f(s, t).
1 Setw:=W(s).
2 if m≤2 then
3 ConstructC(s, t) via Huffman coding [Huf52] (Theorem 2.3.21).
4 returnC(s, t)
5 Choose d∈Nminimum with W(t)≤ν(d, w) +d−1d Λt. // Hence,w <2d−1.
6 else if d≤3 then // Hence, d= 3, m= 3, n= 0.
7 returnC(s, t) :=t0∧(t1∨t2)
8 else if w≥2d−2 then
9 Recursively compute C(s,())and C((), t).
10 returnC(s, t) :=C(s,())∧C((), t)
11 else
12 if W(t0)> ν(d−1, w) then
13 Recursively compute C(s,(t0))and C((),(t1, . . . , tm−1)).
14 returnC(s, t) =C(s,(t0))∧
C (),(t1, t2, . . . , tm−1)∗
15 else
16 Choose a maximum odd-length prefixt0 oftwithW(t0)≤ν(d−1, w).
17 Sett00:=t\t0.
18 if |t00|= 3 and Λt>2d−2 and W(tm−1)< W(tm−2) then
19 Recursively compute C(s, t) :=C(s,(t0, . . . , tm−3, tm−1, tm−2)).
20 returnC(s, t).
21 Set˜t:=t0++ (t000, t001).
22 Sett∗ :=
t0 if |t00| ≤2or W
˜t
> ν(d−1, w) +dd−−21Λ˜t,
˜t otherwise.
23 Sett∗∗:=t\t∗.
24 Recursively compute C(s, t∗).
25 if |t00|= 3 and t∗ =t0 then
26 ComputeC∗
tb0, t00
=
bt0∨t000
∨ t001∧t002
directly.
27 else
28 Recursively compute C∗ tb∗, t∗∗
:=
C
tb∗, t∗∗∗ .
29 returnC(s, t) :=C(s, t∗)∧C∗ tb∗, t∗∗
0 100 200 300 400 500 600 700 800 0
5 10 15 20
ϑ−0.815,1.441(x) ϑ3.8,3.5(x) ϑ2.3,1.8(x) ϑ5.1,4.27(x)
Figure 4.3: Illustration of the various functions from Lemma 4.2.2 in the range3≤x≤800.
Forx≥3, we haveln(2)x−1≥1andlog2x≥ ln(2)1 , hence dxdκ(x)is strictly positive and κ(x) strictly monotonely increasing for allx≥3.
Lemma 4.2.2. For the parametrized function
ϑc,α:x7→(α−1) log2x−log2log2x−log2log2log2x−c , the following statements hold:
(i) The functionϑ−0.815,1.441 is negative for all 7≤x≤499.
(ii) The functionϑ3.8,3.5 is positive for all x≥3.
(iii) The functionϑ2.3,1.8 is positive for all x≥500.
(iv) The function ϑ5.1,4.27 is positive for all x≥3.
Figure 4.3 depicts the functions ϑc,α(x) in all four cases.
Proof. For the cases (ii) and (iv), we consider x= 3 separately. Here, we have ϑc,α(3) = (α−1) log23−log2log23−log2log2log23−c
=
((3.5−1) log23−log2log23−log2log2log23−3.8 in case (ii) (4.27−1) log23−log2log23−log2log2log23−5.1 in case (iv)
>
(0.08 in case (ii) 0.008 in case (iv)
>0.
20 40 60 80 100
−0.12
−0.10
−0.08
−0.06
−0.04
−0.02 0.00
ϑ−0.815,1.441(x)
Figure 4.4: Illustration of the function dxdϑ−0.815,1.441(x) from the proof of Lemma 4.2.2 in the range 7≤x≤100.
For all other cases, we compute the derivative ofϑc,α: d
dxϑc,α(x) = α−1
ln(2)x − 1
ln2(2)xlog2x − 1
ln3(2)xlog2xlog2log2x
= 1
ln(2)x α−1− 1 ln(2) log2x
1 + 1
ln(2) log2log2x !
Figure 4.4 shows the derivative ofϑ−0.815,1.441(x).
In the cases (ii) and (iv), for x≥4, we have 1 +ln(2) log1
2log2x ≤2.45 and hence, asα≥3.5, we have
α−1− 1
ln(2) log2x ·2.172> α−2.8>0. Thus, dxdϑc,α(x) is positive forx≥4 in the cases (ii) and (iv).
In case (iii), we havex≥500and1 +ln(2) log1
2log2x ≤1.46and hence, asα= 1.8, we have
α−1− 1
ln(2) log2x ·1.46> α−1.3>0. Hence, dxdϑ2.3,1.8(x) is positive.
In case (i), for 7 ≤ x ≤ 37, we have 1 + ln(2) log1
2log2x ≥ 1.6 and hence, as α= 1.441, we have
α−1− 1
ln(2) log2x ·1.6< α−1.443<0 ; and for38 ≤ x ≤499, we have 1 + ln(2) log1
2log2x ≤ 1.604 and hence, as α = 1.441, we have
α−1− 1
ln(2) log2x ·1.61> α−1.441 = 0.
Hence, dxdϑ−0.815,1.441(x)is negative for 7≤x≤37 and positive for 38≤x≤499.
From this, we can conclude the proof:
ϑ−0.815,1.441(x) 7≤x≤≤37 ϑ−0.815,1.441(7)<−0.01<0 ϑ−0.815,1.441(x)38≤x≤≤499ϑ−0.815,1.441(4)<−0.05<0 ϑ3.8,3.5(x) x≥≥4 ϑ3.8,3.5(4) = 0.2>0 ϑ2.3,1.8(x) x≥≥500 ϑ2.3,1.8 > 0.04>0 ϑ5.1,4.27(x) x≥≥4 ϑ5.1,4.27= 0.44>0
We will now bound the delay of the circuits arising from Theorem 4.1.19.
Proposition 4.2.3. Let m ∈ N with m ≥ 3, Boolean variables t0, . . . , tm−1 and arrival times a(t0), . . . , a(tm−1)∈N be given. There is a circuit realizing the And -Orpath g(t) with delay at most
log2W(t) + log2log2W(t) + log2log2log2W(t) + 4.8. Proof. Let d:=
log2W(t) + log2log2W(t) + log2log2log2W(t) + 4.8
. By Theo-rem 4.1.19, it suffices to show thatW(t)≤ν(d, w), i.e., that
W(t)≤ζ 2d−1 dlog2d.
By Lemma 4.2.1, the right-hand side function is strictly increasing for d≥ 3, so it suffices to show that
W(t)≤ζ 2d0−1
d0log2d0 (4.31)
for d0 := log2W(t) + log2log2W(t) + log2log2log2W(t) + 3.8. For W(t)≥m ≥3, we have
d0 ≤3.5 log2W(t)
by Lemma 4.2.2, case (ii). Thus, Equation (4.31) is implied by W(t)≤ζ 2d0−1
3.5 log2W(t) log2(3.5 log2W(t)), which is equivalent to
3.5W(t) log2W(t) log2(3.5 log2W(t))≤ζ2log2W(t)+log2log2W(t)+log2log2log2W(t)+2.8, and hence to
3.5 log2log2W(t) + 3.5 log2(3.5)≤ζ22.8log2log2W(t), which is true sinceW(t)≥3 and ζ ≥1.9.
By transforming the instance and using different algorithms for small instances, we can improve this delay bound as shown in the following theorem.
Theorem 4.2.4. Letm∈Nwith m≥3, Boolean variablest0, . . . , tm−1 and arrival timesa(t0), . . . , a(tm−1)∈N be given. There is a circuit realizing the And-Orpath g(t) with delay at most
log2W(t) + log2log2m+ log2log2log2m+ 4.3.
Proof. We compute auxiliary arrival times ˜a:{t0, . . . , tm−1} →Nby setting
˜
a(ti) := maxn
0, a(ti)−
log2W(t)−log2mo
for all i ∈ {0, . . . , m−1}. Let fW := W(t; ˜a). We partition the input indices {0, . . . , m−1} into
I1 :=
i∈ {0, . . . , m−1}: ˜a(ti) = 0 and I2 :={0, . . . , m−1} \I1. Then, we have
fW =X
i∈I1
2˜a(ti)+X
i∈I2
2˜a(ti)
=|I1|+X
i∈I1
2a(ti)−dlog2W(t)−log2me
≤m+ 2−dlog2W(t)−log2meX
i∈I2
2a(ti)
≤m+ 2log2m 2log2W(t)W(t)
= 2m . (4.32)
Note that this bound is best possible as in the case thata(t0) =. . .=a(tm−1) = 0 anda(tm−1)very large in comparison tom, the sum fW gets arbitrarily close to2m.
Letc:= 4.3 be the additive constant in the delay bound of this theorem. Define d˜:=blog2m+ log2log2m+ log2log2log2m+c−1c.
We shall now first construct a circuitC with delayd˜for inputs with arrival times˜a in the following claim; from this, we shall later deduce the theorem.
Claim. There is a circuit C realizing theAnd-Orpathg(t) withdelay(C; ˜a)≤d.˜ Proof of claim: Let M := 500. For m < M, we give a realization for g(t) without using our results. Note that ˜a(ti) = log2W(ti; ˜a) ≤ log2fW ≤ log2m+ 1 for all i= 0, . . . , m−1. Hence, the standard realizationCmS form inputs has delay at most maxi=0,...,m−1˜a(ti) +m−1
≤ bm+ log2mc. Hence, we have
delay(C3S)≤ b3 + log23c= 4 =blog23 + 3.3c <d˜ delay(C4S)≤ b4 + log24c= 6 =blog24 + log2log24 + 3.3c <d˜ delay(C5S)≤ b5 + log25c= 7 =blog25 + log2log25 + log2log2log25 + 3.3c= ˜d , implying that for3≤m≤5, choosingC :=CmS solves the claim.
If7≤m < M, we have j1.441 log2Wf+ 2.674k (4.32)
≤
1.441 log2(2m) + 2.674
= b1.441 log2m+ 4.115c
Lem.4.2.2
≤ blog2m+ log2log2m+ log2log2log2m+c−1c
= d .˜
For m= 6, we also have b1.441 log2m+ 4.115c= 7 = ˜d. Since by Theorem 2.6.28, the And-Or path optimization method by Held and Spirkl [HS17b] computes a circuit with delay at most j
1.441 log2Wf+ 2.674k
, this proves the claim for 6 ≤ m < M.
Hence, assumem≥M. For proving the claim, by Theorem 4.1.19, it is sufficient to show
2m≤ζ 2d˜−1
d˜log2d˜. (4.33)
Recall that the mapping x7→ x2logx−21x is strictly increasing forx≥3 by Lemma 4.2.1.
For d˜˜:= log2m+ log2log2m+ log2log2log2m+c−2, we have d˜≥ d˜˜m≥M=500> 3.
Moreover, for m≥M, we have
log2m+ log2log2m+ log2log2log2m+c−2≤1.8 log2m (4.34) by Lemma 4.2.2, case (iii), Thus, we have
ζ 2d˜−1 d˜log2d˜
d˜≥d>3,˜˜ Lem.4.2.1
≥ ζ 2d˜˜−1
˜˜ dlog2d˜˜
(4.34)
≥ ζ 2d˜˜−1
1.8 log2mlog2(1.8 log2m)
def. d˜˜
= ζ mlog2log2m2c−3 1.8 log2(1.8 log2m). Equation (4.33) is hence valid if
1.8 log2log2m+ 1.8 log2(1.8)≤ζ2c−4log2log2m . (4.35) Since ζ2c−4 > 2.3, this statement is fulfilled for large enough m, so it suffices to prove it form=M. Here, we have
1.8 log2log2M+ 1.8 log2(1.8)<7.3<7.4< ζ2c−4log2log2m . This proves Equation (4.33) and hence the claim.
Since we have a(ti) ≤ ˜a(ti) +
log2W(t)−log2m
for all i ∈ {0, . . . , m−1}, the circuit C fulfills
delay(C;a)
≤ d˜+
log2W(t)−log2m
= blog2m+ log2log2m+ log2log2log2m+c−1c+
log2W(t)−log2m
≤ log2W(t) + log2log2m+ log2log2log2m+c .
Remark 4.2.5. In the proof of the previous theorem, we apply method [HS17b] for small instances. Without this trick, we would obtain a delay bound of
log2W(t) + log2log2m+ log2log2log2m+ 7.1
by altering the proof of Theorem 4.2.4 as follows: Now, we have c = 7.1 and M := 3. For these values, the constant 1.8 in Equation (4.34) increases to 4.27 by Lemma 4.2.2, case (iv), and Equation (4.35) still holds.
Remark 4.2.6. For sufficiently large values of m, the delay bound in the previous theorem can be improved slightly to
log2W(t) + log2log2m+ log2log2log2m+ 3.1 +ε
for any constantε >0: Note that the factor1.8in inequality (4.34) can be decreased to a value arbitrarily close to1if mis sufficiently large. Thus, we may choosecsuch that the factor ζ2c−4 in inequality (4.35) becomes arbitrarily close to 1 for large values ofm. This leads to the stated delay bound.