1 Introduction

\({{\,\mathrm{\texttt{TFNP}}\,}}\) problems [2, 3] — the existence of solutions is guaranteed, and the correctness of every solution is effortlessly checkable — comprise a fascinating field in computational complexity theory. It is known that many significantly important computational problems belong to the complexity class \({{\,\mathrm{\texttt{TFNP}}\,}}\). For example, finding a Nash equilibrium [4, 5], computing a fair division [6, 7, 8], integer factoring [9, 10], and algebraic problems related to cryptographies [11, 12]. A natural way to analyze the theoretical features of a complexity class is to characterize its class by complete problems. However, it is widely believed that \({{\,\mathrm{\texttt{TFNP}}\,}}\) has no complete problem [3, 13]. Consequently, several \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses with complete problems have been introduced over the past three decades. The best well-known such classes include \({{\,\mathrm{\texttt{PLS}}\,}}\) [14], \({{\,\mathrm{\texttt{PPAD}}\,}}\), \({{\,\mathrm{\texttt{PPA}}\,}}\), \({{\,\mathrm{\texttt{PPP}}\,}}\) [3], \({{\,\mathrm{\texttt{PWPP}}\,}}\) [10], and \({{\,\mathrm{\texttt{EOPL}}\,}}\) [15, 16, 17].

We are interested in the boundary of total search problems. In particular, our central motive is to capture the most hard problems among syntactic \({{\,\mathrm{\texttt{TFNP}}\,}}\) problems. Previously, Goldberg and Papadimitriou [18] have introduced a \({{\,\mathrm{\texttt{TFNP}}\,}}\) problem that unifies the traditional \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses. However, we are unaware of another \({{\,\mathrm{\texttt{TFNP}}\,}}\) problem that unifies \({{\,\mathrm{\texttt{PLS}}\,}}\), \({{\,\mathrm{\texttt{PPP}}\,}}\), and \({{\,\mathrm{\texttt{PPA}}\,}}\). As a first step, this paper sheds light on the relationship between the two \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses \({{\,\mathrm{\texttt{PLS}}\,}}\) and \({{\,\mathrm{\texttt{PLC}}\,}}\).

Class PLS The complexity class \({{\,\mathrm{\texttt{PLS}}\,}}\), introduced by Johnson et al. [14], is one of the most famous \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses. The class \({{\,\mathrm{\texttt{PLS}}\,}}\) captures the complexity of the problems that can be solved by a local search method. There are many ways to formulate the complexity class \({{\,\mathrm{\texttt{PLS}}\,}}\). In this paper, we adopt the definition based on the \({{\,\mathrm{\texttt{TFNP}}\,}}\) problem Iter. Consider a non-decreasing function \(S: [2^n] \rightarrow [2^n]\) with \(S(1) > 1\). The task of the problem Iter is to find a point \(x \in [2^n]\) satisfying the stopping criterion: \(x < S(x) = S(S(x))\). Unfortunately, we are unaware of a way of syntactically enforcing the function S is non-decreasing. To ensure that the problem belongs to \({{\,\mathrm{\texttt{TFNP}}\,}}\), we introduce a violation (a point x such that \(S(x) < x\)) as a solution. The complexity class \({{\,\mathrm{\texttt{PLS}}\,}}\) is the set of all search problems that are reducible to Iter in polynomial time [19].

Definition 1

(Iter) The problem Iter is defined as follows: Given a Boolean circuit \(S: [2^n] \rightarrow [2^n]\) with \(S(1) > 1\), find one of the following: (1) a point \(x \in [2^n]\) such that \(S(x) > x\) and \(S(S(x)) = S(x)\); and (2) a point \(x \in [2^n]\) such that \(S(x) < x\).

Class PLC The complexity class \({{\,\mathrm{\texttt{PLC}}\,}}\) is a \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclass, introduced by Pasarkar et al. [1]. This class is defined as the set of all search problems that are reducible to Long Choice (see Definition 2) in polynomial time.

The problem Long Choice captures the computational aspects of the following two-player game: There are \(2^n\) stones; we denote by \(U_{0}\) the set of all stones. In the first round, Player 1 chooses one stone \(a_{0}\) from \(U_{0}\), then Player 2 partitions remaining stones \(U_{1}:= U_{0} \setminus \{ a_{0} \}\) into two groups, denoted by \(U_{1}^{0}\) and \(U_{1}^{1}\). In the second round, Player 1 chooses one stone \(a_{1}\) from \(U_{1}^{b_1}\), then all stones in the opposite to \(a_{1}\) (i.e., all stones in \(U_{1}^{1-b_1}\)) are removed from the game immediately. Player 2 partitions all stones in the group \(U_{2}:= U_{1}^{b_1} \setminus \{ a_{1} \}\) into two groups, denoted by \(U_{2}^{0}\) and \(U_{2}^{1}\). In the i-th round, Player 1 chooses one stone \(a_{i-1}\) from \(U_{i-1}^{b_{i-1}}\), then all stones in \(U_{i-1}^{1 - b_{i-1}}\) are removed from the game immediately. Player 2 partitions all stones in the group \(U_{i}:= U_{i}^{b_{i-1}} \setminus \{ a_{i-1} \}\) into two groups \(U_{i}^{0}\) and \(U_{i}^{1}\). They repeat such processes \(n+1\) rounds. Player 1 wins if they can pick \(n+1\) distinct stones \(a_{0}, a_{1}, \dots , a_{n}\) at the end of the game. If Player 1 cannot choose any stones during the above game, then Player 2 wins. In this paper, we call this game the Interactive Bipartition Stone-Picking GameFootnote 1.

It is straightforward to see that a winning strategy for Player 1 in Interactive Bipartition Stone-Picking Game always exists. Roughly speaking, the problem Long Choice is to find a winning strategy for Player 1 in Interactive Bipartition Stone-Picking Game when we are given a description of Player 2’s action at each round.

Definition 2

(Long Choice) The problem Long Choice is defined as follows: Given \(n - 1\) Boolean circuits \(P_{0}, \dots , P_{n-2}\) such that \(P_{i}: (\{ 0, 1 \}^{n})^{i+2} \rightarrow \{0, 1\}\) for each \(i \in \{0, \dots , n-2\}\), find a sequence of \(n+1\) distinct elements \(a_{0}, a_{1}, \dots , a_{n}\) in \(\{ 0, 1 \}^{n}\) such that for each \(i \in \{0, \dots , n-2\}\), \(P_{i}(a_{0} \dots , a_{i}, a_{j})\) is the same for every \(j > i\).

For simplicity, we call a sequence of \(n+1\) distinct elements \(a:= (a_0, \dots , a_n)\) that is a solution to a Long Choice instance \(\langle P_{0}, \dots , P_{n-2} \rangle \) a Long Choice solution with respect to \(P_{0}, \dots , P_{n-2}\) in the rest of this paper. Moreover, we simply say a Long Choice solution when the predicate functions are clear in the context.

1.1 Our Contributions

This paper focuses on the complexity of the generalization of Long Choice. We introduce two \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses that correspond to search problems that are non-adaptive and adaptive Cook reducible to Long Choice, respectively. Furthermore, we produce a \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclass that contains \({{\,\mathrm{\texttt{PLS}}\,}}\) and \({{\,\mathrm{\texttt{PLC}}\,}}\) through the generalization of Long Choice.

Recall that the following variant of Long Choice is also \({{\,\mathrm{\texttt{PLC}}\,}}\)-complete [1].

Definition 3

(Constrained Long Choice) The problem Constrained Long Choice is defined as follows: Given \(n - 1\) Boolean circuits \(P_{0}, \dots , P_{n-2}\) such that \(P_{i}: (\{ 0, 1 \}^{n})^{i+2} \rightarrow \{0, 1\}\) for each \(i \in \{0, \dots , n-2\}\) and a beginning element \(a_{0}\) in \(\{ 0, 1 \}^{n}\), find a sequence of \(n+1\) distinct elements \(a_{0}, a_{1}, \dots , a_{n}\) in \(\{ 0, 1 \}^{n}\) such that for each \(i \in \{0, \dots , n-2\}\), \(P_{i}(a_{0} \dots , a_{i}, a_{j})\) is the same for every \(j > i\).

Proposition 1

(Pasarkar et al. [1]) Long Choice and Constrained Long Choice are polynomial-time reducible to each other.

The above result implies that there is a Long Choice solution for each beginning element. In this paper, we consider three variants of Constrained Long Choice in which we are given multiple beginning elements. There are two approaches for generalizing Constrained Long Choice: One is that we are simply given multiple beginning elements, and the other is that we are sequentially given multiple beginning elements, that is, the t-th beginning element depends on a Constrained Long Choice solution based on the \((t-1)\)-st beginning element.

Parallel Long Choice We first discuss a parallel variant of Constrained Long Choice. Consider the problem of computing m Long Choice solutions when we are given \(n-1\) predicate functions and m beginning elements. We call this variant Parallel Long Choice; the formal definition can be found in Definition 4. The complexity class \({{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}\) is defined as the set of all search problems that are reducible to Parallel Long Choice in polynomial time. We show that the class \({{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}\) corresponds to the complexity class related to \({{\,\mathrm{\texttt{TFNP}}\,}}\) problems that have a non-adaptive Cook reduction to \({{\,\mathrm{\texttt{PLC}}\,}}\). We prove this fact in Section 4.

Definition 4

(Parallel Long Choice) The problem Parallel Long Choice is defined as follows: Given \(n-1\) Boolean circuits \(P_{0}, \dots , P_{n-2}\) such that \(P_{i}:(\{ 0, 1 \}^{n})^{i+2} \rightarrow \{ 0, 1 \}\) for each \(i \in \{ 0, \dots , n-2 \}\), and a set of beginning elements \(\{ a_{0}^{1}, \dots , a_{0}^{m} \}\), find m sequences of \(n+1\) elements \(a^{1}, \dots , a^{m}\), where \(a^{t} = (a_{0}^{t}, \dots , a_{n}^{t})\) for each \(t \in [m]\), such that for every \(t \in [m]\), the following two properties hold: (1) For all \(0 \le i < j \le n\), \(a_{i}^{t} \ne a_{j}^{t}\), and (2) for each \(i \in \{ 0, 1, \dots , n-2 \}\), \(P_{i}(a_{0}^{t}, \dots , a_{i}^{t}, a_{j}^{t}\)) is the same for every \(j > i\).

Theorem 2

\({{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}= {{\,\mathrm{\texttt{FP}}\,}}_{\Vert }^{{{\,\mathrm{\texttt{PLC}}\,}}}\).

Iterative Long Choice We move on to the second variant of Constrained Long Choice; we focus on the problem in which we iteratively solve Constrained Long Choice instances. To handle such a variant, we are given an additional Boolean circuit, a process function, and an iteration parameter T, which is represented by unary.

Let \(\mathcal {I}:= \langle P_{0}, \dots , P_{n-1}; a_{0}^{0} \rangle \) be a Constrained Long Choice instance. In our new variant, Iterative Long Choice, we also obtain a Boolean circuit \(w: (\{ 0, 1 \}^{n})^{n+1} \rightarrow \{ 0, 1 \}^{n}\) and a unary parameter \(1^{T}\) for a positive integer T. A solution to Iterative Long Choice consists of T sequences \(a^{0}, \dots , a^{T-1}\) of \(n+1\) elements in \(\{ 0, 1 \}^{n}\) satisfying the following two conditions:

  1. (i)

    For each \(t \in \{ 0, \dots , T-1 \}\), the sequence \(a^{t} = (a_{0}^{t}, \dots , a_{n}^{t})\) is a solution to the Constrained Long Choice instance \(\langle P_{0}, \dots , P_{n-2}; a_{0}^{t} \rangle \).

  2. (ii)

    For each \(t \in [T-1]\), \(a_{0}^{t} = w(a^{t-1})\).

In other words, the process function w specifies the next beginning element depending only on the current solution. The formal definition of Iterative Long Choice can be found in Definition 5. We define the complexity class \({{\,\mathrm{\texttt{PiLC}}\,}}\) as the set of all search problems that are reducible to Iterative Long Choice in polynomial time. In Section 5, we prove that the class \({{\,\mathrm{\texttt{PiLC}}\,}}\) is closed under the Turing reduction.

Definition 5

(Iterative Long Choice) The problem Iterative Long Choice is defined as follows: Given \(n-1\) Boolean circuits \(P_{0}, \dots , P_{n-2}\) such that \(P_{i}: \left( \{ 0, 1 \}^{n} \right) ^{i+2} \rightarrow \{ 0, 1 \}\) for each \(i \in \{ 0, 1 \dots , n-2 \}\), a beginning element \(a_{0}^{0} \in \{ 0, 1 \}^{n}\), a Boolean circuit \(w: (\{ 0, 1 \}^{n})^{n+1} \rightarrow \{ 0, 1 \}^{n}\), and an iteration parameter \(1^{T}\), where T is a positive integer, find T sequences of \(n+1\) elements \(a^{0}, \dots , a^{T-1}\) such that (1) for every \(t \in \{ 0, 1, \dots , T-1 \}\), the sequence \(a^{t} = (a_{0}^{t}, \dots , a_{0}^{t})\) is a solution to the Constrained Long Choice instance \(\langle P_{0}, \dots , P_{n-2}; a_{0}^{t} \rangle \) and (2) for every \(t \in [T-1]\), \(a_{0}^{t}:= w(a^{t-1})\).

Theorem 3

\({{\,\mathrm{\texttt{PiLC}}\,}}= {{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\texttt{PiLC}}\,}}} = {{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\texttt{PLC}}\,}}}\).

Inductive Long Choice Finally, we introduce the third variant of Long Choice, which is a Long Choice problem with inductive principle. Recall that Iterative Long Choice has two additional inputs: a process function and an iterative parameter. In an instance of our third variant, called Inductive Long Choice, we remove an iterative parameter and add an ordering constraint instead.

To formulate Inductive Long Choice, we fix a total order. We define \(\psi : \{ 0, 1 \}^{n} \rightarrow [2^n]\) as \(\psi (x):= 1 + \sum _{i \in [n]} 2^{i-1} x_{i}\) for every \(x \in \{ 0, 1 \}^{n}\). Note that the function \(\psi \) is a one-to-one correspondence between \(\{ 0, 1 \}^{n}\) and \([2^n]\). For each pair of n-bit strings \(x, y \in \{ 0, 1 \}^{n}\), we write \(x \succeq y\) for \(\psi (x) \ge \psi (y)\). Furthermore, \(x \succ y\) represents a strict relationship, i.e., \(\psi (x) > \psi (y)\).

Let \(\mathcal {I}:= \langle P_{0}, \dots , P_{n-1} \rangle \) be a Long Choice instance. In our third variant, Inductive Long Choice, we also obtain a Boolean circuit \(w: \left( \{ 0, 1 \}^{n} \right) ^{n+1} \rightarrow \{ 0, 1 \}^{n}\) computing a process function. Note that, unlike Iterative Long Choice, an instance of Inductive Long Choice does not have a beginning element and an iterative parameter.

Intuitively, for every Inductive Long Choice instance, the set of all Long Choice solutions has a DAG-like structure induced by the process function. Consider a graph \(G = (V, E)\) induced by a Long Choice instance \(\mathcal {I}\) and a process function w. Here, the vertex set V is a set of all Long Choice solutions with respect to \(P_{0}, \dots , P_{n-1}\). Since there is at least one Long Choice solution for every beginning element, the graph G has exponentially many vertices. For two Long Choice solutions \(a:= (a_0, \dots , a_n)\) and \(b:= (b_0, \dots , b_n)\) with respect to \(P_{0}, \dots , P_{n-2}\), there is an arc (ab) in E if it holds that \(b_{0} = w(a)\) and \(a_{0} \prec b_{0}\). The task of Inductive Long Choice is to find an arc \((a^0, a^1) \in E\) such that \(a^1\) is a sink node on the graph G or a violation of the source condition, i.e., a Long Choice solution \(a:= (a_0, \dots , a_n)\) with \(a_0 = 0^n\) is not a source on G.

More precisely, a solution to Inductive Long Choice is one of the following:

  1. (I)

    two Long Choice solutions \(a^{0} = (a_{0}^{0}, \dots , a_{n}^{0})\) and \(a^{1} = (a_{0}^{1}, \dots , a_{n}^{1})\) with respect to \(P_{0}, \dots , P_{n-2}\) such that \(a_{0}^{1} = w(a^{0}) \succ a_{0}^{0}\) and \(a_{0}^{1} \succeq w(a^{1})\); and

  2. (II)

    a Long Choice solution \(a = (a_{0}, \dots , a_{n})\) with respect to \(P_{0}, \dots , P_{n-2}\) such that \(a_0 = 0^n\) and \(w(a) = 0^n\).

The above observation implies that Inductive Long Choice is a total search problem; Section 6.1 provides a formal proof.

The formal definition of Inductive Long Choice can be found in Definition 6. We define the complexity class \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\) as the set of all search problems that are reducible to Inductive Long Choice in polynomial time. We show in Section 6 that the problem Inductive Long Choice is \({{\,\mathrm{\texttt{PLS}}\,}}\)- and \({{\,\mathrm{\texttt{PiLC}}\,}}\)-hard, and the class \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\) is closed under the Turing reduction.

Definition 6

The problem Inductive Long Choice is defined as follows: Given \(n-1\) Boolean circuits \(P_{0}, \dots , P_{n-2}\) such that \(P_{i}: \left( \{ 0, 1 \}^{n} \right) ^{i+2} \rightarrow \{ 0, 1 \}\) for each \(i \in \{ 0, 1, \dots , n-2 \}\), a Boolean circuit \(w: \left( \{ 0, 1 \}^{n} \right) ^{n+1} \rightarrow \{ 0, 1 \}^{n}\), find one of the following: (1) two Long Choice solution \(a^{0} = (a_{0}^{0}, \dots , a_{n}^{0})\) and \(a^{1} = (a_{0}^{1}, \dots , a_{n}^{1})\) such that \(a_{0}^{1} = w(a^{0}) \succ a_{0}^{0}\) and \(a_{0}^{1} \succeq w(a^{1})\); (2) a Long Choice solution \(a = (a_{0}, \dots , a_{n})\) such that \(a_0 = 0^n\) and \(w(a) = 0^n\).

Theorem 4

\({{\,\mathrm{\texttt{PLS}}\,}}\cup {{\,\mathrm{\texttt{PiLC}}\,}}\subseteq {{\,\mathrm{\mathtt {IND-PLC}}\,}}= {{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\mathtt {IND-PLC}}\,}}} \subseteq {{\,\mathrm{\texttt{TFNP}}\,}}\).

Remark 1

In our three variants, Parallel Long Choice, Iterative Long Choice, and Inductive Long Choice, we require that a solution sequence \(a^{t} = (a_{0}^{t}, \dots , a_{n}^{t})\) consists of \(n+1\) distinct elements in \(\{ 0, 1 \}^{n}\) for each t. However, we permit two sequences \(a^{t_{1}}\) and \(a^{t_2}\) to have common elements.

1.2 Related Work

We are unaware of the studies on the relationship between the \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses \({{\,\mathrm{\texttt{PLS}}\,}}\) and \({{\,\mathrm{\texttt{PLC}}\,}}\) except for the author’s previous preprint [21], which contains a significant error.

On the other hand, there are some studies that focus on the relationship between \({{\,\mathrm{\texttt{PLC}}\,}}\) and \({{\,\mathrm{\texttt{PPP}}\,}}\), a class for \({{\,\mathrm{\texttt{TFNP}}\,}}\) search problems whose existence of solutions is guaranteed by the pigeonhole principle. Most recently, Jain et al. [21] have investigated the generalization of the class \({{\,\mathrm{\texttt{PPP}}\,}}\) and its hierarchy called “Pecking Order.” They have introduced the new \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses the Pigeon Hierarchy (\(\texttt{PiH}\)), \(\texttt{SAP}\), and \(\texttt{PAP}\), and showed that the class \(\texttt{PAP}\) contains \(\texttt{UPLC}\), a class for search problems that are polynomial-time reducible to Unary Long Choice. They have also proven the following separations in the black-box settings: (i) \(\texttt{PAP}\) separates from \({{\,\mathrm{\texttt{PLS}}\,}}\); and (ii) \({{\,\mathrm{\texttt{PLC}}\,}}\) and \(\texttt{UPLC}\) separates from \({{\,\mathrm{\texttt{PPP}}\,}}\). Another recent related work by Fleming et al. [22] has shown that, in the black-box setting, the class \({{\,\mathrm{\texttt{PPP}}\,}}\) is not closed under the Turing reduction.

2 Preliminaries

This section presents terminologies that we will use in this paper.

We denote by \(\mathbb {Z}\) the set of all integers. For an integer \(a \in \mathbb {Z}\), we define \(\mathbb {Z}_{\ge a}:= \{ x \in \mathbb {Z}: x \ge a \}\) and \(\mathbb {Z}_{> a}:= \{ x \in \mathbb {Z}: x > a \}\). We use \([n]:= \{ 1, 2, \dots , n \}\) for every positive integer n in \(\mathbb {Z}_{> 0}\). Let X be a finite set. We denote by |X| the number of the elements in X.

Let \(\{ 0, 1 \}^{*}\) denote the set of binary strings with a finite length. For every string \(x \in \{ 0, 1 \}^{*}\), we denote by |x| the length of x. For each positive integer n, we write \(\{ 0, 1 \}^{n}\) for the set of binary strings with the length n. We will use the symbol \(\sharp \) to represent the concatenation of strings. Thus, for any \(n_{1}\)-bit string \(x_{1}\) and any \(n_{2}\)-bit string \(x_{2}\), we regard \(x_{1} \sharp x_{2}\) as the \((n_{1} + n_{2})\)-bit string whose first \(n_{1}\)-bit string is \(x_{1}\) and whose last \(n_{2}\)-bit string is \(x_{2}\). Throughout this short paper, we sometimes regard \(\{ 0, 1 \}^n\) as the set of positve integers \([2^n]\).

Search Problems Let \(R \subseteq \{ 0, 1 \}^* \times \{ 0, 1 \}^*\) be a relation. We say that R is polynomially balanced if there is a polynomial \(p: \mathbb {Z}_{\ge 0} \rightarrow \mathbb {Z}_{\ge 0}\) such that for each \((x, y) \in R\), it holds that \(|y| \le p(|x|)\). We say that R is polynomial-time decidable if for each pair of strings \((x, y) \in \{ 0, 1 \}^* \times \{ 0, 1 \}^*\), we can decide whether (xy) belongs to R in polynomial time. We say that R is total if for every string \(x \in \{ 0, 1 \}^*\), there always exists at least one string y such that \((x, y) \in R\).

For a relation \(R \subseteq \{ 0, 1 \}^* \times \{ 0, 1 \}^*\), the search problem with respect to R is defined as followsFootnote 2: Given a string \(x \in \{ 0, 1 \}^*\), find a string \(y \in \{ 0, 1 \}^*\) such that \((x, y) \in R\) if such a y exists, otherwise reports “no.” When R is also total, we call such a search problem a total search problem. The complexity class \({{\,\mathrm{\texttt{FNP}}\,}}\) is the set of all search problems with respect to a polynomially balanced and polynomial-time decidable relation R. The complexity class \({{\,\mathrm{\texttt{TFNP}}\,}}\) is the set of all total search problems belonging to \({{\,\mathrm{\texttt{FNP}}\,}}\). By definition, it holds that \({{\,\mathrm{\texttt{TFNP}}\,}}\subseteq {{\,\mathrm{\texttt{FNP}}\,}}\).

Reductions Let \(R, S \subseteq \{ 0, 1 \}^* \times \{ 0, 1 \}^*\) be two search problems. A polynomial-time reduction from R to S is defined by two polynomial-time computable functions \(f: \{ 0, 1 \}^* \rightarrow \{ 0, 1 \}^*\) and \(g: \{ 0, 1 \}^* \times \{ 0, 1 \}^* \rightarrow \{ 0, 1 \}^*\) satisfying that \((x, g(x, y)) \in R\) whenever \((f(x), y) \in S\). In other words, the function f maps an instance x of R to an instance f(x) of S, and the other function g maps a solution y to the instance f(x) to a solution g(xy) to the instance x. A polynomial-time Turing reduction (or Cook reduction) from R to S is defined by a polynomial-time oracle Turing machine \(M^{\mathcal {O}_{S}}\) such that for every input instance x of R, \(M^{\mathcal {O}_{S}}\) returns an output string y with \((x, y) \in R\) whenever all the oracle answers are solutions to the query instances of S. We say that a Turing reduction is non-adaptive if each query instance does not depend on solutions to any other query instance.

For a complexity class \(\mathcal {C}\), we say that a search problem R is \(\mathcal {C}\)-hard if all search problems in \(\mathcal {C}\) are polynomial-time reducible to R. Furthermore, we say that a search problem R is \(\mathcal {C}\)-complete if R is \(\mathcal {C}\)-hard, and R belongs to \(\mathcal {C}\). We denote by \({{\,\mathrm{\texttt{FP}}\,}}^{\mathcal {C}}\) the set of all search problems that are Cook reducible to a search problem in \(\mathcal {C}\). We also denote by \({{\,\mathrm{\texttt{FP}}\,}}_{\Vert }^{\mathcal {C}}\) the set of all search problems that have a non-adaptive Cook reduction to a search problem in \(\mathcal {C}\).

3 Technical Ingredient: Natural Padding Lemma

This section observes the important property of Constrained Long Choice: We have a natural padding for every Constrained Long Choice instance. More precisely, for every Constrained Long Choice instance \(\mathcal {I}_{n}\) whose universe is the set of all n-bit strings, there is another Constrained Long Choice instance \(\mathcal {J}_{m+n}\) whose universe is the set of all \((m+n)\)-bit strings such that we can effortlessly recover a solution to the original instance \(\mathcal {I}_{n}\) from each solution to the new instance \(\mathcal {J}_{m+n}\), where m is a positive integer. This property implies that, without loss of generality, we can assume that for every Turing machine with the oracle access to Constrained Long Choice, all query instances have the same size of the universe.

The next lemma essentially follows from Instance Extension Property shown in [19].

Lemma 5

(Natural Padding Lemma [19]) Let n and m be two positive integers. Consider a Constrained Long Choice instance \(\mathcal {I}_{n}:= \langle P_{0}, \dots , P_{n-2}; a_{0} \rangle \). We have another Constrained Long Choice instance \(\mathcal {J}_{m+n}:= \langle Q_{0}, \dots , Q_{m+n-2}; \pi \sharp a_{0} \rangle \), where \(\pi \) is any m-bit string, such that we can recover a solution to \(\mathcal {I}_{n}\) from each solution to \(\mathcal {J}_{m+n}\). Furthermore, such a reduction is polynomial-time computable if m is bounded by some polynomial in n.

Proof

Let \(\mathcal {I}_{n}:= \langle P_{0}, \dots , P_{n-2}; a_{0} \rangle \) be a Constrained Long Choice instance whose universe is the set of all n-bit strings. Let \(\pi \in \{ 0, 1 \}^{m}\) be any m-bit string. Now, we construct another instance \(\mathcal {J}_{m+n}:= \langle Q_{0}, \dots , Q_{m+n-2}; b_{0} = \pi \sharp a_{0} \rangle \) whose universe is the set of all \((m+n)\)-bit strings.

We use the first m predicate functions \(Q_{0}, \dots , Q_{m-1}\) to fix the first m-bit string. Then, we use the last \(n-1\) predicate functions \(Q_{m+0}, \dots Q_{m+n-2}\) to simulate the original predicate functions \(P_{0}, \dots , P_{n-2}\). Our construction of the predicate functions \(Q_{m+0}, \dots , Q_{m+n-2}\) is inspired by the reduction from Constrained Long Choice to Long Choice shown in [1].

The definition of the first m predicate functions is simple. For each \(i \in \{ 0, 1, \dots , m \}\), the predicate function \(Q_{i}(b_{0}, \dots , b_{i}, x)\) returns the \((i+1)\)-st bit of the element \(x \in \{ 0, 1 \}^{m+n}\).

We move on to the definition of the remaining \(n-1\) predicate functions \(Q_{m+0}, \dots , Q_{m+n-2}\). These predicate functions depend on the last n-bits of \(b_{m+0}, b_{m+1}, \dots , b_{m+n}\) and \(b_{0}\). For each \(i \in \{ 0, 1, \dots , n \}\), there exist an m-bit string \(\sigma _{m+i}\) and an n-bit string \(\beta _{m+i}\) such that \(b_{m+i} = \sigma _{m+i} \sharp \beta _{m+i}\). For each \(j \in \{ 0, 1, \dots , n \}\), we first replace the sequence of elements \(\beta _{m+0}, \dots , \beta _{m+j}\) with another sequence of elements \(c_{m+0}, \dots , c_{m+j}\) using the following rules:

(1) If \(\beta _{m+0} = a_{0}\), then we define \(c_{m+k} = \beta _{m+k}\) for every \(k \le j\). (2) Otherwise, we define \(c_{m+0} = a_{0}\) and, for each \(k \in [j]\), \(c_{m+k} = \beta _{m+k}\) if \(\beta _{m+k} \ne a_{0}\), otherwise \(c_{m+k} = \beta _{m+0}\).

Then, we define the predicate function \(Q_{m+j}\) as follows: For every \(\xi \in \{ 0, 1 \}^{m}\) and for every \(x \in \{ 0, 1 \}^{n}\),

$$\begin{aligned} Q_{m+j}(b_{0}, \dots , b_{m-1}, b_{m+0}, \dots , b_{m+j}, \xi \sharp x ) := {\left\{ \begin{array}{ll} P_{j}(c_{m+0}, \dots , c_{m+j}, x) & \text { if } x \ne a_{0}, \\ P_{j}(c_{m+0}, \dots , c_{m+j}, \beta _{m+0}) & \text { otherwise.} \end{array}\right. } \end{aligned}$$

We complete the construction of the other Constrained Long Choice instance \(\mathcal {J}_{m+n}\). What remains is to prove that we can obtain a solution to the original instance \(\mathcal {I}_{n}\) from every solution to the reduced instance \(\mathcal {J}_{m+n}\).

Let \(b_{0}, \dots , b_{m+n}\) be a solution to the reduced instance \(\mathcal {J}_{m+n}\). From the definition of the predicate functions, we know that the first m-bits of the \(b_{m+0}, \dots , b_{m+n}\) are the same. Hence, there is an m-bit string \(\sigma \in \{ 0, 1 \}^{m}\) such that for each \(i \in [m+n]\), \(b_{m+i} = \sigma \sharp \beta _{m+i}\) for some n-bit string \(\beta _{m+i} \in \{ 0, 1 \}^{n}\). Since the elements \(b_{0}, \dots , b_{m+n}\) are distinct, \(\beta _{m+i} \ne \beta _{m+j}\) for all \(0 \le i < j \le n\). To complete the proof, it suffices to show that we can recover a solution to the instance \(\mathcal {I}_{n}\) from the \(n+2\) elements \(a_{0}, \beta _{m+0}, \dots , \beta _{m+n}\) in \(\{ 0, 1 \}^{n}\).

If \(\beta _{m+0} = a_{0}\), then the predicate functions \(Q_{m+0}, \dots , Q_{m+n-2}\) naturally simulate the original predicate functions \(P_{0}, \dots , P_{n-2}\). Therefore, the sequence of \(n+1\) distinct elements \(\beta _{m+0}, \dots , \beta _{m+n}\) is a solution to \(\mathcal {I}_{n}\). Otherwise, (i.e., \(\beta _{m+0} \ne a_{0}\)), the predicate functions \(Q_{m+0}, \dots , Q_{m+n-2}\) replace the input sequence with another sequence \(c_{m+0}, \dots , c_{m+n}\). From the replacement rule, we know that \(c_{m+0} = a_{0}\). Note that the only element with \(\beta _{m+k} = a_{0}\) is replaced with the element \(\beta _{m+0}\) in the remaining elements. Thus, elements with \(\beta _{m+k} \ne a_{0}\) remain unchanged. Since the first m-bits of the elements \(b_{m+0}, \dots , b_{m+n}\) is fixed by \(\sigma \) and \(\beta _{m+i} \ne \beta _{m+j}\) for all \(0 \le i < j \le n\), such an element with \(\beta _{m+k} = a_{0}\) is at most one. Therefore, the replaced sequence of distinct \(n+1\) elements \(c_{m+0}, \dots , c_{m+n}\) is a solution to the original Constrained Long Choice instacne \(\mathcal {I}_{n}\) \(\square \)

4 Proof of Theorem 2

This section proves Theorem 2: \({{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}= {{\,\mathrm{\texttt{FP}}\,}}_{\Vert }^{{{\,\mathrm{\texttt{PLC}}\,}}}\). It obviously holds that we have a polynomial-time algorithm for solving Parallel Long Choice with a non-adaptive query to Constrained Long Choice. Hence, this section shows the reverse direction: We have a Parallel Long Choice instance corresponding to an algorithm with polynomially many non-adaptive queries to Constrained Long Choice.

Let \(\mathcal {I}\) be any instance of a search problem in \({{\,\mathrm{\texttt{FP}}\,}}_{\Vert }^{{{\,\mathrm{\texttt{PLC}}\,}}}\). We have a polynomial-time algorithm \(A_{\mathcal {I}}\) with non-adaptive queries to Constrained Long Choice for solving the instance \(\mathcal {I}\). Suppose that the algorithm \(A_{\mathcal {I}}\) makes m queries to Constrained Long Choice. Then, we denote by \(\mathcal {J}_{n}^{1}, \dots , \mathcal {J}_{n}^{m}\) the query instances of Constrained Long Choice, where \(\mathcal {J}_{n}^{j}:= \langle P_{0}^{j}, \dots , P_{n-2}^{j}; a_{0}^{j} \rangle \). Note that, without loss of generality, we can assume that every query on n-bits from Lemma 5.

We now construct a Parallel Long Choice instance \(\mathcal {K}_{n}:= \langle Q_{0}, \dots , Q_{n-2}; b_{0}^{1}, \dots , b_{0}^{m} \rangle \). We specify m beginning elements by \(b_{0}^{j} = j\) for each \(j \in [m]\), which are represented by binary. The predicate functions simulate the functions of the instance \(\mathcal {J}_{n}^{j}\) if the beginning element \(b_{0}^{j} = j\). For each \(i \in \{ 0, \dots , n-2 \}\), let \(b_{0}^{0}, \dots , b_{i}^{j}\) denote by the selected elements corresponding to the j-th solution. We define the predicate function \(Q_{i}\) as follows: For each \(x^{j} \in \{ 0, 1 \}^{n}\), \(Q_{i}(b_{0}^{j}, b_{1}^{j}, \dots , b_{i}^{j}, x^{j}) = P_{i}^{j}(a_{0}^{j}, \hat{b}_{1}^{j}, \dots , \hat{b}_{i}^{j}, \hat{x}^{j})\), where the replaced elements \(\hat{b}_{1}^{j}, \dots , \hat{b}_{i}^{j}, \hat{x}^{j}\) are specified by the following rule: For each \(k \in [i]\), \(\hat{b}_{k}^{j}:= b_{0}^{j}\) if \(b_{k}^{j} = a_{0}^{j}\); otherwise, \(\hat{b}_{i}^{j}:= b_{i}^{j}\); and \(\hat{x}^{j}:= b_{0}^{j}\) if \(x^{j} = a_{0}^{j}\); otherwise, \(\hat{x}^{j}:= x^{j}\). It is straightforward to see that this formulation simulates the original predicate functions.

The above reduction can be computed in polynomial time. Furthermore, it is straightforward to see that we can obtain solutions to the original query solutions from every solution to the reduced instance of Parallel Long Choice. Therefore, we have that \({{\,\mathrm{\texttt{FP}}\,}}_{\Vert }^{{{\,\mathrm{\texttt{PLC}}\,}}} \subseteq {{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}\).

5 Proof of Theorem 3

To prove Theorem 3, we show the following relationship: \({{\,\mathrm{\texttt{PiLC}}\,}}\subseteq {{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\texttt{PLC}}\,}}} \subseteq {{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\texttt{PiLC}}\,}}} \subseteq {{\,\mathrm{\texttt{PiLC}}\,}}\). The first two containments are trivial. Hence, this section shows the final relationship; that is, we show that \({{\,\mathrm{\texttt{PiLC}}\,}}\) is closed under the Turing reduction.

Consider an instance \(\mathcal {I}\) of a problem belonging to \({{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\texttt{PiLC}}\,}}}\). Thus, we have a polynomial-time algorithm \(A_{\mathcal {I}}\) with polynomially many queries to Iterative Long Choice. Suppose that \(A_{\mathcal {I}}\) makes m queries to Iterative Long Choice; we denote by \(\mathcal {J}_{n}^{1}, \dots , \mathcal {J}_{n}^{m}\) the query instances made by \(A_{\mathcal {I}}\), where \(\mathcal {J}_{n}^{j}:= \langle P_{0}^{j}, \dots , P_{n-2}^{j}; a_{0}^{j, 0}; w^{j}; 1^{T} \rangle \) for each \(j \in [m]\). From Lemma 5, we can assume that the universe of every query instance \(\mathcal {J}_{n}^{j}\) is the set of all n-bit strings without loss of generality. Furthermore, we can assume that the iterative parameter T is the same among the query instances without loss of generality. We will construct a single query to Iterative Long Choice.

Let M be a sufficiently large positive integer satisfying that \(\left( n (n+1) T \right) m \le M \le p(n)\) for some polynomial p. We now construct an Iterative Long Choice instance \(\mathcal {K}_{M+n}:= \langle Q_{0}, \dots , Q_{M+n-2}; b_{0}^{0}; w; 1^{mT} \rangle \). We define the beginning element to be \(b_{0}^{0}:= 0^{M} \sharp a_{0}^{1, 0}\), where \(a_{0}^{1, 0}\) is the beginning element of the instance \(\mathcal {J}_{n}^{1}\). For each iterative stage, the process function \(w: \left( \{ 0, 1 \}^{M+n} \right) ^{M+n+1} \rightarrow \{ 0, 1 \}^{M+n}\) behaves into writting down the solution history in the first M-bit space and the next beginning element in the last n-bit space.

Before starting the formal definition, we fix some notation to simplify our proof. For each \((j, t) \in [m] \times \{ 0, 1, \dots , T-1 \}\), we define \(\mu (j, t):= M - n (n+1)( (j-1) T + t )\), and we denote by \(b^{j, t} = (b_{0}^{j, t}, \dots , b_{M+n}^{j, t})\) and \(a^{j, t} = (a_{0}^{j, t}, \dots , a_{n}^{j, t})\) the sequences of \(M+n+1\) elements in \(\{ 0, 1 \}^{M+n}\) and \(n+1\) elements in \(\{ 0, 1 \}^{n}\), respectively. Moreover, for each \(j \in [m]\), we denote by \(\beta ^{j} = (b^{j, 0}, \dots , b^{j, T-1})\) and \(\alpha ^{j} = (a^{j, 0}, \dots , a^{j, T-1})\) the tuples of T sequences of \(M+n+1\) elements in \(\{ 0, 1 \}^{M+n}\) and \(n+1\) elements in \(\{ 0, 1 \}^{n}\), respectively. For a sequence of tuples \(\alpha ^{1}, \dots , \alpha ^{j-1}\), we denote by \(\mathcal {J}_{n}^{j}[\alpha ^{1}, \dots , \alpha ^{j-1}]\) the j-th query instance specified by the solution sequence \(\alpha ^{1}, \dots , \alpha ^{j-1}\). Furthermore, let \(\mathcal {J}_{n}^{j, t}[\alpha ^{1}, \dots , \alpha ^{j-1}]:= (P_{0}^{j}, \dots , P_{n-2}^{j}; a_{0}^{t})\) denote a Constrained Long Choice instance corresponding to the \((t+1)\)-st iteration of \(\mathcal {J}_{n}^{j}[\alpha ^{1}, \dots , \alpha ^{j-1}]\). We say that the beginning element \(b_{0}^{j, t}\) is valid if \(b_{0}^{j, t} = \alpha ^{1} \sharp \cdots \sharp \alpha ^{j-1} \sharp a^{j, 0} \sharp \cdots \sharp a^{j, t-1} \sharp 0^{\mu (j, t)} \sharp a_{0}^{j, t}\) and it satisfies the following conditions:

  1. (I)

    The tuple \(\alpha ^{1}\) is a solution to the first query instance \(\mathcal {J}_{n}^{1}\).

  2. (II)

    For each \(k \in \{ 2, 3, \dots , j-1 \}\), the tuple \(\alpha ^{k}\) is a solution to \(\mathcal {J}_{n}^{k}[\alpha ^{1}, \dots , \alpha ^{k-1}]\).

  3. (III)

    For each \(\tau \in \{ 0, 1 \dots , t-1 \}\), the sequence \(a^{j, \tau }\) is a solution to \(\mathcal {J}_{n}^{j, \tau }[\alpha ^{1}, \dots , \alpha ^{j-1}]\).

  4. (IV)

    If \(t > 0\), then the n-bit string \(a_{0}^{j, t}\) is a begining element such that \(a_{0}^{j, t} = w^{j}(a^{j, t-1})\). Otherwise, \(a_{0}^{j, 0}\) is the beginning element of the j-th query instance \(\mathcal {J}_{n}^{j}[\alpha ^{1}, \dots , \alpha ^{j-1}]\).

Also, we say that the beginning element \(b_{0}^{j, t}\) is invalid if \(b_{0}^{j, t}\) is not valid. Note that we can verify whether each beginning element \(b_{0}^{j, t}\) is valid in polynomial time.

We first describe the construction of the predicate functions \(Q_{0}, \dots , Q_{M+n-2}\). Let \(b_{0}^{j, t}\) be a current beginning element. If \(b_{0}^{j, t}\) is invalid, then every predicate function always returns 1 for every input. Otherwise (i.e., if \(b_{0}^{j, t}\) is valid), the beginning element \(b_{0}^{j, t}\) is the following form \(\alpha ^{1} \sharp \cdots \sharp \alpha ^{j-1} \sharp a^{j, 0} \sharp \cdots \sharp a^{j, t-1} \sharp 0^{\mu (j, t)} \sharp a_{0}^{j, t}\), where the tuples \(\alpha ^{1}, \dots , \alpha ^{j-1}\) are suitable solution sequence. In this case, by using the natural padding method shown in Lemma 5, the predicate functions \(Q_{0}, \dots , Q_{M+n-2}\) simulate the corresponding instance \(\mathcal {J}_{n}^{j, t}[\alpha ^{1}, \dots , \alpha ^{j-1}]\). If \(b_{0}^{j, t}\) is valid, we can obtain a solution \(a^{j, t}\) to \(\mathcal {J}_{n}^{j, t}[\alpha ^{1}, \dots , \alpha ^{j-1}]\) from every solution \(b^{j, t}\) to the Constrained Long Choice instance \(\langle Q_{0}, \dots , Q_{M+n-2}; b_{0}^{j, t} \rangle \).

Next, we describe the construction of the process function w. Let \(b^{j, t}:= (b_{0}^{j, t}, \dots , b_{M+n}^{j, t})\) be a solution to the \(( (j-1) T + t )\)-th iteration of the reduced instance \(\mathcal {K}_{M+n}\). Then, we denote by \(a^{j, t}\) the solution to the \((t+1)\)-st iteration of the corresponding query instance \(\mathcal {J}_{n}^{j}\) that is obtained from \(b^{j, t}\). The process function w is defined as follows:

$$\begin{aligned} w(b^{j, t}) := {\left\{ \begin{array}{ll} \alpha ^{1} \sharp \cdots \sharp \alpha ^{j-1} \sharp a^{j, 0} \sharp \cdots \sharp a^{j, t} \sharp 0^{\mu (j, t+1)} \sharp w^{j}(a^{j, t}) & \text { if } b_{0}^{j, t} \text { is valid, and } t < T - 1, \\ \alpha ^{1} \sharp \cdots \sharp \alpha ^{j} \sharp 0^{\mu (j+1, 0)} \sharp a_{0}^{j+1, 0} & \text { if } b_{0}^{j, t} \text { is valid, and } t = T-1, \\ 0^M \sharp a_{0}^{0, 1} & \text { otherwise, } \end{array}\right. } \end{aligned}$$

where let \(a_{0}^{m+1, 0} = 0^{n}\).

We complete a reduction to the single query to Iterative Long Choice. As shown in Section 5.1, we can effortlessly obtain a list of solutions to the query instances \(\mathcal {J}_{n}^{1}, \dots , \mathcal {J}_{n}^{m}\) from every solution to \(\mathcal {K}_{M+n}\). Our reduction can be computed in polynomial time. Hence, we have a polynomial-time reduction from every problem in \({{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\texttt{PiLC}}\,}}}\) to Iterative Long Choice.

5.1 How to Obtain a Solution to the Original Instance

Let \((\beta ^{1}, \dots , \beta ^{m})\) be a solution to the reduced Iterative Long Choice instance \(\mathcal {K}_{M + n}\), where for each \(j \in [m]\), \(\beta ^{j} = (b^{j, 0}, b^{j, 1}, \dots , b^{j, T-1} )\) such that for each \(t \in \{ 0, 1, \dots , T - 1 \}\), \(b^{j, t} = (b_{0}^{j, t}, \dots , b_{M+n}^{j, t})\) is a sequence of \(M + n + 1\) elements in \(\{ 0, 1 \}^{M + n}\). Recall the solution conditions of Iterative Long Choice, the tuple of equences \((\beta ^{1}, \dots , \beta ^{m})\) holds the following conditions:

  1. (i)

    For each \((j, t) \in [m] \times \{ 0, \dots , T-1 \}\), the sequence \(b^{j, t} = (b_{0}^{j, t}, \dots , b_{M+n}^{j, t})\) consists \(M+n+1\) distinct elements.

  2. (ii)

    For each \((j, t) \in [m] \times \{ 0, \dots , T-1 \}\), the sequence \(b^{j, t} = (b_{0}^{j, t}, \dots , b_{M+n}^{j, t})\) is a solution to the Constrained Long Choice instance \(\langle Q_{0}, \dots , Q_{M+n-2}; b_{0}^{j, t} \rangle \).

  3. (iii)

    For each \(j \in [m]\), and for each \(t \in [T-1]\), \(b_{0}^{j, t} = w(b^{j, t-1})\).

  4. (iv)

    For each \(j \in \{ 2, \dots , m \}\), \(b_{0}^{j, 0} = w(b^{j-1, T-1})\).

We will show that we can obtain a solution to \(\mathcal {J}_{n}^{j}\) from \(\beta ^{j}\) for each \(j \in [m]\) by induction.

In the base case, we show that we can obtain a solution \(\alpha ^{1}\) to \(\mathcal {J}_{n}^{1}\) from \(\beta ^{1}\). To prove this, we also use the inductive argument. First, we consider the sequence \(b^{1, 0} = (b_{0}^{1, 0}, \dots , b_{M+n}^{1, 0})\). By definition, the beginning element \(b_{0}^{1, 0} = 0^{M} \sharp a_{0}^{1, 0}\) is valid. Hence, the predicate functions \(Q_{0}, \dots , Q_{M+n-2}\) simulate the predicate functions for the insatance \(\mathcal {J}_{n}^{1, 0}\). As consequently, we obtain a solution \(a^{1, 0}\) to \(\mathcal {J}^{1, 0}\) from the sequence \(b^{1, 0}\). In this case, the process function \(w(b^{1, 0})\) returns the string \(a^{1, 0} \sharp 0^{\mu (1, 1)} \sharp w^{j}(a^{1, 0})\), which is the beginning element corresponding to \(\mathcal {J}_{n}^{1, 1}\). Thus, the process function w specifies the next beginning element appropriately.

Next, we show that for any \(t \in [T-1]\), we can recover a solution \(a^{1, t}\) to \(\mathcal {J}^{1, t}\) from the sequence \(b^{1, t}\). Suppose that for every \(\tau < t\), we can obtain a solution \(a^{1, \tau }\) to the instance \(\mathcal {J}_{n}^{1, \tau }\) from the sequence \(b^{1, \tau }\), and the process function \(w(b^{1, \tau })\) outputs the valid beginning element corresponding to the next iteration, i.e., the instance \(\mathcal {J}_{n}^{1, \tau + 1 }\). From the inductive hypothesis, the beginning element \(b_{1}^{1, t} = a^{1, 0} \sharp \cdots \sharp a^{1, t-1} \sharp 0^{\mu (j, t)} \sharp a_{0}^{1, t}\) is valid. Hence, the predicate functions \(Q_{0}, \dots , Q_{M+n-2}\) simulate the predicate functions for the instance \(\mathcal {J}_{n}^{1, t}\); and thus, we obtain a solution \(a^{1, t}\) to \(\mathcal {J}_{n}^{1, t}\) from the sequence \(b^{1, t}\). By definition, the process function \(w(b^{1, t})\) returns the string \(\alpha ^{1} \sharp 0^{\mu (2, 0)} \sharp a_{0}^{2, 0}\) if \(t = T-1\); otherwise returns \(a^{1, 0} \sharp \cdots \sharp a^{1, t} \sharp 0^{\mu (1, t+1)} \sharp w^{1}(a^{1, t})\). This implies that the process function specifies the next valid beginning element appropriately.

From the above observation, we obtain a solution \(\alpha ^{1}\) to the first query instance \(\mathcal {J}_{n}^{1}\) from the tuple \(\beta ^{1}\). Next, we discuss that for any \(j \in [m]\), we obtain a solution \(\alpha ^{j}\) to the corresponding instance \(\mathcal {J}_{n}^{j}[\alpha ^{1}, \dots , \alpha ^{j-1}]\) from the tuple \(\beta ^{j}\). Suppose that for every \(k < j\), we obtain a solution \(\alpha ^{k}\) to the instance \(\mathcal {J}_{n}^{k}[\alpha ^{1}, \dots , \alpha ^{k-1}]\) and the process function \(w(b^{k, T-1})\) returns the valid beginning element that corresponds to the instance \(\mathcal {J}_{n}^{k+1, 0}[\alpha ^{1}, \dots , \alpha ^{k}]\).

First, we show that we obtain a solution \(a^{j, 0}\) to the instance \(\mathcal {J}_{n}^{j, 0}[\alpha ^{1}, \dots , \alpha ^{j-1}]\) from the sequence \(b^{j, 0}\). From the inductive hypothesis, the beginning element \(b_{0}^{j, 0} = \alpha ^{1} \sharp \cdots \sharp \alpha ^{j-1} \sharp 0^{\mu (j, 0)} \sharp a_{0}^{j, 0}\) is valid; and thus, the predicate functions \(Q_{1}, \dots , Q_{M+n-2}\) simulate the predicate functions for the instance \(\mathcal {J}_{n}^{j, 0}[\alpha ^{1}, \dots , \alpha ^{j-1}]\). Hence, we obtain a solution \(a^{j, 0}\) to the corresponding instance. The process function \(w(b^{j, 0})\) outputs the string \(\alpha ^{1} \sharp \cdots \sharp \alpha ^{j-1} \sharp a^{j, 0} \sharp 0^{\mu (j, 1)} \sharp w^{j}(a^{j, 0})\); this is also valid beginning element corresponding to \(\mathcal {J}_{n}^{j, 1}[\alpha ^{1}, \dots , \alpha ^{j-1}]\).

Finally, we consider any \(t \in [T-1]\), i.e., the inductive case. Suppose that for every \(\tau < t\), we obtain a solution \(a^{j, \tau }\) to the instance \(\mathcal {J}_{n}^{j, \tau }[\alpha ^{1}, \dots , \alpha ^{j-1}]\), and the process function \(w(b^{j, \tau })\) returns the valid beginning element that correspnds to the instance \(\mathcal {J}_{n}^{j, \tau + 1}[\alpha ^{1}, \dots , \alpha ^{j - 1}]\). Now, we show that we obtain a solution \(a^{j, t}\) to the instance \(\mathcal {J}_{n}^{j, t}[\alpha ^{1}, \dots , \alpha ^{j-1}]\) from the sequence \(b^{j, t}\). From the inductive hypothesis, the beginning element \(b_{0}^{j, t} = \alpha ^{1} \sharp \cdots \sharp \alpha ^{j - 1} \sharp 0^{\mu (j, t)} \sharp a_{0}^{j, t}\) is valid; and thus, the predicate functions \(Q_{0}, \dots , Q_{M+n-2}\) simulate the predicate functions for the instance \(\mathcal {J}_{n}^{j, t}[\alpha ^{1}, \dots , \alpha ^{j-1}]\). Therefore, we obtain a solution \(a^{j, t}\) to the instance \(\mathcal {J}_{n}^{j, t}[\alpha ^{1}, \dots , \alpha ^{j-1}]\) from the sequence \(b^{1, j}\). The process function \(w(b^{j, t})\) returns the string \(\alpha ^{1} \sharp \cdots \sharp \alpha ^{j} \sharp 0^{\mu (j+1, 0)} a_{0}^{j+t, 0}\) if \(t = T-1\); otherwise \(\alpha ^{1} \sharp \cdots \sharp \alpha ^{j-1} \sharp a^{j, 0} \sharp \cdots \sharp a^{j, t} \sharp 0^{\mu (j, t+1)} \sharp w^{j}(a^{j, t})\). Hence, we obtain a solution \(\alpha ^{j}\) to the query instance \(\mathcal {J}_{n}^{j}[\alpha ^{1}, \dots , \alpha ^{j-1}]\).

From the above observation, we obtain a list of solutions to the query instances from every solution to the reduced Iterative Long Choice instance \(\mathcal {K}_{M+n}\).

6 Proof of Theorem 4

Our proof of Theorem 4 consists of the following three lemmata. The proofs of Lemmas 6, 7, 8 and 9 can be found in Sections 6.1, 6.2, 6.3 and 6.4, respectively.

Lemma 6

The problem Inductive Long Choice is in \({{\,\mathrm{\texttt{TFNP}}\,}}\).

Lemma 7

\({{\,\mathrm{\texttt{PLS}}\,}}\subseteq {{\,\mathrm{\mathtt {IND-PLC}}\,}}\)

Lemma 8

\({{\,\mathrm{\texttt{PiLC}}\,}}\subseteq {{\,\mathrm{\mathtt {IND-PLC}}\,}}\).

Lemma 9

The class \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\) is closed under the Turing reduction, i.e., \({{\,\mathrm{\mathtt {IND-PLC}}\,}}= {{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\mathtt {IND-PLC}}\,}}}\).

6.1 Proof of Lemma 6

This section shows the totality of Inductive Long Choice since it is straightforward to see that we can verify the correctness of a solution in polynomial time.

Let \(\langle P_{0}, \dots , P_{n-2}; w \rangle \) be any instance of Inductive Long Choice. Note that we can check whether every Long Choice solution \(a = (a_{0}, \dots , a_{n})\) with \(a_{0} = 0^n\) satisfies \(w(a) \succ 0^n\) in finite time. Hence, we suppose that every Long Choice solution \(a = (a_{0}, \dots , a_{n})\) with \(a_{0} = 0^n\) satisfies \(w(a) \succ 0^n\).

Let \(a^{0} = (a_{0}^{0}, \dots , a_{n}^{0})\) be a Long Choice solution with \(a_{0}^{0} = 0^{n}\). Consider the following sequence of Long Choice solutions: For each positive integer t, we denote by \(a^{t} = (a_{0}^{t}, \dots , a_{n}^{t})\) a Long Choice solution with \(a_{0}^{t} = w(a^{t-1})\). Since we consider a finite total order, there is a positive integer T such that \(w(a^{T}) \preceq a_{0}^{T}\). Let T be the smallest such integer. Then, the two Long Choice solutions \(a^{T-1}\) and \(a^{T}\) are the first type of solution to Inductive Long Choice.

Therefore, the problem Inductive Long Choice is a \({{\,\mathrm{\texttt{TFNP}}\,}}\) problem.

6.2 Proof of Lemma 7

To prove the \({{\,\mathrm{\texttt{PLS}}\,}}\)-hardness of Inductive Long Choice, we show a polynomial-time reduction form Iter to Inductive Long Choice.

Let \(\mathcal {I}:= \langle S: [2^n] \rightarrow [2^n] \rangle \) with \(S(1) > 1\) be an instance of Iter. As shown in Section 6.2.1, we can assume that the function S holds that \(S(x) \ge x\) for every \(x \in [2^n]\) without loss of generality. We now construct an Inductive Long Choice instance \(\mathcal {J}_{n}:= \langle P_{0}, \dots , P_{n-2}; w \rangle \).

We first describe the definition of the process function \(w: \left( \{ 0, 1 \}^{n} \right) ^{n+1} \rightarrow \{ 0, 1 \}^{n}\). For every sequence \(a = (a_0, \dots , a_n)\), we define \(w(a) = \psi ^{-1}(S(\psi (a_{0})))\). Thus, the process function w depends only on a beginning element and simulates the original Iter instance S. By definition, it is easy to see that \(w(a) \succ 0^{n}\) for every sequence \(a = (a_0, \dots , a_{n})\) with \(a_{0} = 0^{n}\).

Next, we define the predicate functions \(P_0, \dots , P_{n-2}\) as follows: for each \(i \in \{ 0, 1, \dots , n-2 \}\), the predicate function \(P_{i}\) always returns 1. In other words, we are not interested in the behavior of the predicate functions.

We complete the definition of the reduced instance of Inductive Long Choice. Note that our reduction can be computed in polynomial time. What remains is to show that we can obtain a solution to the original Iter instance \(\mathcal {I}_{n}\) from every solution to the reduced Iterative Long Choice instance \(\mathcal {J}_{n}\).

It is not hard to see that there is no second-type solution to \(\mathcal {J}_{n}\). Hence, we consider two Long Choice solutions \(a^{0}:= (a^{0}_{0}, \dots , a^{0}_{n})\) and \(a^{1}:= (a^{1}_{0}, \dots , a^{1}_{n})\) with respect to \(P_{0}, \dots , P_{n-2}\) such that \(a^{0}_{0} \prec a^{1}_{0} = w(a^{0})\) and \(a^{1}_{0} \preceq w(a^{1})\). By definition, it holds that \(\psi (a^{0}_{0}) < S(\psi (a_{0}^{0})) = \psi (a_{0}^{1}) = S(S(\psi (a_{0}^{0}))\). Therefore, \(\psi (a_{0}^{0}) \in [2^n]\) is a solution to the original Iter instance \(\mathcal {I}_{n}\).

6.2.1 Fundamental Properties of Iter

In this section, we show the fundamental property of Iter: We can assume that every Iter instance \(\langle S: [2^n] \rightarrow [2^n] \rangle \) has no second-type solution (i.e., there is no point \(x \in [2^n]\) such that \(S(x) < x\)), without loss of generality.

Proposition 10

Without loss of generality, we can assume that every Iter instance has no second-type solution.

Proof

Fortunately, through the simple modification, we can suppose that every Iter instance \(\mathcal {I}_{n}:= \langle S: [2^n] \rightarrow [2^n] \rangle \) has no second-type solution without loss of generality. Consider the following new Boolean circuit \(S': [2^n] \rightarrow [2^n]\) such that \(S'(x):= S(x)\) if \(S(x) \ge x\); otherwise, \(S'(x):= x\).

From the above modification, there is no second-type solution to the reduced instance. What remains is to show that we can recover a solution to the original instance S from each first-type solution to the reduced instance \(S'\). Let \(x \in [2^n]\) be a solution to the reduced instance \(S'\), i.e., it satisfies that \(x < S'(x) = S'(S'(x))\). Then, we know that \(x < S(x)\) and \(S(x) \ge S(S(x))\) hold. If \(S(x) > S(S(x))\), then we obtain the second-type solution to the original instance; otherwise, we obtain the first-type solution to the original instance. \(\square \)

6.3 Proof of Lemma 8

We show a polynomial-time reduction from Iterative Long Choice to Inductive Long Choice. The main idea is the same as the proof of Theorem 3. For each instance of Iterative Long Choice, we will construct an Inductive Long Choice instance whose elements consist of a working space and a history space. In our reduced instance, the new process function updates the history state appropriately, and we apply the natural padding method to simulate the original Iterative Long Choice instance.

Let \(\mathcal {I}_{n}:= \langle P_{0}, \dots , P_{n-2}; a_{0}^{0}; w; 1^{T} \rangle \) be an instance of Iterative Long Choice. Without loss of generality, we assume that \(a_{0}^{0} = 0^{n}\). Let M be a sufficiently large positive integer satisfying that \(n (n+1) (T+1) \le M \le p(n)\) for some polynomial p. Now, we construct an Inductive Long Choice instance \(\mathcal {J}_{n+M}:= \langle Q_{0}, \dots , Q_{n+M-2}; w' \rangle \).

Let \(x = a \sharp h\) be an \((n + M)\)-bit string, where \(a \in \{ 0, 1 \}^{n}\) and \(h \in \{ 0, 1 \}^{M}\). Then, we call the last M-bit string h a history state. We say that \(x = a \sharp h\) is valid if it holds the following conditions:

  1. (1)

    There is a non-negative integer t such that the history state \(h = a^{0} \sharp \cdots \sharp a^{t} \sharp 0^{M - n(n+1)(t-1)}\), where for each \(\tau \le t\), the sequence \(a^{\tau }:= a^{\tau }_{n} \sharp \cdots \sharp a^{\tau }_{0}\) is a solution \((a_{0}^{\tau }, \dots , a_{n}^{\tau })\)Footnote 3 to the \((\tau + 1)\)-st iteration of \(\mathcal {I}_{n}\).

    • That is, \(a^{0} = (a_{0}^{0}, \dots , a_{n}^{0})\) is a solution to the first iteration of \(\mathcal {I}_{n}\).

    • For every positive integer \(\tau \le t\), it holds that \(a_{0}^{\tau } = w(a^{\tau -1})\).

  2. (2)

    The first n-bit string a satisfies \(a = w(a^{t})\). That is, the string a is a beginning element of the \((t+2)\)-nd iteration of \(\mathcal {I}_{n}\).

We apply the natural padding method to simulate the original predicate functions. When \(x_{0} = a^{t+1}_{0} \sharp h\) is a valid beginning element corresponding to the \((t+2)\)-nd iteration of the original Iterative Long Choice instance \(\mathcal {I}_{n}\), the reduced predicate functions \(Q_{0}, \dots , Q_{n+M-2}\) simulate the original predicate functions \(P_{0}, \dots , P_{n-2}\). Them, we obtain a solution \(a^{t+1}:= (a^{t+1}_{0}, \dots , a^{t+2}_{n})\) of the \((t+2)\)-nd iteration of \(\mathcal {I}_{n}\) from a long-choice solution \(x:= (x_{0}, \dots , x_{n+M})\) with respect to \(Q_{0}, \dots , Q_{n+M-2}\).

Next, we define the process function \(w': \left( \{ 0, 1 \}^{n+M} \right) ^{n+M+1} \rightarrow \{ 0, 1 \}^{n+M}\). For every Long Choice solution \(x:= (x_{0}, \dots , x_{n+M})\) such that \(x_{0}\) is invalid, we define \(w'(x) = x_{0}\). On the other hand, for every Long Choice solution \(x:= (x_{0}, \dots , x_{n+M})\) such that \(x_{0}\) is a valid beginning element with the history state \(h = a^{0} \sharp \cdots \sharp a^{t} \sharp 0^{M - n(n+1) (t+1)}\), we have a corresponding solution \(a^{t+1}:= (a^{t+1}_{0}, \dots , a^{t+2}_{n})\) with respect to the original predicate functions \(P_{0}, \dots , P_{n-2}\). In this case, we define \(w'(x) = w(a^{t+1}) \sharp h'\), where \(h' = a^{0} \sharp \cdots \sharp a^{t} \sharp a^{t+1} \sharp 0^{M - n (n+1) (t+2)}\). Note that this is also a valid beginning element, and it is not hard to see that \(w'(x) \succ x_{0}\). Finally, for a Long Choice solution x with a valid beginning element \(x_{0}\), the process function \(w'(x) = x_{0}\) if the history state of \(x_0\) has a solution to the instance \(\mathcal {I}_{n}\).

Since \(a_{0}^{0} = 0^{n}\), there is no second-type solution to the Inductive Long Choice. Let \(x^{0}:= (x_{0}^{0}, \dots , x_{n+M}^{0})\) and \(x^{1}:= (x_{0}^{1}, \dots , x_{n+M}^{1})\) be two Long Choice solutions with respect to \(Q_{0}, \dots , Q_{n+M-2}\) such that \(x_{0}^{0} \prec w'(x^{0}) = x_{0}^{1}\) and \(w'(x^{1}) \preceq x_{0}^{1}\). By definition, \(x_{0}^{0}\) is a valid beginning element, and thus, \(x_{0}^{1}\) is also a beginning element. Since \(w'(x^{1})\) does not increase, the history state of \(x_{0}^{1}\) has a solution to the original Iterative Long Choice instance \(\mathcal {I}_{n}\).

Therefore, we complete a polynomial-time reduction from Iterative Long Choice to Inductive Long Choice. This implies that \({{\,\mathrm{\texttt{PiLC}}\,}}\subseteq {{\,\mathrm{\mathtt {IND-PLC}}\,}}\).

6.4 Proof of Lemma 9

This section proves that the class \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\) is closed under the Turing reduction. To prove this fact, we use the same technique shown in Section 5.

Let \(\mathcal {I}\) be any instance of a search problem in \({{\,\mathrm{\texttt{FP}}\,}}^{{{\,\mathrm{\mathtt {IND-PLC}}\,}}}\). Thus, we have a polynomial-time algorithm \(A_{\mathcal {I}}\) with polynomially many queries to Inductive Long Choice. Suppose that \(A_{\mathcal {I}}\) makes m queries to Inductive Long Choice; we denote by \(\mathcal {J}_{n}^{1}, \dots , \mathcal {J}_{n}^{m}\) the query instances made by \(A_{\mathcal {I}}\), where \(\mathcal {J}_{n}^{j}:= \left\langle P_{0}^{j}, \dots , P_{n-2}^{j}; w^{j} \right\rangle \) for each \(j \in [m]\).

Let M be a sufficiently large positive integer satisfying that \(2m \cdot n(n+1) \le M \le p(n)\) for some polynomial p. We now construct an Inductive Long Choice instance \(\mathcal {K}_{n+M}:= \langle Q_{0}, \dots , Q_{n+M-2}; w \rangle \). For each beginning element \(x_{0}:= a \sharp h\), where \(a \in \{ 0, 1 \}^{n}\) and \(h \in \{ 0, 1 \}^{M}\), the last M-bit string h is called a history state. We say that a history state h is valid if it holds the following conditions:

  1. (i)

    There is a non-negative integer t such that \(h \!=\! \alpha ^{1} \sharp \cdots \sharp \alpha ^{t} \sharp a^{t+1, 0} \sharp 0^{M - (2t+1) n(n+1)}\), where each \(\alpha ^{\tau }\) consists of \(a^{\tau , 0}:= a_{n}^{\tau , 0} \sharp \cdots \sharp a_{0}^{\tau , 0}\) and \(a^{\tau , 1}:= a_{n}^{\tau , 1} \sharp \cdots \sharp a_{0}^{\tau , 1}\) of \(n+1\) elements in \(\{ 0, 1 \}^{n}\) satisfying one of the following:

    • two sequences \((a_{0}^{\tau , 0}, \dots , a_{n}^{\tau , 0})\) and \((a_{0}^{\tau , 1}, \dots , a_{n}^{\tau , 1})\) are a first type of solutionFootnote 4 to the Inductive Long Choice instance \(\mathcal {J}_{n}^{\tau }\); and

    • the sequences \(a^{\tau , 0} = (0^n, \dots , 0^n)\) (i.e., it consists of all zero strings) and the sequence \((a_{0}^{\tau , 1}, \dots , a_{n}^{\tau , 1})\) is a second type of solution to the Inductive Long Choice instance \(\mathcal {J}_{n}^{\tau }\).

  2. (ii)

    Furthermore, the sequence \(a^{t+1, 0} = a_{n}^{t+1, 0} \sharp \cdots \sharp a_{0}^{t+1, 0}\) is either all zeros or a Long Choice solution with respect to the predicate functions for \(\mathcal {J}_{n}^{t+1}\) such that \(a^{t+1, 0}\) is not a second-type solution to \(\mathcal {J}_{n}^{t+1}\).

We say that a beginning element \(x_{0}:= a \sharp h\) is valid if \(h = \alpha ^{1} \sharp \cdots \sharp \alpha ^{t} \sharp a^{t+1, 0} \sharp \) \(0^{M - (2t+1) n(n+1)}\) is valid, and it satisfies that \(a = w^{j}(a^{t+1, 0})\) when \(a^{t+1, 0}\) is a Long Choice solution.

The predicate functions \(Q_{0}, \dots , Q_{n+M-2}\) appropreately simulate the query instance \(\mathcal {J}_{n}^{j}\) when a beginning element \(x_{0}\) is valid. When a beginning element \(x_0:= a \sharp h\) is valid, the process function w updates its history state h depending on a Long Choice solution \((x_{0}, \dots , x_{n+M})\). Let \(h = \alpha ^{1} \sharp \cdots \sharp \alpha ^{t} \sharp a^{t+1, 0} \sharp 0^{M - (2t+1) n(n+1)}\) be a valid history state, and let \(a^{t+1, 1} = a_{n}^{t+1, 1} \sharp \cdots \sharp a_{0}^{t+1, 1}\) be a corresponding Long Choice solution with respect to \(P_{0}^{t+1}, \dots , P_{n-2}^{t+1}\). Then, we define the process function as follows:

  • If \((a^{t+1, 0}, a^{t+1, 1})\) is a first-type of solution to \(\mathcal {J}_{n}^{t+1}\), then

    $$\begin{aligned} w(x) := 0^{n} \sharp \alpha ^{1} \sharp \cdots \sharp \alpha ^{t} \sharp a^{t+1, 0} \sharp a^{t+1, 1} \sharp 0^{M - 2(t+1) n(n+1)}; \end{aligned}$$
  • if \(a^{t+1, 0}\) is a second-type of solution to \(\mathcal {J}_{n}^{t+1}\), then

    $$\begin{aligned} w(x) := 0^{n} \sharp \alpha ^{1} \sharp \cdots \sharp \alpha ^{t} \sharp 0^{n(n+1)} \sharp a^{t+1, 1} \sharp 0^{M - 2(t+1) n(n+1)}; \end{aligned}$$
  • otherwise,

    $$\begin{aligned} w(x) := w^{t+1}(a^{t+1, 1}) \sharp \alpha ^{1} \sharp \cdots \sharp \alpha ^{t} \sharp a^{t+1, 1} \sharp 0^{M - (2t+1) n(n+1)}. \end{aligned}$$

If a beginning element \(x_{0}:= a \sharp h\) is invalid or its history state h has all query solutions, then the process function w returns itself.

We complete the reduction. It is not hard to see that we obtain an original solution from every solution to the reduced instance.

Fig. 1
figure 1

Complexity classes. An allow \(\textrm{A} \rightarrow \textrm{B}\) means that \(\textrm{A} \subseteq \textrm{B}\)

7 Conclusion and Open Questions

We have investigated the complexity of Constrained Long Choice with multiple beginning elements and introduced three \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses \({{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}\), \({{\,\mathrm{\texttt{PiLC}}\,}}\), and \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\). The first two classes correspond to the classes for search problems that are non-adaptive and adaptive Cook reducible to Constrained Long Choice, respectively. We have also proven that the canonical \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\)-complete problem Inductive Long Choice is \({{\,\mathrm{\texttt{PLS}}\,}}\)- and \({{\,\mathrm{\texttt{PiLC}}\,}}\)-hard. As consequently, the class \({{\,\mathrm{\mathtt {IND-PLC}}\,}}\) contains two traditional \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses \({{\,\mathrm{\texttt{PLS}}\,}}\) and \({{\,\mathrm{\texttt{PPP}}\,}}\).

We illustrate the relationship between \({{\,\mathrm{\texttt{TFNP}}\,}}\) subclasses shown in Fig. 1. For a positive integer T, the class \({{\,\mathrm{\texttt{PiLC}}\,}}[T]\) is the class for a total search problem that is polynomial-time reducible to Iterative Long Choice whose iterative parameter is T. Similarly, for a positive integer m the class \({{\,\mathrm{\texttt{PLC}_{\Vert }}\,}}[m]\) is the class for a total search problem that is polynomial-time reducible to Parallel Long Choice that has m beginning elements.

This paper has left the following two open questions:

  1. (a)

    Is \({{\,\mathrm{\texttt{PLS}}\,}}\) contained in \({{\,\mathrm{\texttt{PiLC}}\,}}\)? In other words, is there a Cook reduction from Iter to Long Choice?

  2. (b)

    Is \({{\,\mathrm{\texttt{PLC}}\,}}\) closed under the Turing reduction?

Our observation implies that Constrained Long Choice is somewhat robust in the following sense: We do not need a list of the predicate functions to show that Constrained Long Choice is closed under the Turing reductions. Specifically, from our results, the second open question can be rephrased as follows: Is there a polynomial-time reduction from \(\textsc {Iterative Long Choice} ~[T+1]\) to \(\textsc {Iterative Long Choice} ~[T]\), where T is an iteration parameter? A beginning element plays a crucial role in Constrained Long Choice. In fact, the predicate functions determine which algorithms run after reading the beginning element. Note that our proofs shown in this paper rely on this property.

Finally, we remark that to prove that \({{\,\mathrm{\texttt{PLC}}\,}}\) is closed under the non-adaptive Turing re-duction, it suffices to show a polynomial-time reduction from \({\textsc {Parallel Long Choice}}~\) \([m+1]\) to \(\textsc {Parallel Long Choice} ~[m]\), where m is the number of beginning elements.