<?xml-model href='http://www.tei-c.org/release/xml/tei/custom/schema/relaxng/tei_all.rng' schematypens='http://relaxng.org/ns/structure/1.0'?><TEI xmlns="http://www.tei-c.org/ns/1.0">
	<teiHeader>
		<fileDesc>
			<titleStmt><title level='a'>New PRGs for Unbounded-Width/Adaptive-Order Read-Once Branching Programs</title></titleStmt>
			<publicationStmt>
				<publisher>Schloss Dagstuhl – Leibniz-Zentrum für Informatik</publisher>
				<date>01/01/2023</date>
			</publicationStmt>
			<sourceDesc>
				<bibl> 
					<idno type="par_id">10484211</idno>
					<idno type="doi">10.4230/LIPIcs.ICALP.2023.39</idno>
					
					<author>Lijie Chen</author><author>Xin Lyu</author><author>Avishay Tal</author><author>Hongxun Wu</author><author>Kousha Etessami</author><author>Uriel Feige</author><author>Gabriele Puppis</author>
				</bibl>
			</sourceDesc>
		</fileDesc>
		<profileDesc>
			<abstract><ab><![CDATA[We give the first pseudorandom generators with sub-linear seed length for the following variants of read-once branching programs (roBPs):  1) First, we show there is an explicit PRG of seed length O(log²(n/ε)log(n)) fooling unbounded-width unordered permutation branching programs with a single accept state, where n is the length of the program. Previously, [Lee-Pyne-Vadhan RANDOM 2022] gave a PRG with seed length Ω(n) for this class. For the ordered case, [Hoza-Pyne-Vadhan ITCS 2021] gave a PRG with seed length Õ(log n ⋅ log 1/ε).2) Second, we show there is an explicit PRG fooling unbounded-width unordered regular branching programs with a single accept state with seed length Õ(√{n ⋅ log 1/ε} log 1/ε). Previously, no non-trivial PRG (with seed length less than n) was known for this class (even in the ordered setting). For the ordered case, [Bogdanov-Hoza-Prakriya-Pyne CCC 2022] gave an HSG with seed length Õ(log n ⋅ log 1/ε).3) Third, we show there is an explicit PRG fooling width w adaptive branching programs with seed length O(log n ⋅ log² (nw/ε)). Here, the branching program can choose an input bit to read depending on its current state, while it is guaranteed that on any input x ∈ {0,1}ⁿ, the branching program reads each input bit exactly once. Previously, no PRG with a non-trivial seed length is known for this class. We remark that there are some functions computable by constant-width adaptive branching programs but not by sub-exponential-width unordered branching programs. In terms of techniques, we indeed show that the Forbes-Kelley PRG (with the right parameters) from [Forbes-Kelley FOCS 2018] already fools all variants of roBPs above. Our proof adds several new ideas to the original analysis of Forbes-Kelly, and we believe it further demonstrates the versatility of the Forbes-Kelley PRG.]]></ab></abstract>
		</profileDesc>
	</teiHeader>
	<text><body xmlns="http://www.tei-c.org/ns/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink">
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>One central question in complexity theory is whether randomness is necessary for e cient computation. In the time setting, the question is essentially asking whether P = BPP. While it is commonly believed that P = BPP <ref type="bibr">[23,</ref><ref type="bibr">16]</ref>, it is known that establishing this would imply breakthrough lower bounds in complexity theory <ref type="bibr">[13,</ref><ref type="bibr">17]</ref>, which seems to be out of reach for current techniques. Therefore, most previous works are devoted to derandomizing sub-classes of BPP. In particular, the class of randomized log-space algorithms (BPL) has attracted a lot of attention, since not only it contains many interesting problems, but also it is indeed possible to give unconditional derandomizations of BPL <ref type="bibr">[22,</ref><ref type="bibr">27]</ref>.</p><p>A leading approach to derandomize BPL is to construct explicit PRGs for ordered read-once branching programs (see below for a formal definition) with short seed length.</p><p>I Definition 1. An ordered read-once branching program (roBP) B of length n and width w computes a function B : {0, 1} n ae {0, 1}. The program has (n + 1) layers of states</p><p>where V i contains all states in the i-th layer. Being width-w means that |V i | AE w for every i oe <ref type="bibr">[n]</ref>. On an input x oe {0, 1} n , the branching program computes as follows. It starts at a fixed start state s oe V 0 . Then for every i = 1, 2, . . . , n, it reads the next input bit x i and updates its state according to a transition function B i : V i&#8800;1 &#9674; {0, 1} ae V i by taking v i = B t (v i&#8800;1 , x i ). Note that the transition function B i can di er at each time step.</p><p>When we use the program to compute a decision problem, we specify a set V acc &#8482; [w] of accepting states in the final layer. Let v n be the final state reached by the branching program on input x. If v n oe V acc , the branching program accepts, denoted by B(x) = 1. Otherwise, the program rejects, denoted by B(x) = 0.</p><p>Next, we recall the definition of a pseudorandom generator (PRG).</p><p>I Definition 2. Let F be a class of functions f : {0, 1} n ae {0, 1}. An &#193;-PRG for F is a function G : {0, 1} s ae {0, 1} n such that for every f oe F,</p><p>We say that G &#193;-fools F if it is an &#193;-PRG for F. The input length s is the seed length of the PRG G. We say a generator is explicit, if given as input a seed x oe {0, 1} s , the output is computable in space O(s).</p><p>In a seminal work, Nisan constructed an explicit PRG that &#193;-fools length-n width-w ordered roBPs with seed length O (log n &#8226; log(nw/&#193;)). Since then, many PRGs with improved seed lengths were constructed for sub-classes of ordered roBPs (see <ref type="bibr">[5,</ref><ref type="bibr">10,</ref><ref type="bibr">20]</ref> and the references therein), but Nisan's PRG remains the state-of-the-art even for width-4 general roBPs.</p><p>Nisan's PRG (and <ref type="bibr">[15,</ref><ref type="bibr">9]</ref>) crucially relies on the following "communication" argument: The first half of the roBP can only communicate log w bits (describing the state reached at the end of the first half) to the second half. Due to this, it is possible to reuse all but log w bits from the seed that is used to generate the first half of the pseudorandom input, when generating the second half of the pseudorandom input. Recursively applying the idea gives the log n log(nw/&#193;) seed length of Nisan's PRG.</p><p>However, some researchers have the feeling that this type of argument is inherently limited to having seed length at least log 2 n [6, 26, 28] 1 , and di erent approaches are required to I Definition 3. Let B be an ordered roBP with length n and width w. We say that B is a regular roBP, if for every t oe [n] and every v oe [w], there are exactly</p><p>In <ref type="bibr">[12]</ref>, an &#194; O(log n &#8226; log 1/&#193;)-seed length PRG with error &#193; is constructed for ordered unbounded-width permutation roBP with length-n and a single accept state. A later work <ref type="bibr">[25]</ref> (building on a prior work <ref type="bibr">[1]</ref>) constructed an &#194; O(log n &#8226; &#63743; log(n/&#193;) + log(1/&#193;))-seed length weighted PRG for the same class. 2</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.1">Our Results</head><p>In this work, we consider two even stronger models of roBPs: (1) roBPs that are both unordered and have unbounded width and (2) roBPs that can read input in an adaptive order (that is, the next bit to read can depend on the current state).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.1.1">Unordered and Unbounded-width roBPs</head><p>Given the recent developments on unordered roBPs and on unbounded-width roBPs, a natural question is whether one can construct non-trivial PRGs for unordered and unbounded-width (permutation or regular) roBPs. A prior, it is even unclear whether such a class admits non-explicit PRGs with short seed length, since the usual probabilistic argument for the existence of PRGs with short seed length does not apply here <ref type="bibr">[12]</ref>.</p><p>Our first result is a polylog(n/&#193;)-seed-length PRG for unordered unbounded-width permutation roBPs with a single accept state, significantly improving the previous (n)-seed length PRGs from <ref type="bibr">[18]</ref>. 2 A weighted PRG for a class of functions F is a pair of functions G : {0, 1} s ae {0, 1} n and fl : {0, 1} s ae R</p><p>I C A L P 2 0 2 3</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>39:4</head><p>New PRGs for Unbounded-Width/Adaptive-Order Read-Once Branching Programs I Theorem 4 (Unbounded width permutation BP). For all integers n and &#193; &gt; 0, there is an explicit &#193;-PRG G : {0, 1} s ae {0, 1} n with seed length</p><p>that fools unordered unbounded-width permutation branching programs with a single accept state.</p><p>Our second result is a &#194; O ( &#212; n log(1/&#193;))-seed-length PRG for unordered unbounded-width regular roBPs with a single accept state. No (even non-explicit) non-trivial PRG is known for this class even in the ordered setting; Bogdanov, Hoza, Prakriya, and Pyne <ref type="bibr">[3]</ref> has constructed &#194; O (log n &#8226; log(1/&#193;))-seed-length HSG for the ordered case. <ref type="foot">3</ref>I Theorem 5 (Unbounded width regular BP). For all integers n and &#193; &gt; 0, there is an explicit &#193;-PRG G : {0, 1} s ae {0, 1} n with seed length</p><p>that fools unordered unbounded-width regular branching programs with a single accept state.</p><p>In terms of techniques, we indeed prove that the Forbes-Kelly PRG su ces for the two theorems above. Our analysis carefully modifies the original analysis from <ref type="bibr">[8]</ref>. In fact, we prove that a single round of Forbes-Kelly pseudorandom restriction fools unordered unbounded-width regular roBPs (see <ref type="bibr">Theorem 10)</ref>. Iterating this restriction O(log(n/&#193;)) times proves Theorem 4. Unfortunately, it is unclear whether the same iterative construction fools unordered unbounded-width regular roBPs since they are not closed under restrictions. Still, doing the pseudorandom restriction exactly once with the right parameters proves Theorem 5.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1.1.2">Adaptive roBPs</head><p>While an unordered roBP can read its input in any order, it cannot change the ordering based on the input it has read so far (i.e., the order is input oblivious). We also consider an even stronger variant of roBPs, called adaptive roBPs, which are programs that can decide the next bit to read given its current state. We formally define them as follows.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>I Definition 6. An adaptive read-once branching program B of length n and width w computes a function</head><p>where V i consists of the w states in the i-th layer. On an input x oe {0, 1} n , the branching program B computes as follows. It starts at a fixed start state v 0 oe [w]. Then for every t = 1, 2, . . . , n, it reads the bit x pos(t&#8800;1,vt&#8800;1) and updates its state according to a transition function</p><p>is a function specifying the index of the next bit to read given the current state v t&#8800;1 . We require that on every input x oe {0, 1} n , B reads each bit in x exactly once.</p><p>We remark that adaptive roBPs are strictly stronger than unordered roBPs as shown by an example function</p><p>Here, y R denotes the reversed string of y. Observe that there is a constant-width adaptive roBP for f . The program first reads b. If b = 0, the program reads and compares x and y bit by bit. Otherwise, the program compares x and y R bit by bit. Moreover, it is easy to see (via a communication complexity argument) that every unordered roBP for f requires exponential width.</p><p>Our third result gives O(polylog(nw/&#193;))-seed-length PRG for adaptive roBPs. To the best of our knowledge, no explicit PRGs with seed length less than n was known prior to our work. I Theorem 7. For every n, w &#216; 1 and &#193; &gt; 0, there is an explicit &#193;-PRG G : {0, 1} s ae {0, 1} n fooling width-w adaptive roBPs with seed length s = O(log n &#8226; log 2 (nw/&#193;)).</p><p>We prove Theorem 7 by adapting the argument in <ref type="bibr">[8]</ref>. The key observation allowing us to do so is the following. Suppose B satisfies the read-once promise. Then, for every vertex v oe V i , if we denote by Pre v (resp. Post v ) the set of possible variables read in any path from the starting state to v (resp. v to the accepting state). It must be the case that Pre v and Post v are disjoint for every v. By a delicate argument (Claim 15), we show that this disjointness property is su cient for applying the key technique of Forbes-Kelley proof: decomposing the branching program by high/low-degree Fourier terms.</p><p>Moreover, when the width w of the adaptive roBP is small, we can show that the branching program has bounded Fourier growth (following <ref type="bibr">[7]</ref>). In particular, we show that the L-th level Fourier mass of a width-w adaptive roBP is bounded by O(log(nw)) 2Lw . As shown in <ref type="bibr">[8]</ref>, for programs with bounded Fourier growth, we can further improve the seed length by a log(n) factor. Formally, we show I Theorem 8. For every n, w &#216; 1 and &#193; &gt; 0, there is an explicit &#193;-PRG G : {0, 1} s ae {0, 1} n fooling width-w adaptive roBPs with seed length s = &#194; O(w log 2 (n/&#193;)).</p><p>Theorem 8 is a direct corollary of the new Fourier growth bound. We briefly comment on how we get the Fourier growth of O(log n) 2Lw for adaptive roBP. Roughly speaking, given a width-w, length-n adaptive roBP B, we construct a related witdh-2w, length-n 2 oblivious roBP B &#213; , such that the Fourier spectrum of B is "dominated" by that of B &#213; . The idea is simple: we duplicate each input of B for n times and get n 2 bits. Now, it is easy to construct a width-2w oblivious roBP running on the n 2 bits to simulate B. (Essentially, the n 2 bits allow us to make n passes over the input, we can use each pass to implement one step of transition of B.)</p><p>Although B &#213; has n 2 input bits, we can exploit the promise that B is read-once, and prove the following nice property: For any input z oe {0, 1} n 2 , B &#213; (z) depends only on n bits of z (that is to say, there is a subset of n bits from z, such that flipping all other bits of z cannot change the output). This allows us to connect the Fourier weights of B &#213; and B. The details can be found in Appendix A.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Preliminaries</head><p>For a Boolean predicate P , we use 1 {P } to denote the indicator of P , which takes value 1 if P holds, value 0 otherwise. We often use U n to denote the uniform distribution over {0, 1} n (when n is clear from the context, we will just write U for simplicity), and U (X) to denote the uniform distribution over a set X. For two strings -,oe {0, 1} n , we use -&#8226; -and -+to denote their bit-wise AND and bit-wise XOR, respectively. Similarly, for two distributions We always work with the {&#8800;1, 1} n basis for Boolean function analysis. For a function f : {&#8800;1, 1} n ae R, recall that its Fourier characters indexed by -&#8482; [n], is defined by</p><p>We often use greek letters (such as -, -, ") to index Fourier characters. We will need k-wise independent and "-almost k-wise independent distributions throughout the paper, which look locally uniform and thus fool functions that only depend on a few bits.</p><p>I Definition 9. Let D be a distribution over {0, 1} n . We say D is k-wise independent if, for every f : {0, 1} n ae [&#8800;1, 1] that depends on at most k bits, we have</p><p>for every such f , we say that D is "-almost k-wise independent.</p><p>It is possible to sample from a k-wise independent distribution using O(k &#8226; log n) random bits ( <ref type="bibr">[30]</ref>) and from a "-almost k-wise independent distribution using O(k + log log n + log 1/") random bits ( <ref type="bibr">[21,</ref><ref type="bibr">2]</ref>).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">PRGs for Unbounded-width Branching Programs</head><p>In this section, we will prove the following theorem, which shows that one round of pseudorandom restriction fools regular branching programs with unbounded width and a single accept state.</p><p>I Theorem 10. Let B be an unbounded-width regular branching program of length n with starting state s oe V 0 and a single accept state t oe V n . Let D, U denote a 2k-wise independent distribution and a uniform distribution over {0, 1} n , respectively. Let T (a) denote a 2k-wise independent distribution over [a] n , and let distribution T be defined as</p><p>Since the class of permutation BPs is closed under restrictions, we can iteratively apply Theorem 10 to it with k = log(n) and a = 2. The immediate consequence is that we get a PRG for unordered unbounded-width permutation branching programs.</p><p>I Corollary 11 (Restating Theorem 4). For all integers n and &#193; &gt; 0, there is an explicit &#193;-PRG G : {0, 1} s ae {0, 1} n with seed length</p><p>that fools unordered unbounded-width permutation branching programs with a single accept state.</p><p>However, when it comes to regular branching programs, this class is no longer closed under restrictions. Hence we can only apply Theorem 10 once and set k</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>It remains an interesting open problem to apply iterative restriction for unbounded-width regular branching programs.</head><p>I Corollary 12 (Restating Theorem 5). For all integers n and &#193; &gt; 0, there is an explicit &#193;-PRG G : {0, 1} s ae {0, 1} n with seed length</p><p>that fools unordered unbounded-width regular branching programs with a single accept state.</p><p>We will prove Theorem 10 in Subsection 3.1 and Subsection 3.2. In Subsection 3.3, we prove Corollary 11 and Corollary 12.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.1">Fourier Decomposition of Regular BPs</head><p>Recall that V i is the set of nodes in the i-th level of our branching program. s oe V 0 is the starting point and t oe V n is the unique accepting state. x oe {0, 1} n is the input to our branching program B. In order to work with {&#8800;1, 1} basis, we let y i = (&#8800;1) xi for all i oe [n].</p><p>For any two nodes a oe V i and b oe V j . We define the indicator P a,b : {&#8800;1, +1} n ae {0, 1}, Its Fourier expansion is as follows:</p><p>where the Fourier characters are defined as</p><p>This naturally extends P a,b to R n ae R. Furthermore, we define</p><p>which is the sum all the degree k terms that contain y j . We also define</p><p>which is the sum all the degree k terms that contain y i+1 .</p><p>I Fact 13. Let D, T, U be the distributions defined in Theorem 10, and let G be a distribution defined as</p><p>. Proof. Notice that when y i = (&#8800;1) xi for all i, B(x) = P s,t (y). The first fact holds because for all -" = ?, we have</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Then, we have E[B(U</head><p>For the second fact, conditioned on an instantiation of T , we define an intermediate distribution G &#213; as</p><p>When</p><p>uniformly and independently from {&#177;1}.</p><p>When T i = 0, we always have</p><p>Hence for all -, we know that</p><p>As a result, E y&#8805;G &#213; [P s,t (y)] = E y&#8805;G <ref type="bibr">[P s,t (y)</ref>]. This finishes the proof. J</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.2">Bounding the Error</head><p>In the error analysis, we follow the approach of Forbes and Kelley <ref type="bibr">[8]</ref>. By Fact 13, the result we wish to prove is equivalent to ---Ey&#8805;G[Ps,t(y)] &#8800; &#8218; P s,t (?)</p><p>In the analysis of <ref type="bibr">[8]</ref>, they considered the decomposition,</p><p>Here L k (y) are the low-degree terms, and</p><p>s,m (y) &#8226; P m,t (y) are the terms that reaches degree k exactly at node m oe V i . The intuition is that the 2k-wise independent distribution D fools L k (y) while the high-degree terms are fooled by T &#8226; U .</p><p>However, in order to work for unbounded-width regular branching programs, we have to consider a di erent decomposition. Let L k (y) be the same as before. We have</p><p>Observe that we are using</p><p>. The benefit of this decomposition is that now for all y, we have</p><p>since from s only one state m can be reached under input y. In contrast, in the original decomposition, q moeVi P m,t (y) 2 could be very large. This di erence will be essential in our analysis. Now we are ready to prove Theorem 10.</p><p>Proof of Theorem 10. By our decomposition, we know</p><p>Since G is k-wise independent, we know E y&#8805;G [L k (y)] = 0. Now we bound the second term. We will need the following fact: For any two (not necessarily independent) sequences of random variables {f m } moeVi , {g m } moeVi , we have</p><p>. This is the Cauchy-Schwarz Inequality for random variables.</p><p>Let</p><p>We bound these two separately. We first bound E y&#8805;G &#203; q</p><p>By 2k-wise independence of G, we know for all -" = -and |-| + |-| AE 2k, the cross term</p><p>For the square terms, notice that for all T i = 1, we have y i = 0. When T i = 0, y i = (&#8800;1) Di . T i = 1 happens with probability 1/a. D, T are 2k-wise independent. Hence when</p><p>Hence,</p><p>The last step follows from Parseval identity. Summing over all m oe V i for a fixed i, we get</p><p>The last step is because now y &#8805; U , and the branching program is regular so that q moeVi E y&#8805;U [P m,t (y)] = 1.<ref type="foot">foot_2</ref> On the other hand, as we mentioned, for any y, s can reach a single vertex in V i , hence</p><p>Putting these two together, we get</p><p>n. J</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3.3">Applications</head><p>Finally, we prove Corollary 11 and Corollary 12 in the rest of this section.</p><p>Proof of Corollary 11. Let {D (i) } ioe <ref type="bibr">[&#184;]</ref> , {T (i) } ioe <ref type="bibr">[&#184;]</ref> be &#184;independent copies of 2k-wise independent dsitributions defined in Theorem 10 with k = log ! n &#193; " + log log( n &#193; ) + 1 and a = 2. We construct pseudorandom distributions G (0) , G (1) , . . . , G (&#184;) with &#184;= (log(n/&#193;)). We let G 0 be the set of all one strings in {0, 1} n and set</p><p>Let branching program B (i) be defined as B (&#184;) = B and</p><p>Since any restriction of a permutation branching program is still a permutation branching program. For any realization of D (i) and T (i) , Theorem 10 says that,</p><p>.</p><p>From a standard Cherno bound, with probability at least 1 &#8800; &#193;/2, T (1) &#8226; T (2) </p><p>does not depend on its input when T (1) &#8226; T (2) &#8226; &#8226; &#8226; &#8226; &#8226; T (&#184;) = 0000 . . . 0.</p><p>On the other hand, by definition, we know</p><p>. Hence a hybrid argument proves that</p><p>Proof of Corollary 12. For regular branching programs, let D and T be 2k-wise independent distributions defined in Theorem 10 with k = 2</p><p>.</p><p>We let D &#213; be another independent copy of D.</p><p>We construct pseudorandom distribution G = D + T &#8226; D &#213; . From Theorem 10, we know that</p><p>From Markov inequality, we get that Pr</p><p>We believe the seed length in Corollary 11 can be improved to O(log 2 n&#8226;log(n/&#193;)) following the sharper analysis in Section 7.1 of <ref type="bibr">[8]</ref>. However, for the simplicity of presentation, we choose to only present it for the seed length of O(log n &#8226; log 2 (n/&#193;)).</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">PRGs for Adaptive Branching Programs</head><p>In this section, we prove our results for adaptive roBPs.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Decomposition of roBPs</head><p>As before, We use B : {0, 1} n ae {0, 1} to denote the adaptive branching program we are analyzing and use P : {&#177;1} n ae {0, 1} to denote the function computed by BP over {&#177;1} basis. For every input x oe {0, 1} n , define y oe {&#177;1} n as y i = (&#8800;1) xi for every i oe [n], and I C A L P 2 0 2 3 define P (y) = B(x). For any state v in the program, we denote by pos v the index of the variable queried on state v. We have two outgoing edges from v, one marked with x pos v = 0 and another with x pos v = 1.</p><p>For any state v in the program, we denote by Pre v the set of variables read in any path from the starting state to v, and by Post v the set of variables read in any path from v to the accepting state. We observe that Pre v and Post v are disjoint as otherwise there exists a path from the starting state to the accepting state (and passes through v) and reads the same variable twice.</p><p>Formally, suppose there exists a vertex v and an index i oe Pre v fl Post v . We choose a computation path fi from starting vertex v 0 to v that queries the set S &#8482; [n] of variables, and a path fi &#213; from v to the final layer that queries the set T &#8482; [n], where i oe S.</p><p>We can construct an input x oe {0, 1} n that guides the program to follow the computational path of fi &#182; fi &#213; . Each time the program reads a variable x j , if x j has been queried before, this clearly violates the read-once requirement. Otherwise, we can set x j to make the program follow the path of fi &#182; fi &#213; . However, since know x i is queried at least twice along the path, there must be some point, where the "read-once" requirement is violated.</p><p>Define P : {&#8800;1, 1} n ae {0, 1} as the function computed by the program. For a state v in the branching program, we denote by P aev the event that the path from the starting state passes through v. Note that P aev can be described as a branching program on the variables Pre v . We denote by P vae the sub-program of P starting at v. Note that P vae can be described as a branching program on the variables Post v .</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1.1">Fourier Decomposition for Adaptive BP</head><p>Recall that the Fourier representation of any function f : {&#177;1} n ae R is q where the second equality holds due to the following reason. For any -&#8482; -let X -be the set of strings on which the program reads -and doesn't read -\ -. We note that if x oe X -for some set -which is a strict subset of -, then also x &#213; := x &#252; e i for i oe -\ -is in X -, since the path for both x and x &#213; will be the same (as the path doesn't query x i ). We see that the inputs in X -can be partitioned to pairs, and each pair contributed 0 to E y&#8805;{&#177;1} n [&#8240; -(y)].</p><p>For any x for which B(x) reads all the variables in -, there is a unique state v along the path such that B reads exactly k variables in -before v, and B reads the k + 1 variable from -immediately on the edge that goes out from v.</p><p>Thus, we can partition these paths according to the state v. We observe that v is the state immediately before reading the k + 1 variable in -if |Pre v fl -| = k and if pos v oe -. This gives</p></div><note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="3" xml:id="foot_0"><p>A hitting set generator (HSG) H : {0, 1} s ae {0, 1} for a class of functions F satisfies the following: for every f oe F such that Pr xoe{0,1} n [f (x) = 1] &gt; &#193;, there exists z oe {0, 1} s such that f (H(z)) = 1. Note that a PRG is automatically an HSG, while the converse may not hold.</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="4" xml:id="foot_1"><p>For brevity, we use y &#8805; U to mean that y &#8805; U ({&#8800;1, 1} n ).I C A L P 2 0 2 3</p></note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_2"><p>This is the only place we use the regularity of the program.</p></note>
		</body>
		</text>
</TEI>
