The Cobham Recursive Set Functions (CRSF) provide an analogue of polynomial time computation which applies to arbitrary sets. We give three new equivalent characterizations of CRSF. The first is algebraic, using subset-bounded recursion and a form of Mostowski collapse. The second is our main result: the CRSF functions are shown to be precisely the functions computed by a class of uniform, infinitary, Boolean circuits. The third is in terms of a simple extension of the rudimentary functions by transitive closure and subset-bounded recursion.
Computability over the natural numbers has over the years been successfully extended to robust notions of computability on ordinals, on objects of finite type and on sets in general (see for example Sacks’ book [10]). Our goal is to develop an analogous, robust extension of computational complexity to arbitrary sets. This is the third of a series of papers exploring the model for polynomial-time computation on arbitrary sets given by the Cobham recursive set functions (CRSF) [4,5]. A broader and promising future programme is to carry this out for other notions from complexity theory. This paper is largely self-contained. In particular, as it relies on a different definition of CRSF, it can be read independently of [4] and [5].
The class CRSF was introduced in [4] to capture the notion of feasible, polynomial time computation on arbitrary sets. In particular, it coincides with the usual polynomial time functions on finite binary strings, if strings in are identified with the corresponding set-theoretic functions in .
The definition of CRSF in [4] is as a function algebra, based on a generalization of Cobham recursion on notation to arbitrary sets. A proof-theoretic characterization of CRSF, in terms of a version of Kripke-Platek set theory, is given in [5]. Furthermore, as shown in [4], the CRSF functions are closely connected to the Predicatively Computable Set Functions (PCSF) defined by Arai [2], which give a different characterization of polynomial time functions on sets. The PCSF functions are defined using safe recursion on notation, which was earlier used in [3] to define the larger class of Safe Recursive Set Functions (SRSF). A related notion of polynomial time on certain infinite sets was defined by Schindler [12]; see [3] for connections between this and SRSF. Sazonov [11] introduced a class of polynomial time functions on hereditarily finite sets, which we compare to CRSF in [4].
In [4] we take ∈-recursion as the basic model for computation on sets. The innovation is that the power of ∈-recursion is restricted by allowing new functions to be introduced only if their output is no more complex than the output of a function already known to be in CRSF, in the style of Cobham’s definition of polynomial time [6]. Here a set a is no more complex than a set b if a is embeddable in b in a certain sense (which we describe later). To allow a limited, “polynomial” increase in complexity [4] adapts the smash function # of bounded arithmetic into an operation on sets, namely a kind of cartesian product on Mostowski graphs, and includes this as one of the initial functions.
We introduce here three alternative characterizations of CRSF. These all take ∈-recursion as fundamental, but they restrict its strength in different ways, and one of them does not use the smash function. That they all give rise to the same class of functions gives more evidence that CRSF is natural.
The first characterization is similar to [4]. The class is formed by taking some basic initial functions, including the smash function, and closing under composition and subset-bounded recursion: if g and h are in the class, then so is the function f defined by the recursion
We call this “subset-bounded” because it allows defining a function f by recursion only if we have in hand a function h such that . The main difference between this and the definition in [4] is the use of this simpler kind of recursion instead of the rather complicated “embedding-bounded” recursion of [4], of which it is a special case. The disadvantage is that functions are limited in what they can output, because any output value must look more or less like a subset of (some basic function of) the input.
To deal with this we use a system for coding sets as subsets. A standard way to represent a finite graph in computer science is as a subset of (coded as a binary string of length ) giving the edge relation, where n is a size parameter. Similarly we can take a set, represent a copy of its Mostowski graph as a subset E of , where a is some suitable set, and then recover the original set from E using Mostowski collapse. It turns out that we still get a robust system of coding if we restrict the kinds of subset E that can appear (by only allowing edges consistent with the ordering induced by ∈), and that then we do not need the full strength of Mostowski collapse but can make do with a limited, “feasible” version of it.
We define by adding this limited Mostowski collapse function to . We show that and the original are the same, and in particular that for every function there is a function which computes a code for . It follows that we can compute in with only a single use of Mostowski collapse, and also that and contain the same relations, that is, the same 0/1 valued functions.
Our second characterization takes a very different approach, by describing a Boolean circuit model of computation on sets. We define (possibly infinite) circuits, which act on Boolean (0/1) values and have the usual conjunction, disjunction and negation gates. To allow these to input and output sets, we use the method of coding outlined above. For example, if we want to take as input sets which can be coded as a subset E of , we include an input node for each member u of , and assign it the value 1 if and 0 otherwise – and as is usual in circuit complexity, we will need a different circuit for each size parameter a. We show that CRSF can be precisely characterized as the functions which can be computed by strongly uniform families of small Boolean circuits, where “small” is defined in terms of the smash function. This is our main result, and shows that a basic property of polynomial time functions carries across smoothly to arbitrary sets.
There are several advantages to the Boolean circuit characterization. First, it is quite different from the earlier characterizations, thus providing more evidence of the robustness of CRSF. Second, it makes clear that CRSF is, in part, a model of parallel computation. This fact is obscured in the earlier development in [4], as that work focused on the equivalence with polynomial time computation. Third, it allows tools from the usual theory of Boolean circuit complexity to be applied to CRSF. As an example, using the Hastad switching lemma about the inexpressibility of parity in [8], we can show a version of for CSRF. We hasten to mention that this does not say anything about whether the usual classes of P and NP are distinct.
Our third characterization is again as a function algebra, this time defined by extending the rudimentary functions in an elementary way. We take the class RS to be the rudimentary functions plus the transitive closure function, all closed under subset-bounded recursion. We do not add the smash function, and it is easy to see that smash is not in RS, which hence is different from CRSF. However we adapt our system of coding to RS and show that CRSF functions can be defined in RS via their codes, and thus that the classes are essentially the same except for issues of decoding. The key is to show that ∈-recursion in the presence of smash can be simulated by lexicographic ∈-recursion without smash.
There are several potential routes for future work. This paper, together with related work [2–4,12], shows that we have established a robust understanding of polynomial time in set theory. Obvious next steps are to find set theoretic analogues for other time, space or circuit complexity classes which are well-known and well-studied in the context of finite binary strings.
The outline is as follows. Section 2 discusses preliminary topics, and introduces our version of the Mostowski collapse and smash functions. Section 3 introduces subset-bounded recursion, defines our version of CRSF, and proves some basic properties of these definitions. Section 4 introduces a simple model of infinite-time Turing machine computation and shows that on finite and infinite binary strings, CRSF functions are the same as those computed by corresponding notions of polynomial time Turing machines. Section 5 introduces some technical material, in particular bisimilarity, which we will use to detect when two encodings of Mostowski graphs represent the same set. Section 6 defines infinite Boolean circuits, and also the notion of -uniform families of Boolean circuits. Section 7 proves a series of strong technical results about the power of -uniform circuits. Section 8 completes the proof that the CRSF functions are precisely the functions computable with -uniform circuits. It also gives a style result for CRSF functions acting on hereditarily finite (HF) sets. Section 9 proves the equivalence of our version of and as defined in [4]. Section 10 shows that adding transitive closure and subset-bounded recursion to Jensen’s rudimentary functions gives another characterization of CRSF.
Preliminaries
Notational conventions
The partial ordering induced on sets by ∈ will play a fundamental role for us, analogous to the ordering on natural numbers. We therefore use the notation < for the transitive closure of the ∈ relation, and the notation ⩽ for the reflexive transitive closure. Writing for the transitive closure of b, this means that and are equivalent to and , respectively. To further strengthen the analogy to the interval notation and because it will be convenient for the generalized notion of “binary string” defined below, we write for (this was denoted in [4]). This notation is meant to suggest the “interval” .
We often code one set inside another set in a way that generalizes the usual notion of binary strings. We will stick as much as possible to the following convention. We treat some sets as “raw materials”, inside whose Mostowski graphs we will construct other objects. We write these “raw material” sets using small letters ; they are analogous to unary strings in complexity theory. We use capital letters or for objects we construct as subsets of the Mostowski graphs of sets of the first kind; these are analogous to binary strings. For ordinary binary strings, the analogy is precise: an ordinary unary string of length n is identified with the von Neumann integer , and an ordinary binary string of length n is then the subset U of a having as members the positions where a bit 1 appears in the string.
In a directed graph, if there is an edge from a node u to a node v we say that u is a predecessor of v. If there is a path (possibly of length 0) from u to v we say that u is an ancestor of v. We will usually be dealing with acyclic (in fact well-founded) directed graphs, and when we describe directed graphs we think of the edges as pointing upwards.
We define the ordered pair as and extend this in the usual way to ordered k-tuples, with etc. and if is a 1-tuple. We will write for the k-th cartesian power of , since we will need to refer to this often. But we do not use this notation for sets not written in the form to avoid confusion with ordinal exponentiation.
We identify the natural numbers with the finite von Neumann ordinals For the sake of consistency we will always write 0 instead of ∅.
Embedded Mostowski collapse
Recall that a directed graph with nodes U and edges E is well-founded if, for every non-empty subset S of U, there is a node y in S with no predecessors in S. It is extensional if no two distinct nodes have the same set of predecessors. We say that it is accessible pointed with sink a if there is a path from every node to a.1
Aczel [1] defines an accessible pointed graph as one with a distinguished node from which every other node is reachable. Note that our paths run in the opposite direction.
The Mostowski graph of a set a is the directed graph with nodes and with edges . Clearly is well-founded, extensional and accessible pointed, with sink a. By well-foundedness and extensionality it also has exactly one source node, the empty set. On the other hand if G is any well-founded, extensional, accessible pointed graph then there is a unique set a, the Mostowski collapse of G, such that G is isomorphic to . We denote this set a by .
A diagram is a pair of sets such that only if .
The diagram represents the graph with nodes and edges . We think of as a graph “embedded” in the Mostowski graph of a, with edges that are forced to respect the ordering on . An example of a diagram is the pair , representing itself.
A diagram is automatically well-founded, by the condition on E. In general it is not accessible pointed or extensional; for example any nodes in outside the range of E will have the same, empty set of predecessors. However, if we restrict the graph to the set of nodes that are E-ancestors of a, then it is accessible pointed, with sink a. Furthermore, we can make it extensional by recursively collapsing together nodes with the same set of predecessors. We can then take the Mostowski collapse of the resulting graph. This procedure, which we call embedded Mostowski collapse, has a simple recursive definition:
The embedded Mostowski collapse function is defined by
Notice that this is definable by ∈-recursion. We will almost always use Mostowski collapse in this form, so will often omit the word “embedded”.
We use to denote the von Neumann rank of the set x and to denote its cardinality.
and.
We say b is embeddable in a if for some E.
We interpret the embeddability of b in a as meaning that b is no more complex than a, in the sense that, for example, recursion over b is no more powerful than recursion over a. Lemma 9.4 shows that our notion of embeddability is the same as the one in [4].
The set composition function is defined as follows. Given sets a and b, construct a graph H by drawing the graph above the graph and then identifying the source of with the sink of . Then .
An equivalent recursive definition for set composition is:
The set smash function is defined as follows. Given sets a and b, construct a graph H by drawing a disjoint copy of for every point , and then adding an edge from the sink of to the source of for every edge of . Then .
An equivalent recursive definition for set smash is .
The smash function is a kind of cartesian product on Mostowski graphs. We introduce a corresponding “pairing function” , which we think of as taking nodes and and outputting the node corresponding to y in the x-th copy of in H. Note that although we write a as a subscript in we do not actually use a in the definition.
We define .
The functionis an order isomorphism between, ordered lexicographically, and.
We let and be projection functions inverting , so that for .
For sets a and b,
, equivalently,.
A smash-term is a term built from variables, the constant 0 and the functions pairing, cartesian product, transitive closure, ⊙ and #.
Smash-terms will play the role usually played by polynomials in computational complexity, providing bounds for various complexity measures. Notice that the rank, and respectively the size of the transitive closure, of a smash-term is at most polynomially larger than those of its arguments. (The corresponding definition of #-term in [4] is stricter, only allowing variables, the constant 1, ⊙ and #.)
Subset-bounded recursion and CRSF
This section is modelled on the similar development of CRSF in [4].
Let and be functions from sets to sets. The function is obtained from by subset-bounded recursion with bound if
We take as initial functions
the constant 0
projection: for
pairing:
union:
conditional:
transitive closure:
cartesian product:
set composition:
set smash:
embedded Mostowski collapse: .
The above initial functions are roughly the same as the primitive symbols in the definition of Cobham recursive set functions given in [5], but with the addition of the embedded Mostowski collapse function.
is defined as the closure of initial functions (1) to (9) under composition and subset-bounded recursion. is defined as the closure of all of the initial functions above, including embedded Mostowski collapse, under composition and subset-bounded recursion.
A relation is a relation given by an expression of the form where g is a function. The relations are defined similarly.
We derive some basic properties of. These also hold within place of.
contains the functions,and
Therelations are closed under Boolean operations.
is closed under separation. That is, ifis arelation then the following function is also in:
Therelations are closed underquantification, in which quantifiers range over members of a given set.
contains the functions,and. By convention.
contains the usual pairing and projection functions for k-tuples, for.
containsand the projection functionsand.
We use and . We define as .
We define and respectively by and .
Using , and Boolean operations we can define functions by cases. Define by recursion on c as
Then always, so k is definable by subset-bounded recursion with bound b. We put .
We can define the relation by
where the set on the left is given by separation.
We take , using separation. The other two are trivial.
Trivial.
We have , where the set can be obtained by separation, since it is a subset of . For we can define, for example, the projection function by
since exactly one x satisfies the condition on the right.
□
The rank function is in.
Given a set a, define by first letting H be the transitive closure of as a graph, that is, we start with and add an edge whenever there is a path from x to y, and then letting be the Mostowski collapse of H. Then is an ordinal, since it is a transitive set of transitive sets. Furthermore, we can show by induction on a that . We have so
It follows that . This construction can be done in by defining , where . □
Note that the graph H above is in general not extensional – for example, consider what happens to the nodes and 2 when . This situation is similar to the appearance of a multi-valued embedding in the construction of the rank function in [4].
Ordinal addition and multiplication are in.
We know that and , from Lemma 2.10. Hence the function gives us ordinal addition, and we can define ordinal multiplication by subset-bounded recursion as
since for ordinals. □
For anyfunction f, we haveandfor some polynomial p.
This is a straightforward induction on the complexity of f. □
Ordinal exponentiation is not in.
There is nofunction which, on all hereditarily finite sets x, ouputs the ordinal.
Let f be such a function. Take and let a be its power set , so is the ordinal . Then while . □
We conclude this section with a digression about the choice of initial functions and whether they are all necessary. It turns out that Mostowski collapse plays a more limited role in than might be expected. We will show in Section 8 that for any function in , there is a smash-term and a function in such that . In other words, if we can compute a set in , then we can already compute a diagram of it in . In particular, Mostowski collapse is not needed if we are only interested in computing -valued functions.
We expect that we could do without cartesian product, since if we want to quantify over pairs in we could instead quantify over elements of , using the function where we now use the ordered pair . This change would require some formal changes to our definitions of diagrams and Mostowski collapse, to make use of this new system.
In the full system we do not need to include set composition as an initial function, since it is easy to construct the Mostowski graph of as a diagram embedded inside and then recover using Mostowski collapse.
The smash function would seem to play a central role in introducing polynomial growth rate functions. Nonetheless, there is a natural way to extend embedded Mostowski collapse which removes the need for the smash function. For , define k-embedded Mostowski collapse as
where are k-tuples and is the lexicographic ordering given by <. We can use the order-isomorphism between under and (with k occurrences of a) under < to define in . In the other direction, it is straightforward to define the smash function using , so the class is unchanged if we remove smash and set composition and replace M with . For more on and , see Section 10.
Turing machines
We consider a simple model of infinite-time Turing machines [7]. The usual finite Turing machines are special cases of the definition below, obtained by considering only finite ordinals and skipping any text containing the word “limit”.
We simulate machines operating on strings of symbols from a finite alphabet of numerals . These strings may be finite, but more generally will have ordinal length. We need to specify how to code such strings as sets, so that we can manipulate them with functions. We do this in a straightforward way by letting a string of length be formally a function and dealing with this directly as a set-theoretic function, that is, as a set of ordered pairs.2
There are other ways of handling this. In particular, over the binary alphabet we could code strings of length λ simply as subsets of λ. We do not use this encoding here, partly to avoid issues of how to mark the end of a string, but we will use it beginning in Section 5.1 where we will be dealing with strings of fixed size. An alternative where we explicitly record the length λ would be to code binary strings as pairs . This would be essentially equivalent to the coding used in the current section, since there are functions translating in both directions between them.
Consider a Turing machine A with a single, one-way tape, m states, and k symbols. We will simulate the machine running on a tape of length for time τ, where λ and τ are ordinals (that is, λ will be either finite or ω). A configuration of the machine is a triple where the string W is the contents of the tape, i is the position of the head and s is the state.
At each step , machine A reads the symbol that was under the head in step σ, then writes a symbol, changes state and moves the head, all according to the transition function (as usual).
At limit steps σ, we set the symbol in each cell j in W to be the highest symbol that occurs cofinally often in cell j as we range over the earlier configurations. We change the state s to a distinguished limit state and move the head to .
Let be the function that takes as inputs ordinals and τ, and a string I of ordinal length , and outputs the configuration of the machine A with tape length λ after running for τ steps on input I.
is in.
can be defined by a straightforward recursion. The only technical issue is to make sure that the intermediate values in the recursion are all subsets of a set we can construct. We assume that λ and τ are ordinals and will write < rather than ∈ for membership in an ordinal.
Let be the function that, on well-formed inputs, outputs
where is the configuration of M at step τ. Then
so we can potentially define F directly by subset-bounded recursion. To do so, we must show how to compute from . Observe that for we can recover from S as the subset of consisting of elements with first component σ. In particular we can recover the tape contents at step σ by separation as
and can similarly recover the head position and the state .
If then we let , let s be the starting state, and let W be the input string I, padded out as necessary to length λ with pairs (assuming without loss of generality that the symbol 0 stands for “blank”). If then τ is the successor ordinal . Using , , and the transition function of M, we compute W using separation and change i and s appropriately.
Otherwise τ is a limit. We let s be the limit state and let . The set of symbols occurring cofinally often in cell j is
Hence is the maximum symbol that occurs cofinally often, and we can let .
This shows that F is in . The lemma follows. □
As usual, denotes the set of finite binary strings.
Every polynomial time function fromtois in.
Suppose f is computed by a Turing machine A which halts in time on inputs of length . Given a finite string w, in we can compute the length n of w as . We then compute (using Lemma 3.7) and , and the output of f can easily be obtained from this. □
The only use of Mostowski collapse in the proof of Theorem 4.2 is to obtain from n. If we instead let (where n appears c times) then m is order-isomorphic to , and we can prove a version of Lemma 4.1 that avoids using Mostowski collapse, by simulating Turing machine computations of length using ∈-recursion on m rather than on . All that prevents us from carrying out the whole proof of the theorem in this way is that, under our coding of binary strings as sets, we must be able to convert the output into a sequence indexed by an ordinal. This is not a problem for very simple outputs, so we have:
Every polynomial time relation onis in.
As a converse of Theorem 4.2 we have the following.
Everyfunction fromtois in polynomial time.
We use the same argument as [4]. The theorem follows from the more general observation that for any function there is a polynomial time function which, for any hereditarily finite sets , given graphs outputs (up to graph isomorphism) using the standard encoding of directed graphs as strings. This is proved by induction on the complexity of f. The bound on recursion guarantees that the sizes of the graphs involved do not grow too fast. □
We now move to infinite-time machines. Following [12], a function from to is polynomial time if it is computed by an infinite-time Turing machine with three tapes (an input tape, an output tape and a working tape) which always halts after at most steps, for some fixed exponent .
Every polynomial time function fromtois in.
This is proved in the same way as Theorem 4.3, with minor changes to accommodate simulating three tapes rather than one. Since the output sequence is a subset of , we can use separation to construct it from the output of and do not need Mostowski collapse. □
Everyfunction fromtois polynomial time.
It is shown in [3] that every such function from to in the class SRSF is polynomial time. By results in [4] and in Section 9 below, every function in is in SRSF. □
Bisimilarity and coding
This section discusses the generalized notion of binary strings, bisimulation, and how to code collections of sets.
a-Strings
Let a be any set. An a-string is a subset of a.
We will sometimes informally identify an a-string with its characteristic function . In this sense, for finite ordinals k, the usual binary strings in of complexity theory correspond to the k-strings. For example, the binary string corresponds to the 5-string (writing the most significant bit on the left).
For us, the most important use of a-strings is to encode sets via a Mostowski collapse:
We say that a diagram codes the set . If a is fixed and E is an -string, we say E codes the set .
This way of coding sets, as a size parameter a together with an -string E, is designed to work well with subset-bounded recursion.
Bisimilarity
We will frequently need to recognize when two diagrams code the same set even in situations where the Mostowski collapse function is not available. If we are dealing with extensional, accessible pointed diagrams, then two such diagrams code the same set if and only if they are isomorphic. However our diagrams are typically neither, so we will instead use the notion of bisimilarity (see for example [1]). This is very well-behaved on well-founded graphs.
A bisimulation between directed graphs G and H is a relation ∼ relating nodes of G to nodes of H, such that for all nodes u in G and v in H, holds if and only if both of the following hold:
For every predecessor of u in G, there is a predecessor of v in H such that
For every predecessor of v in H, there is a predecessor of u in G such that .
Recall that a diagram represents the directed graph with nodes and edges .
We say that two diagrams and are bisimilar if there is a bisimulation ∼ between and such that .
There is at most one bisimulation between two diagrams.
Suppose and are distinct bisimulations between diagrams and . Choose u <-minimal in such that there is a for which and differ on the pair , and fix a <-minimal such v. Then and agree on all predecessors of u and v. Therefore, by the definition of a bisimulation, they must agree on , giving a contradiction. □
Given diagrams,, there is at least one bisimulation between them, and they are bisimilar if and only if.
Define a relation ∼ by if and only if . It follows directly from the definitions that this is a bisimulation between and . We then apply Lemma 5.5. □
There is afunctioncomputing the bisimulation between diagramsand, by outputting the bisimulation as a set of ordered pairs.
First observe that , so we can potentially define B directly by a subset-bounded recursion. We will use recursion on a. Given a set , where each is the bisimulation between and output by , let . Then by the uniqueness of bisimulations, for every . It follows that ∼ has all the properties of a bisimulation between and except possibly at a, and we can extend ∼ to a by adding a pair for every which satisfies both conditions from Definition 5.3. □
Coding collections of sets
We use a generalized notion of a 0/1 matrix to allow a single set W to encode a collection of sets. The intuition is that the pairs in W encode the Mostowski graph of the c-th set encoded by W.
For sets W and c, we define the c-th row of W, denoted , as the set .
Note that , so the function is in by separation. The next lemma allows us to use such a matrix to code a set of sets.
The functionis in.
Let . Our strategy is to construct from W a single embedded graph such that . We will write σ, , for the functions , , . Define
For each this puts the structure of onto copy c of the graph of a inside the graph of e, so that . On the other hand is not connected to anything in , so . Let . Then equals , which is the required set. □
Boolean circuits
This section defines computations with unbounded fan-in Boolean circuits encoded by sets. We first introduce circuits that compute functions mapping strings to strings. We then extend this to circuits computing set functions, which operate on sets encoded as diagrams or strings. The set value that is computed by the circuit will be extracted from its output using the embedded Mostowski collapse.
A circuit is a triple where is a diagram and λ is a function from to the set of symbols (which we identify with the numbers ) such that each node labelled ¬ has exactly one E-predecessor. The nodes labelled ∗ are called input nodes. We say that the circuit has size c.
Conjuctions and disjunctions may have arbitrary fan-in. The labels 0 and 1 represent the constant values False and True.
Let be a circuit, and let a be its set of input nodes. Given any a-string A, a computation of C on A is a -string W which, informally, assigns values to the nodes of C in such a way that each input node gets the same value that it has in A, and all other nodes get values according to the usual interpretations of their symbols in a circuit. That is, for all ,
if then
if then
if then
if then
if then
if then .
In general, to guarantee that a circuit has a computation it is enough for the graph underlying the circuit to be well-founded. However we need the extra condition that the graph is embedded in c for the next lemma.
There is afunction which takes a circuit C and an a-string A, as in Definition
6.2
, and outputs a computation of C on A.
Let be the function that outputs a -string assigning correct values to all nodes in the circuit. Since it is possible to define f directly by subset-bounded recursion. Suppose we are given . Then assigns the correct values to all nodes u of the circuit with , and since is a diagram, this includes all nodes such that . Hence we have enough information to extend to a -string W which also assigns the correct value to v, and clearly this can be done in . □
We extend the definition to handle computations on tuples of strings. When c, and p are finite ordinals, the following is equivalent to the usual definition of a finite Boolean circuit.
A circuit with input sizesand output size p is a tuple where is a circuit and we are also given
A partial function which maps every input node to a member of (a disjoint copy of) some , and
A function which maps every element of p to some node in . We call the range of ν the output nodes.
The circuit evaluation function takes inputs where is a circuit and is a tuple of strings, with each an -string. It outputs the p-string computed by C on inputs .
The circuit evaluation function is in.
We construct a computation W of the circuit as in the proof of Lemma 6.3. We recover the output by separation as . □
A family of circuits parametrized by a tuple of sets is small if there are smash-terms such that the size of is , and has input sizes and output size . We say that a family is small with size bounds independent of if the parameters do not appear in any of these smash-terms.
Consider a set function which, when its inputs are sets embeddable in a, outputs a set embeddable in p. Using diagrams, we can code the inputs and output of f respectively as -strings and -strings. We can then ask whether the corresponding function from strings to strings is computed by a small circuit.
Let be any set function and let be a tuple of sets. Suppose that C is a circuit with input sizes and output size for some p, such that for every tuple of strings, with each an -string, we have
where is the -string as defined in Lemma 6.6. Then we say that C computes f on sets embeddable in.
We say that f has small circuits if there is a family of small circuits such that, for all , computes f on sets embeddable in .
We next describe a class of simple formulas, which we will use both for constructing circuits and to define a notion of uniformity for circuits. Note that the terms in the language below are exactly the smash-terms.
A formula is a formula in the language in which all quantifiers are bounded, of the form or . We say that a family of sets is -definable (with parameters ) if there is a formula φ and a smash-term t such that the sets in the family have the form .
A family of circuits is -uniform if it is small and the sets , , and describing the circuit are all -definable with parameters .
Below, to save space we will write e.g. “-strings ” instead of “an -string , an -string , …” etc.
The next lemma states that the truth-sets of certain kinds of formulas can be computed by -uniform circuits. This is a crucial tool underlying the proof in Section 7 that has small circuits.
Let φ be aformulain which all occurrences of variablesare immediately to the right of an ∈ symbol in an atomic formula of the form, and in which only variablescan appear in terms bounding quantifiers. It is not necessary that all the variables are present in φ. Letbe smash-terms.
There is a-uniform family of circuitswith size bounds independent of, with input sizesand output size, such that for allandand all-stringswe have
We fix m, n and k and use induction on the complexity of φ. Circuits will be given with descriptions that can easily be turned into formulas.
Suppose φ has the form for terms . We compute the -string
using a circuit of size . Each node of the circuit is labelled 1 if for some with , and is otherwise labelled 0 (there are no input nodes or nodes labelled with connectives). The set E of edges is empty. The function ν mapping elements of the output size to output nodes is just the identity.
The case where φ has the form is broadly similar. This time each node is labelled with a ∗ (that is, as an input node) if for some with , and is otherwise labelled 0. The output is arranged as in the previous case. The function μ mapping input nodes to the disjoint union of input sizes maps to (we use to match the notation in Definition 6.4), with the result that a computation W assigns 1 to if and only if .
Suppose φ has the form . Let and be circuits for respectively
with sizes and . We define a circuit D with size . This means that the underlying graph of D consists of a copy of at the bottom, with a copy of above it, and a copy of above that, with the sink node of each component connected to the source node of the next component. We will call the components , and O. The labellings, edges and connections to inputs in are copied from , and similarly for and . So, for example, if has an edge then D has an edge . The function ν maps every element of the output size to the corresponding node of O, that is, , and these nodes in the image of ν are labelled with ⋀. The other nodes of O are labelled with 0 and are not used. Finally, in the original circuits each was associated with an output node in and an output node in . In D we connect each node labelled ⋀ in O to the nodes of D corresponding to and , that is, to in and in .
Suppose φ has the form . Let C be a circuit for
with size . We construct a circuit D of size , consisting of C with a copy O of above it, similarly to the previous case. For the output nodes of D we take all nodes in O for , and label them with ⋀. If such a node has the form , we connect it by an edge to every output node in C with , where is C’s function mapping elements of its output size to its output nodes.
Negation is handled similarly. □
We finish this section by giving three concrete examples of families of small uniform circuits, all of which we will need in the next section. The first example, union, is now an easy consequence of Lemma 6.11. The other two, circuits for computing bisimilarity and the ancestor relation, are more complicated.
The union function has-uniform circuits.
Let be a diagram. Let the -string F be defined from the -string E by
Then . The result follows by Lemma 6.11. □
For the next two examples we will need a technical lemma, to help construct circuits defined using smash.
For,andthe relationis definable by aformula which uses only terms in a and b as bounds on quantifiers.
We have if and only if , which holds if and only if
This is -definable, and we can bound all quantifiers by . □
There is a familyof-uniform circuits, with input sizesandand with output size, which take an-string E and a-string F and output a string giving the bisimulation between diagramsand.
We will imitate the recursion on a used to show that bisimilarity is in in Lemma 5.7. For we write for the bisimulation between and , which we treat as a -string.
Let . Then for we have if and only if either , or and the conditions from Definition 5.3 hold, that is,
Thus is expressed by a formula to which we can apply Lemma 6.11, giving -uniform circuits computing from E, F and , with size bounds independent of u. Let be the size of and let , and be the functions describing respectively its internal, input and output gates.
Our circuit C which computes bisimulations has size and functions λ, μ and ν. It is formed as follows. For each :
C has an edge for each edge in .
For each , the internal gate is the same as .
For each , if for (representing an input from E) or if for (representing an input from F) then is an input node of C and .
In other words via the map the u-th copy of t inside , which we will call , is given the same internal structure as and accesses inputs from E and F in the same way. Then:
For each , if for (representing an input from ) then and for each there is an edge in C connecting with the “output node” of corresponding to z, that is, the node . (If , this is equivalent to setting .)
For each we set .
By item (4) the -string that the subcircuit gets as its third “input” is the union of the -strings “output” by the subcircuits for . Thus by induction on u the “output” of is . Finally item (5) reads off the “output” of the top subcircuit as the output of our circuit C. □
There is a familyof-uniform circuits, with input and output size, which take as input a string E and output a string giving the relation “x is an E-ancestor of y in the diagram”.
Let us write for the E-ancestor relation on . Let . Then for , we have if and only if
Hence by Lemma 6.11 there is a small, -uniform circuit computing from E and , with size independent of u.
Our circuit has size and is formed by taking and replacing each node u with a copy of , adding edges so that gets as input E and the union of the outputs of for , exactly as in Lemma 6.14. □
Small circuits for
Everyfunction has-uniform circuits.
To prove this it is enough to show that all our initial functions have such circuits, and that the class of functions with such circuits is closed under composition and subset-bounded recursion.
The class of set functions with-uniform circuits is closed under composition.
Let g be an m-ary set function computed by a circuit family with size . Let be n-ary set functions, with computed by a circuit family with size and output size . Then the circuit to compute the composition of g and on inputs embeddable in has size
and is formed in the obvious way, by connecting copies of and together. □
Initial functions
The projection function is trivial, and we dealt with the union function in Lemma 6.12. Pairing, conditional, set composition, set smash, transitive closure, cartesian product and embedded Mostowski collapse remain. In each case the proof uses Lemma 6.11.
The pairing function has-uniform circuits.
Given diagrams and let , so that has the structure of, first, a copy of , then an edge connecting its sink to the source of a copy of , then an edge connecting the sink of that to the global sink c. Let if and only if one of the following holds:
for some
and either or .
By items (1) and (2), and . Hence by item (3) we have as required. The lemma now follows from Lemma 6.11. □
(The characteristic functions of) membership and equality have-uniform circuits.
This follows from Lemma 6.14. For example, to compute membership, given diagrams and we first construct a subcircuit computing the bisimulation ∼ between and . Then if and only if there exists with and . □
Thefunction has-uniform circuits.
Recall that the function takes the value e if and takes the value f otherwise. Suppose we are given diagrams , , and . We will output a diagram . Our circuit is formed from four subcircuits, which we will call W, X, Y and Z. These are combined in a similar way to Lemma 7.2.
The subcircuit W computes whether , as in Lemma 7.4.
The subcircuit X computes a string with
so that has the structure of E but with the sink node moved to , giving .
The subcircuit Y computes a string with
so that .
Finally, Z takes the outputs of W, X and Y, and outputs if and otherwise. □
The set composition function ⊙ has-uniform circuits.
Suppose we are given diagrams and . We will output a diagram , where if one of the following holds:
for some where is a source node of
for some where is not a source node of
By item (1), . Items (2) and (3) put the structure of onto the copy of inside , except that all source nodes of get mapped to b. Hence . □
The set smash function # has-uniform circuits.
Suppose we are given diagrams and . We will output a diagram , where if either of the following hold:
for some and
for some and some source node x of .
Here item (1) puts a copy of the structure of F onto each copy of inside , and item (2) connects the sources and sinks of these copies according to the edges of E. Hence . □
Transitive closure has-uniform circuits.
We are given a diagram and will output a diagram . We first use Lemma 6.15 to construct a subcircuit computing the E-ancestor relation on as an -string R. We then compute F as , so that . □
Cartesian product has-uniform circuits.
We are given diagrams and . We will output a diagram where . We begin by copying the structures of and onto the copies of and inside , so that and .
Recall that ordered pairs are defined as . At the top of , the graph contains a disjoint copy of for each . Let
be the mapping from to this copy of . If and then we add to G the edges
, so that
and , so that
, and , so that .
We do this for every . Hence . □
Embedded Mostowski collapse has-uniform circuits.
We are given diagrams and . We will output a diagram such that if we let and then .
For any set x, define , so that . We put
Before showing how to compute H with a circuit, we prove that . We will show by ∈-induction on y that for all . Suppose this is true for all . Then
Here the first and fourth equalities are the definition of M, and the second follows from the inductive hypothesis and the definition of H. One direction of the third equality follows from setting . For the other direction, let and . Since there is a finite sequence such that . By the definition of κ, there is some such that . Similarly we can find such that , and so on until we find with . We put .
To compute H with a circuit, we first construct subcircuits computing the bisimulation between and ; the bisimulation between and ; the bisimulation between and ; and the -ancestor relation on . Then for ,
On the other hand, if and only if
which is equivalent to
where the expression in quotation marks means that we interpret in the universe with the membership relation given by and equality given by . This can be written as a formula. □
Closure under recursion
Lemma 7.14 below establishes closure under subset-bounded recursion. We will need a few gadgets for the proof.
The functionhas-uniform circuits. Furthermore we may assume that the circuitcomputing it on sets embeddable inoutputs an-string E for a diagram.
We are given diagrams and . We first build a subcircuit to compute the bisimulation ∼ between them, then put
□
There is a-uniform familyof circuits with size bounds independent of u which, for, take as input an-string X and output an-string E such that.
If then we output X. Otherwise we take X, remove all edges , then add an edge for every , and output the result. □
There is a-uniform familyof circuits with size bounds independent of u which, for, take as input an-string W and an-string X, and output anstring E such that
We repeat the construction from the proof of Lemma 5.9. We will write σ, and respectively for the functions , and . Define
For each this puts the structure of onto copy v of the graph of b inside the graph of , so that . On the other hand is not connected to anything in , so . To rectify this, let . □
We can now prove the main result of this subsection.
The class of functions with-uniform circuits is closed under subset-bounded recursion.
Suppose that g and h are set functions with -uniform circuits. Let f be the function satisfying
where for simplicity we consider only a single parameter z rather than a tuple of parameters (this does not change anything important). We are given sets and must construct a circuit computing on all sets embeddable in respectively . Consider arbitrary input strings and let and .
We would like to build a circuit similar to those for Lemmas 6.14 and 6.15, in which we put together many copies of the circuits for g and h to simulate computing by recursion on x. However we are given X as a string input, and cannot use it as a parameter when constructing our circuit. Instead we will model a recursion on a.
Let be the output size of the given circuit computing on sets embeddable in . We will build a circuit which, as it computes, constructs for each node a -string such that
and hence in particular .
Let and let be a circuit computing on sets embedded in . By our assumptions and Lemma 7.11, we may assume that C is -uniform and furthermore that the output of C is a -string. Let be the circuit from Lemma 7.12 with the property that
for . Let be the circuit from Lemma 7.13 with the property that, for any -string W,
Combining these, let be the circuit which takes an -string W, an -string X and a -string Z, and outputs the -string
Suppose we have found satisfying (1) for all . If we define
then for all , and if we let we have
We can now describe a circuit computing . Its overall shape is similar to the circuit for bisimilarity in Lemma 6.14. We start by taking a copy of for each , so the size of our circuit is where q is the size of (which is independent of u). We let each take its inputs X and Z from the global inputs X and Z. Its input nodes for W correspond to triples . For each such node, if we relabel it with the constant 0. Otherwise we wire it to the output node of corresponding to . In this way each gets as input exactly the string W described above. Hence the output of the topmost subcircuit is . □
Consequences of small circuits
In this section we use our results about small circuits first to sharpen our characterization of , and then to prove some lower bounds for it.
Thefunctions are exactly the set functions with-uniform circuits.
One direction is given by Theorem 7.1. It remains to show that every function with -uniform circuits is in . So suppose that is such a function. This means that there is such a family of circuits with the property that, for all , the circuit computes f on sets embeddable in , and that if then c and p are given by smash-terms in , each input size is , and E, λ, μ and ν are -definable from .
To compute f on in we first construct the circuit . This can be done in , since by the uniformity conditions and the closure properties of there are functions computing each component of from , and we can construct the usual ordered 7-tuples in . Then for each i we can trivially construct from the -string , so that . By Lemma 6.6, we can evaluate on these strings with a function; then, with a function, we can output , where is the output size of . □
It follows from the proof above that any function in can be computed using only a single Mostowski collapse at the end of the computation.
Let. Then there isand a smash-term t such that.
By Theorem 7.1, the function f has -uniform circuits. We now repeat the proof of Theorem 8.1, skipping the final step, so that g computes . □
Theandrelations are the same. Furthermore for everythe functionis in.
For the first part, observe that given a diagram we can easily compute in whether . For the second part, we first compute a diagram with , and then compute the bisimulation ∼ between and the Mostowski graph of b. Then . □
We can generalize Theorem 8.2 into a useful result about computing codes for functions in .
Let. Then there isand a smash-term t such thatwheneverandare tuples of sets withfor all i.
As before we repeat the proof of Theorem 8.1, except, rather than choosing such that we choose it so that . This can be done by first constructing a -string such that and then using the method of Lemma 7.12. □
is closed under the replacement and union schemes. That is, for anyfunction g, there arefunctions f and u with
By Lemma 8.4 there is a smash term t and a function h such that and for every . We can now use the method of Section 5.3 for coding collections of sets. Let
Then for every , and W is computable in from and c using separation, since . Replacement follows by Lemma 5.9, and union follows immediately from replacement. □
The course-of-values of a function on a set a (where f may possibly have other parameters) is defined in [4] as the set . We will use a slightly different definition, in the spirit of Section 5.3, which is more convenient to use with subset-bounded recursion.
We define , so that for we have .
We define the course-of-values ofon c (with respect to the argument x) as , and will write this as .
The function f is obtained from g by subset-bounded course-of-values recursion with bound h if
is closed under subset-bounded course-of-values recursion.
Suppose with . Define . Then , since each . By Corollary 8.5 this bound on F is in . Hence we may potentially define F by subset-bounded recursion. This is straightforward, as given we have that , so and . Hence F is in , and it follows immediately that f is as well. □
An interesting consequence of our characterization of in terms of circuits is that it allows us to use known circuit lower bounds to prove that certain functions are not in .
There is nofunction f which computes the parity offor every hereditarily finite set x.
Suppose f is such a function. Then by Theorem 7.1 there is a smash-term t such that for every set a there is a circuit of size computing f on all sets embeddable in a. Choose a large of the form . Let . Then , and . Therefore the underlying graph of has depth (that is, rank) polynomial in k and size polynomial in n. But since computes the parity of all subsets of a, it is straightforward to build from it a circuit of depth polynomial in k and size polynomial in n which computes the parity of all n-bit strings, which is impossible by [8]. □
In contrast, by the simulation of polynomial time in in Section 4 there is a function which can compute the parity of a hereditarily finite set x, as long as x is a set of ordinals.
As a corollary of Theorem 8.9 we get a version of P ≠ NP for . We first define a natural notion of NP for .
A -relation is one of the form , where is a relation and t is a smash term.
The relationexpressing that x can be partitioned into a collection of unordered pairs is-but is not equivalent to anyrelation, even on hereditarily finite sets x.
That - is different from on already follows from [12]. Say that a set is in NP if there is a set in P (that is, decided by a polynomial time infinite-time Turing machine) such that , where alternates bits from x with bits from y. Then [12] shows that every set in P is Borel, and gives an example of a set Δ in NP which is not Borel. By Theorems 4.5 and 4.6, P coincides with on . It follows that Δ is in - but not in .
As was already discussed, since the above separation is based on parity, it has no relevance for whether the ordinary versions of P and NP are distinct.
Embedding-bounded recursion
We will write for the class of functions in the sense of [4]. The goal of this section is to show that and are the same. We recall some definitions from [4].
A function τ is an embedding of a into b, written , if and for all ,
if then
if then for every , there is some with .
Let , and be functions. The function is obtained from by embedding-bounded recursion with bound and embedding function if
and if for all we have . The last condition means that the function is an embedding .
is the closure of the empty set, projections, pairing, union, and set smash # functions under composition and embedding-bounded recursion.
We first show that the two natural notions of embeddability coincide.
The following are equivalent:
There is a set E such that.
There is a function τ such that.
First suppose that . For define . It is straightforward to show that τ has the properties of an embedding function. In particular, if and then so, by the definition of embedded Mostowski collapse, for some , giving as required.
For the other direction, suppose . We first extend the domain of τ from to by defining . It is easy to see that the three properties of an embedding function still hold. Now define E as the set of pairs such that
We will prove by ∈-induction on y that, for every and , . Since it will follow that .
Fix . To show , let . Then for some with . By the definition of E and the properties of τ, there exists with . By the inductive hypothesis, . Therefore , so .
To show , suppose . Since , by the properties of τ there is some with . Then and also by the inductive hypothesis . Therefore . □
is contained in.
It is shown in [4] that contains all the initial functions of and is closed under subset-bounded recursion. That is, all functions are in . So it is enough to show that embedded Mostowki collapse is in . We know from [4] that is closed under course-of-values embedding-bounded recursion, which is a version of embedding-bounded recursion in which we are allowed us to use the sequence of all earlier values of f when calculating . We have
If is the sequence of earlier values of M then
which is a function of S, E and a.
For this to be a valid instance of course-of-values embedding-bounded recursion, we also need to provide a function embedding into an existing function of a and E. By the proof of Lemma 9.4, if and we define then . To compute τ by a function which does not use M, we first compute the bisimulation ∼ between the Mostowski graph of x and (by Lemma 5.7 we can do this in , and hence in ) and then take . □
is contained in.
By Theorem 21 of [4], it is enough to show that is closed under ≼-bounded recursion where the bounding term h is a #-term. Here a #-term is a stricter version of our smash-term: it is built only from variables, the constant 1, and the function symbols ⊙ and #. So suppose that g and τ are functions, h is a #-term and f is a function such that for all
We must show that .
By Lemma 9.7 below we may assume that there is a function in such that, for all with ,
We will use rather than τ because it is convenient to have one fixed bounding set throughout the recursion. Below we write h for .
We will show by defining a function in with the property that for some -string E such that whenever (the is there to help us carry out a kind of course-of-values recursion). We will construct F using ⊆-bounded recursion on b – note that . We then obtain as .
Consider the point in the recursion where we reach a set . We are given the set . Let . By Lemma 5.9 we can compute . By the properties of F, each is a set E with . Therefore .
We can now compute as . Since we have a embedding , we can use the construction in the proof of Lemma 9.4 to build a set such that . We put . □
For the previous theorem we need to reprove, for functions, some technical results from [4] which capture the idea that #-terms behave like monotone functions with respect to embeddings.
Letbefunctions with arguments, which we treat as parameters. Letbefunctions with arguments.
There is afunction τ such that ifand, then.
There arefunctions τ andsuch that ifand, thenand.
If g is a #-term then there is afunction τ with argumentssuch that wheneverandthen.
For item (1), let . The proof that this is an embedding function is just as in Lemma 18 of [4].
For item (2), extend and so that and . Let
where is the (unique) z such that , or is 0 if no such z exists. Then and so both functions can be computed in using separation. The proofs that these work are as in Lemma 19 of [4].
For item (3) it is enough, using item (1), to find a function such that whenever . This is done by induction on the complexity of the #-term g, using items (1) and (2). □
Rudimentary functions
The class of rudimentary functions was introduced in [9], as the smallest class which contains projections, pairing and set subtraction and is closed under composition and the union operation . We will use some properties of shown in [9], namely that it contains ×, is closed under separation, and that the relations are closed under Boolean operations and quantification.
Everyfunction is in.
The only possible issue is closure under union, but this is taken care of by Corollary 8.5. □
Let be the class of functions obtained from by adding transitive closure as a basic function, and closing under subset-bounded recursion.
We will show that and have essentially the same complexity. A straightforward induction shows that no function in increases the rank of its arguments by more than a constant, so does not contain ⊙ or # and the two classes cannot exactly coincide. But by Theorem 10.8 below, for any function f we can compute in a string coding the value of f via a version of embedded Mostowski collapse. In particular it follows that the relations in and are the same.
The key idea is that constructions in typically use recursion over smash-terms ordered by <, and we can simulate this in using recursion over cartesian products ordered lexicographically by <.
For and k-tuples we write for the usual lexicographic ordering induced by the ordering < on components. For any set u we write for the set , where ranges over k-tuples. We write instead of .
When doing course-of-values recursion we use the notation
where the dash − indicates the last k arguments of f.
We introduce the bound u because the collection of all tuples such that is typically not a set. Note that is well-founded on k-tuples, in the sense that for any formula φ in the language of set theory, if holds for some k-tuple then there is some minimal k-tuple such that holds.
We will use the following strengthening of course-of-values recursion to simulate in .
For , the function f is obtained from g by subset-bounded k-lexicographic recursion with bound h if
We call u the domain of the recursion.
For each, the classis closed under subset-bounded k-lexicographic recursion.
We use induction on k. The case is just the usual course-of-values recursion as discussed in Section 8. The proof of Corollary 8.8, that this is available in , relies on the subset-bounded recursion and union schemes and exactly the same proof goes through for .
Suppose . For clarity we will suppress the parameters . We will assume that always, by replacing g with if necessary, and we will write and instead of and . We have
with . Let be defined by the -lexicographic recursion
where R is the function
whose purpose is to prepend elements of a course-of-values Z over with , and remove any which could not then be elements of a course-of-values over . By the inductive hypothesis . Define a function F by
where stands for the -tuple of empty sets.
We claim that for all and u,
To see this, fix u and and use -induction on . For the inductive step, suppose that for all we have
By definition
where
by the inductive hypothesis. From the definition,
where we are using that implies . It follows that . Therefore the right hand side of (2) is exactly the recursive definition of , giving us the inductive step.
To finish the proof it is enough to show that F is in . We have
hence F is definable by course-of-values recursion on , using . Furthermore since we have , and this bound is in . Hence F is in . □
We now generalize the notion of diagram from Definition 2.1.
For , a k-diagram is a pair where is a k-tuple, and a pair of k-tuples is in E only if . The domain of a k-diagram is defined as
A k-diagram represents the graph with nodes and edges given by E.
For , the k-embedded Mostowski collapse is defined by the lexicographic recursion
For convenience we will often treat as a one-argument function, writing to mean for a k-diagram . We consider a k-diagram Δ as a code for the set . Working with codes rather than directly with sets allows us to simulate computations involving sets of higher rank than we could produce in . Note that itself is not in , at least for , and that if we add to it becomes possible to construct # and thus every function in .
We state our main result.
Ifthen there is a functionandsuch thatis a k-diagram and. It follows that theandrelations are the same, and furthermore that forthe functionis in.
This will follow from Theorem 10.10 below, together with the observation that contains the function which maps a to a 1-diagram coding a. For the last sentence we repeat the proof of Corollary 8.3, using Lemma 10.11 to compute bisimulations in .
We say that a function is -definable on diagrams if for all there is an function and such that, for all where each is a -diagram, is an ℓ-diagram and
A relation is -definable on diagrams if for all there is an relation such that for all -diagrams
We show that can simulate functions in this sense.
Everyfunction is-definable on diagrams.
The proof of this takes up the rest of this section. The constructions used are similar to those in Section 7.
For, there is a functioninwhich computes the bisimulation between the k-diagramand the ℓ-diagram.
First observe that the desired bisimulation is a subset of . We will define by k-lexicographic recursion on with domain E. Suppose we are given , that is, the course-of-values of below . Expanding the definition,
Let be any E-predecessor of . Then and . Hence we can extract from S the bisimulation between and using an function, as
We then carry on as in the proof of Lemma 5.7. □
The relations = and ∈ are-definable on diagrams.
The constant 0 and the functions pairing,, ⊙ and # are-definable on diagrams.
A 1-diagram for 0 is simply . For the other functions, suppose we are given a k-diagram and an ℓ-diagram .
For the pairing function we take and construct an m-diagram, whose nodes we will write in the form where i is a 1-tuple, is a k-tuple and is an ℓ-tuple. We define an edge relation G, using infix notation for G, by
if and only if
if and only if
.
Note that G respects the ordering . By (1) and (2), and . Thus by (3) and (4), . The set composition and functions are similar (see Lemmas 7.5 and 7.6).
For the smash function # we take . Using similar notation for tuples as the previous case, we define an edge relation G on m-tuples by
if and only if and
if and only if and is a source node of F.
We output .
For the cartesian product we take . We define an edge relation G by first, for each pair , putting
if and only if
if and only if .
For each such p, if p has the form where and , meaning that and , then we add six more edges:
and
and
.
From (1) and (3), we have . From (1), (2) and (4), we have . From (5), . We output , which thus by (6) codes the whole set . □
Below we will use small Greek letters to denote tuples of sets. The arity will be clear from the context.
The transitive closure function is-definable on diagrams.
Given a k-diagram , we first claim that there is an function computing the ancestor relation on the nodes of Δ.
To see this, for let be the ancestor relation on the graph whose nodes are the set and whose edges are those induced on this set by E. Then and can be computed by subset-bounded k-lexicographic recursion, where the form of the recursion is similar to the proof of Lemma 10.11, and we compute from earlier values with as in Lemma 6.15.
We output where G consists of every pair such that β is an E-ancestor of α. □
Embedded Mostowski collapse is-definable on diagrams.
We are given a k-diagram and an ℓ-diagram . We will construct a set H such that
where and . As in Lemma 7.10, we define for k-tuples ρ. We put
The proof that this works is the same as for Lemma 7.10.
To construct H in , we first observe that if and only if . Since membership and transitive closure are -definable on diagrams, this relation is as well. To decide whether , we first construct a subcircuit computing the bisimulation ∼ between and . Then is in E if and only if there exist ℓ-tuples in such that
and this condition is decidable in , since membership and the pairing function relation are -definable on diagrams. □
Forthere is anfunctionsuch that, for any set S of k-diagrams,is a-diagram with
We write a k-diagram Δ as , and can recover the k-tuple and the set from Δ using functions. Define
That is, for each pair in we prepend Δ to both k-tuples in the pair, turning them into -tuples, and then take the union over all . The result is that for each . Then we define
where is a k-tuple of empty sets. Note that the extra edges respect the lexicographic ordering. Finally we output . □
Suppose g and h are-definable on diagrams. Then the function f defined by subset-bounded recursion from g with bound h is-definable on diagrams.
For simplicity of presentation we will only consider a recursion without parameters – this changes nothing important. So we have
Suppose that our input x is given as a k-diagram. By assumption there are and a function simulating h, which takes as input a k-diagram and outputs an ℓ-diagram, and a function simulating g, which takes as input an -diagram (for the previous values) and a k-diagram (for x) and outputs an m-diagram.
Let us name the parts of a diagram, so that . We claim that there is an function such that for all k-diagrams Δ and -diagrams Γ, we have that and
To compute , we first compute , and the bisimulation ∼ between them. To deal with the intersection, we then take the set and delete from it every edge for which there is no with the edge in . We output the result.
We can now define a function simulating f by recursively applying . Below, stand for k-tuples. Suppose our input is . Define a function , by k-lexicographic recursion on β with domain E as
and we introduce the notation for . Recall that the course-of-values of below β on domain E is
from which we can construct in . Furthermore this is a subset-bounded recursion, since by the definition of we have that . Hence F is in .
We claim that . It follows that we can define f on diagrams by setting β to be α. We will use k-lexicographic induction on β. Letting and , we have
using, in order, the definition of F, equation (3), the definition of , the inductive hypothesis, and the recursive definitions of and f. □
Footnotes
Acknowledgements
Sam Buss is supported in part by NSF grants DMS-1101228 and CCR-1213151, by the Simons Foundation, award 306202, and by the Skolkovo Institute for Science and Technology. Sy-David Friedman is supported by the Austrian Science Fund (FWF) under project number P24654. Moritz Müller is supported by the Austrian Science Fund (FWF) under project number P28699. Neil Thapen is supported in part by the European Research Council under the European Union’s Seventh Framework Programme (FP7/2007-2013)/ERC grant agreement 339691. The Institute of Mathematics of the Czech Academy of Sciences is supported by RVO:67985840.
References
1.
P.Aczel, Non-Well-Founded Sets, CSLI Lecture Notes, Vol. 14, Center for the Study of Language and Information, Stanford, 1988.
2.
T.Arai, Predicatively computable functions on sets, Archive for Mathematical Logic54 (2015), 471–485. doi:10.1007/s00153-015-0422-2.
3.
A.Beckmann, S.R.Buss and S.-D.Friedman, Safe recursive set functions, Journal of Symbolic Logic80 (2015), 730–762. doi:10.1017/jsl.2015.26.
4.
A.Beckmann, S.R.Buss, S.-D.Friedman, M.Müller and N.Thapen, Cobham recursive set functions, Annals of Pure and Applied Logic167 (2016), 335–369. doi:10.1016/j.apal.2015.12.005.
5.
A.Beckmann, S.R.Buss, S.-D.Friedman, M.Müller and N.Thapen, Cobham recursive set functions and weak set theories, in: Sets and Computations, Lecture Notes Series, Institute for Mathematical Sciences, National University of Singapore, World Scientific, 2017, pp. 55–116. doi:10.1142/9789813223523_0005.
6.
A.Cobham, The intrinsic computational difficulty of functions, in: Logic, Methodology and Philosophy of Science, Proceedings of the Second International Congress, Held in Jerusalem, 1964, Y.Bar-Hillel, ed., North-Holland, Amsterdam, 1965, pp. 24–30.
7.
J.D.Hamkins and A.Lewis, Infinite time Turing machines, Journal of Symbolic Logic65 (2000), 567–604. doi:10.2307/2586556.
8.
J.Håstad, Almost optimal lower bounds for small depth circuits, in: Proceedings of the 18-th Annual ACM Symposium on Theory of Computing, 1986, pp. 6–20.
9.
R.B.Jensen, The fine structure of the constructible hierarchy, Annals of Mathematical Logic4 (1972), 229–308, Errata, ibid 4 (1972) 443.