1 Introduction
Computability logic (CoL), introduced in [9, 14, 21], is a semantical platform and ambitious program for redeveloping logic as a formal theory of computability, as opposed to the formal theory of truth which logic has more traditionally been. Its expressions stand for interactive computational tasks seen as games played by a machine against the environment, and “truth” is understood as existence of an effective solution, i.e., of an algorithmic winning strategy.
With this semantics, CoL provides a systematic answer to the fundamental question “what can be computed? ”, just as classical logic is a systematic tool for telling what is true. Furthermore, as it turns out, in positive cases “what can be computed” always allows itself to be replaced by “how can be computed”, which makes CoL of potential interest in not only theoretical computer science, but many more applied areas as well, including interactive knowledge base systems, resource oriented systems for planning and action, or declarative programming languages. On the logical side, CoL promises to be an appealing, constructive and computationally meaningful alternative to classical logic as a basis for applied theories. The first concrete steps towards realizing this potential have been made very recently in [23, 27], where CoLbased versions of Peano arithmetic were elaborated. The system constructed in [23] is an axiomatic theory of effectively solvable numbertheoretic problems (just as the ordinary Peano arithmetic is an axiomatic theory of true numbertheoretic facts); the system constructed in [26] is an axiomatic theory of efficiently solvable (namely, solvable in polynomial time) numbertheoretic problems; in the same style, [27] constructs systems for polynomial space, elementary recursive, and primitive recursive computabilities. In all cases, a solution for a problem can be effectively — in fact, efficiently — extracted from a proof of it in the system, which reduces problemsolving to theoremproving.
The formalism of CoL is openended. It has already undergone series of extensions ([20][24]
) through introducing logical operators for new, actually or potentially interesting, operations on games, and this process will probably still continue in the future. The present work is also devoted to expanding the expressive power of CoL, but in a very different way. Namely, while the earlier languages of CoL were limited to
formulas, this paper makes a leap forward by generalizing formulas to circuitstyle structures termed cirquents. These structures, in a very limited form (compared with their present form), were introduced earlier [13, 19] in the context of the new prooftheoretic approach called cirquent calculus. Cirquentbased formalisms have significant advantages over formulabased ones, including exponentially higher efficiency and substantially greater expressive power. Both [13] and [19] pointed out the possibility and expediency of bringing cirquents into CoL. But a CoLsemantics for cirquents had never really been set up until now.Unlike most of its predecessors, from the technical (albeit perhaps not philosophical or motivational) point of view, the present paper is written without assuming that the reader is already familiar with the basic concepts and techniques of computability logic. It is organized as follows.
Section 2 reintroduces the concept of games and interactive computability on which the semantics of CoL is based. A reader familiar with the basics of CoL may safely skip this section.
Section 3 introduces the simplest kind of cirquents, containing only the traditional and sorts of gates (negation, applied directly to inputs, is also present). These are nothing but (possibly infinite) Boolean circuits in the usual sense, and the semantics of CoL for them coincides with the traditional, classical semantics. While such cirquents — when finite — do not offer higher expressiveness than formulas do, they do offer dramatically higher efficiency. This fact alone, in our days of logic being increasingly CSoriented, provides sufficient motivation for considering a switch from formulas to cirquents in logic, even if we are only concerned with classical logic. The first steps in this direction have already been made in [19], where a cirquentbased sound and complete deductive system was set up for classical logic. That system was shown to provide an exponential speedup of proofs over its formulabased counterparts.
Each of the subsequent Sections 48 conservatively generalizes the cirquents and the semantics of the preceding sections.
Section 4 strengthens the expressiveness of cirquents by allowing new, so called selectional, sorts of gates, with the latter coming in three — choice , sequential and toggling — flavors of disjunction and conjunction. Unlike and which stand for parallel combinations of (sub)tasks, selectional gates model decision steps in the process of interaction of the machine with its environment. Cirquents with such gates, allowing us to account for the possibility of sharing nontrivial subgames/subtasks, have never been considered in the past. They, even when finite, are more expressive (let alone efficient) than formulas with selectional connectives.
Section 5 introduces the idea of clustering selectional gates. Clusters are, in fact, generalized gates — switchstyle devices that permit to select one of several tuples of inputs and connect them, in a parallel fashion, with the tuple of outputs, with ordinary gates being nothing but the special cases of clusters where . Clustering makes it possible to express a new kind of sharing, which can be characterized as “sharing children without sharing grandchildren” — that is, sharing decisions (associated with child gates) without sharing the results of such decisions (the children of those gates). The ability to account for this sort of sharing yields a further qualitative increase in the expressiveness of the associated formalism.
Sections 6 and 7 extend clustering from selectional gates to the traditional sorts of gates. It turns out that the resulting cirquents — even without selectional gates — are expressive enough to fully capture the well known and extensively studied independencefriendly (IF) logic introduced by Hintikka and Sandu [5]. At the same time, cirquents with clustered gates yield substantially higher expressiveness than IF logic does. Due to this fact, they overcome a series of problems emerging within the earlier known approaches to IF logic. One of such problems is the inability of the traditional formalisms of IF logic to account for independence from conjunctions and disjunctions in the same systematic way as they account for independence from quantifiers. Correspondingly, attempts to develop IF logic at the purely propositional level have not been able to go beyond certain very limited and special syntactic fragments of the language. In contrast, our approach saves classical logic’s nice phenomenon of quantifiers being nothing but “long” conjunctions and disjunctions, so that one can do with the latter everything that can be done with the former, and vice versa. As a result, we can now (at last) meaningfully talk about propositional IF logic in the proper sense without any unsettling syntactic restrictions. Another problem arising with IF logic is the “unplayability” (cf. [31]) of the incompleteinformation games traditionally associated with its formulas, as such games violate certain natural gametheoretic principles such as perfect recall. Attempts to associate reasonable gametheoretic intuitions with imperfectinformation games typically have to resort to viewing the two parties not as individual players but rather as teams of cooperating but noncommunicating players. This approach, however, may often get messy, and tends to give rise to series of new sorts of problems. Väänänen [34] managed to construct a semantics for IF logic based on perfectinformation games. This, however, made games unplayable for a new reason: moves in Väänänen’s games are secondorder objects and hence are “unmakable”. Our approach avoids the need to deal with imperfectinformation, secondordermove, or multipleplayer games altogether.
Section 7 also introduces a further generalization of cirquents through what is termed ranking. Cirquents with ranking (and with only gates) allow us to further capture the so called extended IF logic (cf. [32]) but, again, are substantially more expressive than the latter. They also overcome one notable problem arising in extended IF logic, which is the (weak) negation’s not being able to act as an ordinary connective that can be meaningfully applied anywhere within a formula.
Section 8 extends the formalism of cirquents by allowing additional sorts of inputs termed general, as opposed to the elementary inputs to which the cirquents of the earlier sections are limited. Unlike elementary inputs that are interpreted just as (“true”) or (“false”), general inputs stand for any, possibly nontrivial, games. This way, cirquents become and can be viewed as a (complex) operations on games, only very few of which are expressible through formulas.
Section 9 sets up an alternative semantics for cirquents termed abstract resource semantics (ARS). It is a companion and faithful technical “assistant” of CoL. ARS also has good claims to be a materialization and generalization of the resource intuitions traditionally — but somewhat wrongly — associated with linear logic and its variations. Unlike CoL, ARS has already met cirquents in the past, namely, in [13, 19]. The latter, however, unlike the present paper, elaborated ARS only for a very limited class of cirquents — cirquents with just gates and without clustering or ranking.
Section 10 proves that CoL and ARS validate exactly the same cirquents. Among the expected applications of this theorem is facilitating soundness/completeness proofs for various deductive systems for (fragments of) CoL, as technically it is by an order of magnitude easier to deal with (the simple and “naive”) ARS than to deal with (the complex and “serious”) CoL directly.
2 Games
As noted, computability logic understands interactive computational problems as games played between two players: machine and environment. The symbolic names for these two players are and , respectively. is a deterministic mechanical device (thus) only capable of following algorithmic strategies, whereas there are no restrictions on the behavior of , which represents a capricious user, the blind forces of nature, or the devil himself. Our sympathies are with , and by just saying “won” or “lost” without specifying a player, we always mean won or lost by . is always a variable ranging over , with meaning ’s adversary, i.e. the player which is not .
Before getting to a formal definition of games, we agree that a move is always a finite string over the standard keyboard alphabet. A labeled move (labmove) is a move prefixed with or , with its prefix (label) indicating which player has made the move. A run is a (finite or infinite) sequence of labmoves, and a position is a finite run. Runs will be often delimited by “” and “”, with thus denoting the empty run.
The following is a formal definition of the concept of a game, combined with some less formal conventions regarding the usage of certain terminology. It should be noted that the concept of a game considered in CoL is more general than the one defined below, with games in our present sense called constant games. Since we (for simplicity) only consider constant games in this paper, we omit the word “constant” and just say “game”.
Definition 2.1
A game is a pair , where:
1. is a set of runs satisfying the condition that a finite or infinite run is in iff all of its nonempty finite — not necessarily proper — initial segments are in (notice that this implies ). The elements of are said to be legal runs of , and all other runs are said to be illegal runs of . We say that is a legal move for in a position of iff ; otherwise is an illegal move. When the last move of the shortest illegal initial segment of is labeled, we say that is a illegal run of .
2. is a function that sends every run to one of the players or , satisfying the condition that if is a illegal run of , then .^{1}^{1}1We write for . When , we say that is a won (or won by ) run of ; otherwise is lost by . Thus, an illegal run is always lost by the player who has made the first illegal move in it.
It is clear from the above definition that, when defining a particular game , it would be sufficient to specify what positions (finite runs) are legal, and what legal runs are won by . Such a definition will then uniquely extend to all — including infinite and illegal — runs. We will implicitly rely on this observation in the sequel.
A game is said to be elementary iff it has no legal runs other than (the always legal) empty run . That is, an elementary game is a “game” without any (legal) moves, automatically won or lost. There are exactly two of such games, for which we use the same symbols and as for the two players: the game automatically won by player , and the game automatically won by player .^{2}^{2}2Precisely, we have and . Computability logic is a conservative extension of classical logic, understanding classical propositions as elementary games. And, just as classical logic, it sees no difference between any two true propositions such as “” and “Snow is white”, and identifies them with the elementary game ; similarly, it treats false propositions such as “” or “Snow is black” as the elementary game .
The negation of a game is understood as the game obtained from by interchanging the roles of the two players, i.e., making ’s (legal) moves and wins ’s moves and wins, and vice versa. Precisely, let us agree that, for a run , means the result of changing in each label to and vice versa. Then:
Definition 2.2
The negation of a game is defined by stipulating that, for any run ,

iff ;

iff .
Obviously the negation of an elementary game is also elementary. Generally, when applied to elementary games, the meaning of fully coincides with its classical meaning. So, is a conservative generalization of classical negation from elementary games to all games.
Note the relaxed nature of our games. They do not impose any regulations on when either player can or should move. This is entirely up to the players. Even if we assume that illegal moves physically cannot be made, it is still possible that in certain (or all) positions both of the players have legal moves, and then the next move will be made (if made at all) by the player who wants or can act sooner. This brings us to the next question to clarify: how are our games really played, and what does a strategy mean here?
In traditional gamesemantical approaches, including those of Lorenzen [28], Hintikka [4] or Blass [2], player’s strategies are understood as functions — typically as functions from interaction histories (positions) to moves, or sometimes (Abramsky and Jagadeesan [1]) as functions that only look at the latest move of the history. This strategiesasfunctions approach, however, is inapplicable in the context of computability logic, whose relaxed semantics, in striving to get rid of any “bureaucratic pollutants” and only deal with the remaining true essence of games, has no structural rules and thus does not regulate the order of moves. As noted, here often either player may have (legal) moves, and then it is unclear whether the next move should be the one prescribed by ’s strategy function or the one prescribed by the strategy function of . In fact, for a game semantics whose ambition is to provide a comprehensive, natural and direct tool for modeling interactive computations, the strategiesasfunctions approach would be less than adequate, even if technically possible. This is so for the simple reason that the strategies that real computers follow are not functions. If the strategy of your personal computer was a function from the history of interaction with you, then its performance would keep noticeably worsening due to the need to read the continuously lengthening — and, in fact, practically infinite — interaction history every time before responding. Fully ignoring that history and looking only at your latest keystroke in the spirit of [1] is also certainly not what your computer does, either. The inadequacy of the strategiesasfunctions approach becomes especially evident when one tries to bring computational complexity issues into interactive computation, the next natural target towards which CoL has already started making its first steps ([25, 26, 27]).
In computability logic, (’s effective) strategies are defined in terms of interactive machines, where computation is one continuous process interspersed with — and influenced by — multiple “input” (environment’s moves) and “output” (machine’s moves) events. Of several, seemingly rather different yet equivalent, machine models of interactive computation studied in CoL, here we will consider the most basic, HPM (“HardPlay Machine”) model.
An HPM is nothing but a Turing machine with the additional capability of making moves. The adversary can also move at any time, with such moves being the only nondeterministic events from the machine’s perspective. Along with the ordinary read/write
work tape, the machine also has an additional tape^{3}^{3}3An HPM often also has a third tape called the valuation tape. Its function is to provide values for the variables on which a game may depend. However, as we remember, in this paper we only consider constant games — games that do not depend on any variables. This makes it possible to safely remove the valuation tape from the HPM model (or leave it there but fully ignore), as this tape is no longer relevant. called the run tape. The latter, at any time, spells the “current position” of the play. The role of this tape is to make the interaction history fully visible to the machine. It is readonly, and its content is automatically updated every time either player makes a move.In these terms, an algorithmic solution (’s winning strategy) for a given game is understood as an HPM such that, no matter how the environment acts during its interaction with (what moves it makes and when), the run incrementally spelled on the run tape is a won run of . When this is the case, we say that wins, or solves, , and that is a computable, or algorithmically solvable, game.
As for ’s strategies, there is no need to define them: all possible behaviors by are accounted for by the different possible nondeterministic updates of the run tape of an HPM.
In the above outline, we described HPMs in a relaxed fashion, without being specific about technical details such as, say, how, exactly, moves are made by the machine, how many moves either player can make at once, what happens if both players attempt to move “simultaneously”, etc. As it turns out, all reasonable design choices yield the same class of winnable games as long as we consider a certain natural subclass of games called static.
Intuitively, static games are interactive tasks where the relative speeds of the players are irrelevant, as it never hurts a player to postpone making moves. In other words, they are games that are contests of intellect rather than contests of speed. And one of the theses that computability logic philosophically relies on is that static games present an adequate formal counterpart of our intuitive concept of “pure”, speedindependent interactive computational problems. Correspondingly, computability logic restricts its attention (more specifically, possible interpretations of the atoms of its formal language) to static games. Below comes a formal definition of this concept.
For either player , we say that a run is a delay of a run iff:

for both players , the subsequence of labeled moves of is the same as that of , and

for any , if the th labeled move is made later than (is to the right of) the th labeled move in , then so is it in .
The above conditions mean that in each player has made the same sequence of moves as in , only, in , might have been acting with some delay.
Let us say that a run is legal iff it is not illegal. That is, a legal run is either simply legal, or the player responsible for (first) making it illegal is rather than .
Now, we say that a game is static iff, whenever a run is a delay of a run , we have:

if is a legal run of , then so is ;^{4}^{4}4In most papers on CoL, the concept of static games is defined without this (first) condition. In such cases, however, the existence of an alwaysillegal move is stipulated in the definition of games. The first condition of our present definition of static games turns out to be simply derivable from that stipulation. This and a couple of other minor technical differences between our present formulations from those given in other pieces of literature on CoL only signify presentational and by no means conceptual variations.

if is a won run of , then so is .
The class of static games is closed under all game operations studied in CoL, and all games that we shall see in this paper are static. Throughout this paper, we use the term “computational problem”, or simply “problem”, is a synonym of “static game”.
A simplest example of a nonstatic game would be the game where all moves are legal, and which is won by the player who moves first. The chances of a player to succeed only depend on its relative speed, that is. Such a game hardly represents any meaningful computational problem.
3 The simplest kind of cirquents
We fix some infinite collection of finite alphanumeric expressions called atoms, and use , , , , , , , , …as metavariables for them. If is an atom, then the expressions and are said to be literals.
Let us agree that, in this section, by a graph we mean a directed acyclic multigraph with countably many nodes and edges, where the outgoing edges of each node are arranged in a fixed lefttoright order (edges , , etc.), and where each node is labeled with either a literal or or . Since the sets of nodes and edges are countable, we assume that they are always subsets of . For a node of the graph, the string representing in the standard decimal notation is said to be the ID number, or just the ID, of the node. Similarly for edges.
The nodes labeled with or we call gates, and the nodes labeled with literals we call ports. Specifically, a node labeled with a literal is said to be a an port; a labeled node is said to be a gate; and a labeled node is said to be a gate. When there is an edge from a node to a node , we say that is a child of and is a parent of . The relations “descendant” and “ancestor” are the transitive closures of the relations “child” and “parent”, respectively. The meanings of some other standard relations such as “grandchild”, “grandparent”, etc. should also be clear.
The outdegree of a node of a graph is the quantity of outgoing edges of that node, which can be finite or infinite. Since there are only countably many edges, any two infinite outdegrees are equal. Similarly, the indegree of a node is the quantity of the incoming edges of that node.
We say that a graph is wellfounded iff there is no infinite sequence of nodes where each is a predecessor of . Of course, any (directed acyclic) graph with finitely many nodes is wellfounded.
We say that a graph is effective iff so are the following basic predicates and partial functions characterizing it: “ is a node”, “ is an edge”, “the label of node ”, “the outdegree of node ”, “the ’th outgoing edge of node ”, “the origin of edge ”, “the destination of edge ”.
Definition 3.1
A cirquent is an effective, wellfounded graph satisfying the following two conditions:

Ports have no children.

There is a node, called the root, which is an ancestor of all other nodes in the graph.
We say that a cirquent is finite iff it has only finitely many edges (and hence nodes); otherwise it is infinite.
We say that a cirquent is treelike iff the indegree of each of its nonroot node is .
Graphically, we represent ports through the corresponding literals, gates through inscribed circles, and gates through inscribed circles. We agree that the direction of an edge is always upward, which allows us to draw lines rather than arrows for edges. It is understood that the official order of the outgoing edges of a gate coincides with the (left to right) order in which the edges are drawn. Also, typically we do not indicate the IDs of nodes unless necessary. In most cases, what particular IDs are assigned to the nodes of a cirquent is irrelevant and such an assignment can be chosen arbitrarily. Similarly, edge IDs are usually irrelevant, and they will never be indicated.
Below are a few examples of cirquents. Note that cirquents may contain parallel edges, as we agreed that “graph” means “multigraph”. Note also that not only ports but also gates can be childless.
By an interpretation^{5}^{5}5This concepts is termed “perfect interpretation” in the other pieces of literature on CoL, where the word “interpretation” is reserved for a slightly more general concept. Since we only deal with perfect interpretations in this paper, we omit the word “perfect” and just say “interpretation”. in this and the following few sections we mean a function that sends each atom to one of the values (elementary games) . It immediately extends to a mapping from all literals to by stipulating that ; that is, sends to iff it sends to .
Each interpretation induces the predicate of truth with respect to (w.r.t.) for cirquents and their nodes, as defined below. This definition, as well as similar definitions given later, silently but essentially relies on the fact that the graphs that we consider are wellfounded.
Definition 3.2
Let be a cirquent and an interpretation. With “port” and “gate” below meaning those of , and “true” to be read as “true w.r.t. ”, we say that:

An port is true iff (any literal ).

A gate is true iff so is at least one of its children (thus, a childless gate is never true).

A gate is true iff so are all of its children (thus, a childless gate is always true).
Finally, we say that the cirquent is true iff so is its root.
Definition 3.3
Let be a cirquent and an interpretation. We define to be the elementary game the (only) legal run of which is won by iff is true w.r.t. .
Thus, every interpretation “interprets” a cirquent as one of the elementary games or . This will not necessarily be the case for the more general sorts of cirquents introduced in later sections though.
We say that two cirquents and are extensionally identical iff, for every interpretation , . For instance, the two cirquents of Figure 1 are extensionally identical. Occasionally we may say “equivalent” instead of “extensionally identical”, even though one should remember that equivalence often (in other pieces of literature) may mean something weaker than extensional identity.
It should be pointed out that the above definition of extensional identity applies not only to cirquents in the sense of the present section. It extends, without any changes in phrasing, to cirquents in the more general sense of any of the subsequent sections of this paper as well.
Finally, we say that a cirquent is valid iff, for any interpretation , .
Obviously the semantics that we have defined in this section is nothing but the kind old semantics of classical logic. Computability logic fully agrees with and adopts the latter. This is exactly what makes computability logic a conservative extension of classical logic.
Let us agree that, whenever we speak about formulas of classical logic, they are assumed to be written in negation normal form, that is, in the form where the negation symbol is only applied to atoms. If an expression violates this condition, it is to be understood just as a standard abbreviation. Similarly, if we write , it is to be understood as an abbreviation of . Also, slightly deviating from the tradition, we allow any finite numbers of arguments for conjunctions and disjunctions in classical formulas. The symbol will be understood as an abbreviation of the empty conjunction, as an abbreviation of the empty disjunction, the expression will be used for the conjunction whose single conjunct is , and similarly for . More generally, for any , can (but not necessarily will) be written instead of , and similarly for .
Every formula of classical propositional logic then can and will be seen as a finite treelike cirquent, namely, the cirquent which is nothing but the parse tree for that formula. For instance, we shall understand the formula as the left cirquent of Figure 1.
Every finite — not necessarily treelike — cirquent can also be translated into an equivalent formula of classical propositional logic. This can be done by first turning the cirquent into an extensionally identical treelike cirquent by duplicating and separating shared nodes, and then writing the formula whose parse tree such a cirquent is. For instance, applying this procedure to the right cirquent of Figure 1 turns it into the left cirquent of the same figure and thus the formula .
Without loss of generality, we assume that, unless otherwise specified, the universe of discourse in all cases that we consider — i.e., the set over which the variables of classical first order logic range — is . Then, from the perspective of classical first order logic, the universal quantification of is nothing but the “long conjunction” , and the existential quantification of is nothing but the “long disjunction” . To emphasize this connection, let us agree to use the expression for the former and for the latter, instead of the more usual and (computability logic reserves and for another, so called blind, sort of quantifiers; semantically they, just like and , are conservative generalizations of the classical quantifiers).
Since quantifiers are conjunctions or disjunctions, it is obvious that all formulas of classical first order logic can also be seen as treelike (albeit no longer finite) cirquents. For instance, the formula is nothing but the left cirquent of Figure 2.
On the other hand, unlike the case with finite cirquents, obviously not all infinite cirquents can be directly and adequately translated into formulas of classical logic. Of course, the great expressive power achieved by infinite cirquents, by itself, does not mean much, because such cirquents are generally “unwritable” or “undrawable”. The cirquents of Figure 2 are among the not many lucky exceptions, but even there, the usage of the ellipsis is very informal, relying on a human reader’s ability to see patterns and generalize. In order to take advantage of the expressiveness of cirquents, one needs to introduce notational conventions allowing to represent certain infinite patterns and (sub)cirquents through finite means. The quantifiers and are among such means. Defining new, ever more expressive means (not reducible to ) is certainly possible. Among the advantages of considering all — rather than only finitely represented — cirquents as we do in this paper is that a semantics for them has to be set up only once. If and when various abbreviations and finite means of expression are introduced, one will only need to explain what kinds of cirquents or subcirquents they stand for, without otherwise redefining or extending the already agreedupon general semantics for cirquents.
But higher expressiveness is not the only advantage of cirquents over formulas. Another very serious advantage is the higher efficiency of cirquents. Let us for now talk only about finite cirquents. As we know, all such cirquents can be written as formulas of classical propositional logic. So, they do not offer any additional expressive power. But they do offer dramatically improved efficiency in representing Boolean functions. In Section 8 of [19] one can find examples of naturally emerging sets of Boolean functions which can be represented through polynomial size cirquents but require exponential sizes if represented through formulas. The higher efficiency of cirquents is achieved due to the possibility to share children between different parents — the mechanism absent in formulas, because of which an exponential explosion may easily occur when translating a (nontreelike) cirquent into an equivalent formula. Imagine where the computer industry would be at present if, for some strange reason, the computer engineers had insisted on treelike (rather than graphlike) circuitries!
Cirquents offer not only improved efficiency of expression, but also improved efficiency of proofs in deductive systems. In [19], a cirquentbased analytic deductive system CL8 for classical propositional logic is set up which is shown to yield an exponential improvement (over formulabased analytic deductive systems) in proof efficiency. For instance, the notorious propositional Pigeonhole principle, which is known to have no polynomial size analytic proofs in traditional systems, has been shown to have such proofs in CL8.
4 Selectional gates
We now start a series of generalizations for cirquents and their semantics. We agree that, throughout the rest of this paper, unless otherwise specified, “cirquent” and all related terms are always to be understood in their latest, most general, sense.
In this section we extend the concept of cirquents defined in the previous section by allowing, along with and , the following six additional possible labels for gates: . Gates labeled with any of these new symbols we call selectional gates. And gates labeled with the old or we call parallel gates.
Selectional gates, in turn, are subdivided into three groups:

, referred to as toggling gates;

, referred to as sequential gates;

, referred to as choice gates.
The eight kinds of gates are also divided into the following two groups:

, termed disjunctive gates (or simply disjunctions);

, termed conjunctive gates (or simply conjunctions).
Thus, is to be referred to as “parallel conjunction”, as “choice disjunction”, etc.
The same eight symbols can be used to construct formulas in the standard way. Of course, in the context of formulas, these symbols will be referred to as operators or connectives rather than as gates. Formulas of computability logic accordingly may also use eight sorts of quantifiers. They are written as symbols of the same shape as the corresponding connectives, but in a larger size. Two of such quantifiers — and — have already been explained in the previous section. The remaining quantifiers are understood in the same way: is the infinite choice conjunction , is the infinite choice disjunction , and similarly for . Since quantifiers are again nothing but “long” conjunctions and disjunctions, as pointed out in the previous section, there is no necessity to have special gates for them, as our approach that permits gates with infinite outdegrees covers them all. For similar reasons, there is no necessity to have special gates for what computability logic calls (co)recurrence operators. The parallel recurrence of is defined as the infinite parallel conjunction , the parallel corecurrence of is defined as the infinite parallel disjunction , and similarly for toggling recurrence , toggling corecurrence , sequential recurrence and sequential corecurrence (choice recurrence and corecurrence are not considered because, semantically, both and are simply equivalent to ).
All of the operators , including their quantifier and recurrence versions, have been already motivated, defined and studied in computability logic. This, however, has been done only in the context of formulas. In this paper we extend the earlier approach and concepts of computability logic from formulas to cirquents as generalized formulas.
As before, an interpretation is an assignment of or to each atom, extended to all literals by commuting with . And, as before, such an assignment induces a mapping that sends each cirquent to a game . When is a cirquent in the sense of the previous section, is always an elementary game ( or ). When, however, contains selectional gates, the game is no longer elementary.
To define such games , let us agree that, throughout this papers, positive integers are identified with their decimal representations, so that, when we say “number ”, we may mean either the number as an abstract object, or the string that represents in the decimal notation. Among the benefits of this convention is that it allows us to identify nodes of a cirquent with their IDs.
Definition 4.1
Let be a cirquent, an interpretation, and a position. is a legal position of the game iff, with a “gate” below meaning a gate of , the following conditions are satisfied:

Each labmove of has one of the following forms:

, where is a ,  or gate and is a positive integer not exceeding the outdegree of ;

, where is a ,  or gate and is a positive integer not exceeding the outdegree of .


Whenever is a choice gate, contains at most one occurrence of a labmove of the form .

Whenever is a sequential gate and is of the form , we have .
Note that the set of legal runs of does not depend on . Hence, in the sequel, we can unambiguously omit “” and simply say “legal run of ”.
The intuitive meaning of a move of the form is selecting the th outgoing edge — together with the child pointed at by such an edge — of (in) the selectional gate . In a disjunctive selectional gate, a selection is always made by player ; and in a conjunctive selectional gate, a selection is always made by player . The difference between the three types of selectional gates is only in how many selections and in what order are allowed to be made in the same gate. In a choice gate, a selection can be made only once. In a sequential gate, selections can be reconsidered any number of times, but only in the lefttoright order (once an edge is selected, no edge with can be (re)selected afterwards). In a toggling gate, selections can be reconsidered any number of times and in any order. This includes the possibility to select the same edge over and over again.
Definition 4.2
In the context of a given cirquent and a legal run of , we will say that a selectional gate is unresolved iff either no moves of the form have been made in , or infinitely many such moves have been made.^{6}^{6}6The latter, of course, may not be the case if is a choice gate, or a sequential gate with a finite outdegree. Otherwise is resolved and, where is the last move of the form made in , the child pointed at by the th outgoing edge of is said to be the resolvent of .
Intuitively, the resolvent is the “final”, or “ultimate” selection of a child made in gate by the corresponding player. There is no such “ultimate” selection in unresolved gates.
The following definition conservatively generalizes Definition 3.2 of truth. Now we have a legal run of the cirquent as an additional parameter, which was trivial (namely, ) in Definition 3.2 and hence not mentioned there.
Definition 4.3
Let be a cirquent, an interpretation, and a legal run of . In this context, with “true” to be read as “true w.r.t. ”, we say that:

An port is true iff .

A gate is true iff so is at least one of its children.

A gate is true iff so are all of its children.

A resolved selectional gate is true iff so is its resolvent.

No unresolved disjunctive selectional gate is true.

Each unresolved conjunctive selectional gate is true.
Finally, we say that is true iff so is its root.
As we just did in the above definition, when and are fixed in a context or are otherwise irrelevant, we may omit “w.r.t. ” and just say “true”.
Definition 4.4
Let be a cirquent, an interpretation, and a legal run of . Then is a won run of the game iff is true w.r.t. .
Definitions 4.1 and 4.4, together, provide a definition of the game , for any cirquent and interpretation . To such a game we may refer as “the game represented by under interpretation ”, or as “ under interpretation ”, or — when is fixed or irrelevant — as “the game represented by ”. We may also say that “ interprets as ”. Similarly for atoms and literals instead of cirquents. Also, in informal contexts we may identify a cirquent or a literal with a (the) game represented by it, and write or where, strictly speaking, or is meant. These and similar terminological conventions apply not only to the present section, but the rest of the paper as well.
We now need to generalize the definition of validity given in the previous section to cirquents in the sense of the present section. As it turns out, such a generalization can be made in two, equally natural, ways:
Definition 4.5
Let be a cirquent in the sense of the present or any of the subsequent sections. We say that:
1. is weakly valid iff, for any interpretation , there is an HPM such that wins the game .
2. is strongly valid iff there is an HPM such that, for any interpretation , wins the game .
When and satisfy the second clause of the above definition, we say that is a uniform solution for . Intuitively, a uniform solution for a cirquent is an interpretationindependent winning strategy: since the “intended” or “actual” interpretation is not visible to the machine, has to play in some standard, uniform way that would be successful for any possible interpretation of . To put it in other words, a uniform solution is a purely logical solution, which is based only on the form of a cirquent rather than any extralogical meaning (interpretation) we have or could have associated with it.
It is obvious that for cirquents of the previous section, the weak and strong forms of validity coincide with what we simply called “validity” there. In general, however, not every weakly valid cirquent would also be strongly valid. A simplest example of such a weakly valid cirquent is .^{7}^{7}7If, however, we do not limit our considerations to perfect interpretations (see the footnote on page 5) and allow all interpretations in the definition of weak validity, this cirquent will no longer be weakly valid. In fact, for all well studied fragments of CoL, when interpretations are not required to be perfect, the weak and the strong versions of validity have been shown to yield the same classes of formulas. Strong validity in the CoL literature is usually referred to as uniform validity, and weak validity as (simply) validity. Under any interpretation , the game represented by this cirquent is won by one of the two HPMs or , where is the machine that selects the left disjunct and rests, while is the machine that selects the right disjunct and rests. However, which of these two machines wins the game depends on whether interprets as or . In general, there is no one machine that wins the game for any possible interpretation. That is, the cirquent has no uniform solution, and thus it is not strongly valid.
Which of the two versions of validity is more interesting depends on the motivational standpoint. Weak validity tells us what can be computed in principle. So, a computabilitytheoretician would focus on this concept. On the other hand, it is strong rather than weak validity that would be of interest in all application areas of CoL. There we want a logic on which a universal problemsolving machine can be based. Such a machine would or should be able to solve problems represented by logical expressions without any specific knowledge of the meanings of their atoms, i.e. without knowledge of the actual interpretation, which may vary from situation to situation or from application to application. Strong validity is exactly what fits the bill in this case. Throughout this paper, our primary focus will be on strong rather than weak validity.
To appreciate the difference between the parallel and choice groups of gates or connectives, let us compare the two cirquents of Figure 3.
The game represented by the left cirquent of Figure 3 is elementary, where no moves can or should be made by either player. It is also easy to see that this game (the only legal run of it, that is) is automatically won by , no matter what interpretation is applied, so, it is both weakly and strongly valid. On the other hand, the game represented by the right cirquent of the same figure is not elementary. And it is neither strongly valid nor weakly valid. A legal move by in this game consists in selecting one of the infinitely many outgoing edges (and hence children) of the root, intuitively corresponding to choosing a value for in the formula . And a(ny) legal move by consists in selecting one of the two outgoing edges (and hence children) of one of the gates. Making more than one selection in the same choice (unlike toggling or sequential) gate is not allowed, so that a selection automatically also is the resolvent of the gate. The overall game is won by iff either failed to make a selection in the root, or else, where is the outgoing edge of the root selected by and is the corresponding (th, that is) child of the root, either (1) has selected the left outgoing edge of and is true, or (2) has selected the right outgoing edge of and is true. There are no conditions on when the available moves should be made, and generally they can be made by either player at any time and in any order. So, in the present example, can legally make selections in several or even all gates. But, of course, a reasonable strategy for is to first wait till resolves the root (otherwise wins), and then focus only on the resolvent of the root (what happens in the other gates no longer matters), trying to select the true child of it.
From the above explanation it should be clear that the right cirquent of Figure 3 expresses the problem of deciding (in the traditional sense) the predicate . That is, under any given interpretation , the game represented by that cirquent has an algorithmic winning strategy by if and only if the predicate — which we simply write as — is decidable. As not all predicates are decidable, the cirquent is not weakly valid, let alone being strongly valid.
To get a feel for sequential and toggling gates, let us look at Figure 4.
The cirquents of Figure 4 look similar to the right cirquent of Figure 3. And the latter, as we know, represents the problem of deciding . Then what are the problems represented by the cirquents of Figure 4?
The left cirquent of Figure 4 represents the problem of semideciding . That is, under any given interpretation, the game represented by this cirquent is computable if and only if the predicate is semidecidable (recursively enumerable). Indeed, suppose is semidecidable. Then an algorithmic winning strategy for the game represented by the cirquent goes like this. Wait till the environment selects the th child of the root for some . Then select the left child of , after which start looking for a certificate of the truth of . If and when such a certificate is found, select the right child of , and rest your case. It is obvious that this strategy indeed wins. For the opposite direction, suppose is an HPM that wins the game represented by the cirquent. Then a semidecision procedure for the predicate goes like this. After receiving an input , simulate the work of in the scenario where, at the beginning of the play, the environment selected the th child of the root. If and when you see in this simulation that selected the right child of , accept the input.
As for the right cirquent of Figure 4, it also represents a decisionstyle problem, which is further weaker than the problem of semideciding . This problem is known in the literature as recursive approximation (cf. [3], Definition 8.3.9). Recursively approximating means telling whether is true or not, but doing so in the same style as semideciding does in negative cases: by correctly saying “Yes” or “No” at some point (after perhaps taking back previous answers several times) and never reconsidering this answer afterwards. Observe that semideciding can be seen as always saying “No” at the beginning and then, if this answer is incorrect, changing it to “Yes” at some later time; so, when the answer is negative, this will be expressed by saying “No” and never taking back this answer, yet without ever indicating that the answer is final and will not change.^{8}^{8}8Unless, of course, the procedure halts by good luck. Halting without saying “Yes” can then be seen as an explicit indication that the original answer “No” was final. Thus, the difference between semideciding and recursively approximating is that, unlike a semidecision procedure, a recursive approximation procedure can reconsider both negative and positive answers, and do so several times rather than only once. In perhaps more familiar terms, according to Shoenfield’s Limit Lemma (Cf. [3], Lemma 8.3.12), a predicate is recursively approximable (the problem of its recursive approximation has an algorithmic solution) iff is of arithmetical complexity , i.e., both and its negation can be written in the form , where is a decidable predicate.
We could go on and on illustrating how our formalism — even at the formula level — makes it possible to express various known and unknown natural and interesting properties, relations and operations on predicates or games as generalized predicates, but this can take us too far. Plenty of examples and discussions in that style can be found in, say, [9, 20, 21, 24]. Here we only want to point out the difference between our treatment of (including quantifiers as infinite versions of ) and the more traditional gamesemantical approaches, most notably that of Hintikka’s [4] gametheoretic semantics. The latter essentially treats as we treat — namely, associates ’s moves/choices with and ’s moves/choices with . Computability logic, on the other hand, in the style used by Blass [2] for the multiplicatives of linear logic, treats and as parallel combinations of games: these are simultaneous plays on “two boards” (within the two components). In order to win , needs to win in both components, while in order to win , it is sufficient for to win in just one component. No choice between and is expected to be made at any time by either player. Note that otherwise strong validity would not at all be an interesting concept: there would be no strongly valid cirquents except for some pathological cases such as the cirquent whose root is a childless conjunctive gate.
Another crucial difference between our approach and that of Hintikka, as well as the approach of Blass, is that we insist on the effectiveness of strategies while the latter allow any strategies. It is not hard to see that, if we allowed any (rather than only algorithmic) strategies, the system of our gates would semantically collapse to merely the parallel group. That is, a cirquent (under whatever interpretation) would have a winning strategy by if and only if does, where is the result of replacing in every disjunctive selectional gate by and every conjunctive selectional gate by .
Anyway, an important issue for the present paper is that of the advantages of cirquents over formulas. As we remember, finite cirquents without selectional gates are more efficient tools of expression than formulas of classical logic are, but otherwise their expressive power is the same as that of formulas. How about finite cirquents in the more general sense of this section — ones containing selectional gates? In this case, finite (let alone infinite) cirquents are not only more efficient but also more expressive than formulas. To get some insights, let us look at Figure 5.
On the left of Figure 5 we see a treelike cirquent obtained from the nontreelike cirquent on the right by duplicating and separating shared descendants in the same style as we obtained the left cirquent of Figure 1 from the right cirquent. The two cirquents of Figure 5, however, are not extensionally identical — after all, every legal run of the right cirquent contains at most one move while legal runs of the left cirquent may contain two moves. The two cirquents are different in a much stronger sense than extensional nonidentity though. A machine that selects the left outgoing edge of the left gate and the right outgoing edge of the right gate wins the game represented by the left cirquent of Figure 5 under any interpretation, so that the cirquent is strongly valid. On the other hand, the right cirquent of Figure 5 is obviously not strongly valid. Morally, the difference between the two cirquents is that, in the right cirquent, unlike the left cirquent, the subcirquent (“resource”) is shared between the two conjuncted parents. Sharing means that only one resolution can be made in the gate — a resolution that “works well” for both parents. There is no such resolution though, because the two parents “want” two different choices of a disjunct. In contrast, in the left cirquent, both of these conflicting “desires” can be satisfied as each parent has its own child, so that there is no need to coordinate resolutions.
In layman’s terms, a shared resource (subcirquent) can be explained using the following metaphor. Imagine Victor and his wife Peggy own a joint bank account, with the balance of $ 20,000, reserved for family needs. This resource can be seen as a shared choice combination of truck, furniture, and anything of family use that $20,000 can buy.^{9}^{9}9If Victor and Peggy may change their mind several times, and the sellers’ return policies are flexible enough, then this is a toggling combination rather than a choice one. However, if Victor prefers a truck while Peggy prefers furniture (and both cost $20,000), then they will have to sit down and decide together whether furniture is more important for the family or a truck, as their budget does not allow to get both. The situation would be very different if both Victor and Peggy had their own accounts, each worth $20,000. After all, the total balance in this case would be $40,000 rather than $20,000.
As we saw, the right cirquent of Figure 5 cannot be adequately translated into a formula using the standard way of turning nontrees into trees. However, using some nonstandard and creative ways, a formula which is extensionally identical to that cirquent can still be found. For instance, one can easily see that is such a formula (as long as its gate is given the same ID as the ID of the original cirquent’s gate, of course). Well, we just got lucky in this particular case. “Luck” would not have been on our side if the cirquent under question was slightly more evolved, such as the one of Figure 6.
5 Clustering selectional gates
We now further generalize cirquents by adding an extra parameter to them, called clustering (for selectional gates). The latter is nothing but a partition of the set of all selectional gates into subsets, called clusters, satisfying the condition that all gates within any given cluster have the same label (all are gates, or all are gates, or …) and the same outdegree. Due to this condition, we can talk about the outdegree of a cluster meaning the common outdegree of its elements, or the type of a cluster meaning the common type (label) of its elements. An additional condition that we require to be satisfied by all cirquents is that the question on whether any two given selectional gates are in the same cluster be decidable.
Just like nodes do, each cluster also has its own ID. For clarity, we assume that the ID of a cluster is the same as the smallest of the IDs of the elements of the cluster. The extended ID of a selectional gate is the expression , where is the ID of the gate and the subscript is the ID of the cluster to which the gate belongs. When representing cirquents graphically, one could require to show the extended ID of each selectional gate and (just) the ID of any other node. More often, however, we draw cirquents in a lazy yet unambiguous way, where only cluster IDs are indicated; furthermore, such IDs can be (though not always will be) omitted for singleton clusters. Figure 7 shows the same cirquent, on the left represented fully and on the right represented in a lazy way, with the identical cluster ID “” attached to two gates indicating that they are in the same cluster, while the absence of a cluster ID for the middle gate indicating that it is in a different, singleton cluster (and so would be any other selectional gate if drawn without a cluster ID). Thus, altogether there are two clusters here, one — cluster — containing gate , and the other — cluster containing gates and .
It may be helpful for one’s intuition to think of each cluster as a single gatestyle physical device rather than a collection of individual gates. Namely, a cluster consisting of gates of outdegree , as a single device, would have outputs and tuples of inputs. Figure 8 depicts this new kind of a “gate” for the case when , and the type of the cluster is .
The device shown in Figure 8 should be thought of as a switch that can be set to one of the positions or (otherwise no signals will pass through it). Setting it to simultaneously connects the three input lines , and to the output lines , and , respectively (the three lines are parallel, isolated from each other, so that no signal can jump from one line to another). Similarly, setting the switch to connects , and to , and , respectively. This is thus an “either or ” kind of a switch; combinations such as, say, , are not available.
Figure 9 shows the cirquent of Figure 7 with its clusters redrawn in the style of Figure 8.
Representing clusters in the way we have just done illustrates that they are nothing but generalized gates. In fact, this is a very natural generalization. Namely, a gate in the ordinary sense is the special case of this general sort of a gate where the number of output lines (as well as input lines in each group of inputs) equals . Technically, however, we prefer to continue seeing clusters as sets of ordinary gates as they were officially defined at the beginning of this section. So, drawings in the style of Figures 8 or 9 will never reemerge in this paper, and whatever was said about clusters as individual “gates” of a new type can be safely forgotten.
Cirquents of the previous section should be viewed as special cases of cirquents in the new sense of this section. Namely, they are the cases where each selectional gate forms its own, singleelement cluster. With this view, the semantical concepts we reintroduce in this section conservatively generalize those of the previous section.
The definition of a legal run of the game represented by a cirquent is the same as before (Definition 4.1), with the difference that now moves are made within clusters rather than individual gates. That is, each move of a legal run of looks like , where is the ID of a cluster (rather than gate), and is a positive integer not exceeding the outdegree of that cluster. The intuitive meaning of such a move is selecting the th outgoing edge (together with the corresponding child) simultaneously in each gate belonging to cluster . All other conditions on the legality of runs remain literally the same as before. Anyway, let us not be lazy to fully (re)produce such a definition:
Definition 5.1
Let be a cirquent, an interpretation, and a position. is a legal position of the game iff, with a “cluster” below meaning a cluster of , the following conditions are satisfied:

Each labmove of has one of the following forms:

, where is a ,  or cluster and is a positive integer not exceeding the outdegree of ;

, where is a ,  or cluster and is a positive integer not exceeding the outdegree of .


Whenever is a choice cluster, contains at most one occurrence of a labmove of the form .

Whenever is a sequential cluster and is of the form , we have .
So, for instance, is a legal run of the cirquent of Figure 7, but is not, because is (a gate ID but) not a cluster ID. To summarize once again, selections (moves) in individual gates are no longer available. Rather, they should be made in clusters.
Definition 5.2
In the context of a given cirquent and a legal run of , we will say that a selectional gate of a cluster is unresolved iff either no moves of the form have been made in , or infinitely many such moves have been made. Otherwise is resolved and, where is the last move of the form made in , the child pointed at by the th outgoing edge of is said to be the resolvent of .
With the terms “unresolved”, “resolved” and “resolvent” conservatively redefined this way, the definition of truth for a cirquent and its nodes is literally the same^{10}^{10}10Unlike Definition 5.1 which, at least, changed the word “gate” to the word “cluster” when reproducing the corresponding Definition 4.1. in our present case as in the case of the cirquents of the previous section (Definition 4.3), so we do not reproduce it here. The same applies to the definition of the Wn components of the games represented by cirquents (Definition 4.4).
Let us look at the game represented by the cirquents of Figure 7 once again. The meaning of the move “” in this game is selecting outgoing edge in both gates of cluster . Intuitively, the effect of such a move is connecting gate directly to node and gate directly to node . Thus, the move “” can be seen as a choice (choice ) shared between gates and ; that shared choice, however, yields different, unshared results for the two gates: result for gate while result for gate . This sort of sharing is very different from the sort of sharing represented by gate : the effect of the move “” is sharing both the choice as well as the result of that choice.
Back to the world of Victor and Peggy, imagine they are in their family car on a road between two cities and . Victor likes sports but never goes to theaters. Peggy likes theaters but never attends games. There is a basketball game and a ballet show tonight in city . And there is a football game and an opera show in city . The shared choice/move in this situation is a choice between “drive to ” and “drive to ” (they only have one car!). The outcomes of either choice, however, are not shared. For instance, the outcome of the choice “drive to ” is “see the basketball match” for Victor while “see the ballet” for Peggy. Victor and Peggy can negotiate and decide between the two pairs or . But the pairs and are not available.
As for the stronger type of sharing corresponding to the middle gate of Figure 7, it can be explained by the following modification of the situation: Both Victor and Peggy are fond of Impressionism. There is a Monet exhibition in city , and a Pissarro exhibition in city . The action/choice — driving to or driving to — is again shared. But now so is the corresponding outcome “see Monet’s paintings” or “see Pissarro’s paintings”.
While we could continue elaborating on independent philosophical and mathematical/technical motivations for introducing clustering, here we just want to point out the very direct connections of our approach to the already well motivated IF (independencefriendly) logic. We assume that the reader is familiar with the basics of the latter, or else he or she may take a quick look at the concise yet complete (for our purposes) overview of the subject given in [32]. It should be noted that we use the term “IF logic” in a generic sense, making no terminological distinction between Hintikka and Sandu’s [5] original version of IF logic and Hodge’s [6] generalization of it termed in [7] slash logic. In fact, both the syntax and the semantics for IF formulas that we use are those of slash logic. It is assumed that all formulas of IF logic are written in negation normal form, and that different occurrences of quantifiers in them always bind different variables. We also assume that only existential quantifiers and disjunctions are slashed in the formulas of IF logic — it is known that, in IF logic (as opposed to what is called extended IF logic), slashing universal quantifiers or conjunctions is redundant, having no effect on the semantical meanings of formulas. Finally, without much (if any) loss of generality, we assume that the semantics of IF logic exclusively deals with models with countable domains; namely, such a domain is always or some nonempty finite initial portion of it.
Computability logic insists on algorithmicity of ’s strategies, while IF logic, in its game semantics, allows any strategies. Let us, for now, consider the version of IF logic which differs from its canonical version only in that it, like CoL, requires ’s (which there is usually called Player, or Verifier, or Eloise) strategies to be effective, while imposing no restrictions on ’s (Player’s, Falsifier’s, Abelard’s) strategies. Call this version of IF logic effective IF logic.
Remember that the outgoing edges of each node of a cirquent come in a fixed lefttoright order: edge , edge , edge , etc. Let us call these numbers , , , etc. the order numbers of the corresponding edges.
We now claim that the fragment of our cirquent logic where cirquents are allowed to have only two — and — sorts of gates is sufficient to cover effective IF logic, and far beyond. A verification of this claim — perhaps at the philosophical rather than technical level — is left to the reader.
Namely, each formula of effective IF logic can be understood as the cirquent obtained from it through performing the following operations:
Description 5.3

Ignoring slashes, write in the form of a treelike cirquent, understanding as a “long” conjunction and as a “long” disjunction. This way, each occurrence of a quantifier, conjunction or disjunction gives rise to one (if is not in the scope of a quantifier) or many (if is in the scope of a quantifier) gates. We say that each such gate, as well as each outgoing edge of it, originates from . Also, since we assume that different occurrences of quantifiers in IF formulas always bind different variables, instead of saying “…originates from the occurrence of (or )” we can unambiguously simply say “…originates from ”.

Change the label of each gate to .

Cluster the disjunctive gates so that, any two such gates and belong to the same cluster if and only if they originate from the same occurrence of or in , and the following condition is satisfied:

Let and be the paths (sequences of edges) from the root of the tree to and , respectively. Then, for any , the order numbers of the edges and are identical unless these edges originate from one of the variables .

Let us see an example to visualize how our construction works. A traditional starting point of introductory or survey papers on IF logic is the formula
(1) 
Technically, its meaning can be expressed by the secondorder formula ^{11}^{11}11As long as we deal with effective IF logic, one should require here that and range over recursive functions. or the following formula with Henkin’s branching quantifiers:
with the shape of the quantifier array indicating that the two quantifier blocks and are independent of each other even though, in (1), one occurs in the scope of the other. We agreed earlier to write instead of . So, we rewrite (1) as . This formula, however, is not yet adequate. The philosophy of IF logic associates the intuitions of finding (rather than just existence) with existential quantifiers or disjunctions; and, as we know, it is the operator/gate whose precise meaning is actually finding things (rather than , which is merely about existence of things). So, should be replaced with , and we get the formula which, ignoring the slash for now, can be seen as a treelike cirquent in the sense of the previous section. It now remains to account for the slash by adequately clustering the cirquent. Namely, the clustering should make sure that, whenever and are two upperlevel (those originating from ) gates such that the paths from the root to them — seen not as sequences of edges but as sequences of the corresponding order numbers — only differ in their first two elements (the ones originating from and , of which should be independent), and are in the same cluster. Figure 10 illustrates this arrangement. For compactness considerations, in this figure we have assumed that the universe of discourse (the set over which range) is just ; also, we have written , , etc. instead of , , etc.
To feel the difference created by clustering, let us consider the interpretation that sends the four atoms , , , to and sends all other atoms to . Then the game represented by the cirquent of Figure 10 cannot be won (by ). On the other hand, it would be winnable if there was no clustering. Further, it is also winnable if clustering is made finer (yet not trivial) as done in the cirquent of Figure 11. The latter expresses the “slightly” modified form of (1), and is won by the HPM that generates the run
(or any permutation of the above). Note that the same run is simply not a legal run of the cirquent of Figure 10.
While cirquents allow us to fully capture effective IF logic, they, at the same time, are significantly more expressive than the latter is, even if — or, especially if — we limit ourselves to finite cirquents, and correspondingly limit IF formulas to propositional ones. As mentioned earlier, IF logic has no smooth approach at the purely propositional level, and is forced to severely limit the forms of (meaningful) propositionallevel formulas as, for instance, done in [30]. In particular, it encounters serious difficulties in allowing independence from conjunctions or disjunctions (rather than quantifiers). These problems are automatically neutralized under our approach. We do not introduce any restrictions whatsoever on the forms of cirquents or allowable clusterings in them; yet, all such expressions are semantically meaningful.
Of course, a penalty for the higher expressive power of cirquents is the awkwardness associated with the necessity to draw cirquents instead of writing formulas. But, again, various syntactic shortcuts can be introduced to make life easier, with recurrence operators, quantifiers or the slash notation being among such shortcuts. It should also be remembered that drawing cirquents may be some annoyance for humans (when writing papers) but not for computers (when using logic in their work); the latter, in fact, would much prefer cirquents, as they are exponentially more efficient means of expression than formulas are. In any case, a more significant achievement than expressiveness is probably avoiding the necessity to deal with the unplayable and troublemaking imperfectinformation games on which the traditional semantics for IF logic are based. We owe this effect to the fact that clustering enforces at the game level what IF logic calls uniformity and tries to enforce at the strategy level. Rather than relying on players’ integrity in expecting that they — to their disadvantage — will conscientiously forget the moves they have already seen but of which their actions should be independent, clustering simply makes “cheating” physically impossible.
But it should be remembered that “effective IF logic” is just our present invention which, while both mathematically and philosophically reasonable, is not at all the same as IF logic in its canonical form. So, a true merger between CoL and IF logic would seemingly require a compromise from one of them: either IF logic should adopt the requirement of effectiveness of strategies, or computability logic should drop this (central to its philosophy) requirement. Probably neither camp would be willing to make a compromise.
Fortunately, there is no real need for any compromises. The following section further generalizes the concept of cirquents in a conservative way. The new cirquents, unlike the cirquents of the present section, are powerful enough to express anything that the traditional (“noneffective”) IF logic can. This is achieved through extending the idea of clustering from selectional gates to gates, yet without associating any moves with such gates or clusters.
6 Clustering gates
A cirquent in the sense of the present section is the same as one in the sense of the previous section, with the difference that now not only the set of selectional gates is partitioned into clusters, but also the set of gates (but not the set of gates — not yet, at least). The condition on clustering is the same as before: all gates within a given cluster are required to have the same type (label) and same outdegree. Cirquents in the sense of the previous section are seen as special cases of cirquents in the present sense, namely, the cases where all clusters are singletons.
The legal positions of the game represented by a cirquent in this new sense are defined in literally the same way as before (Definition 5.1). So, clustering gates in a cirquent does not affect the set of its legal runs.
By a metaselection for a cirquent we will mean a (not necessarily effective) partial function from clusters of to the set of positive integers, such that, for any cluster , whenever defined, does not exceed the outdegree of .^{12}^{12}12An equivalent approach would be letting be a total function from the set of clusters to the set of natural numbers (rather than positive integers); then, instead of saying that is undefined at , we could simply say that .
In the context of a given cirquent , a legal run of and a metaselection for , we will say that a gate of a cluster is unresolved iff is undefined at (note that a childless gate will always be unresolved). Otherwise is resolved, and the child of it pointed at by the th outgoing edge is said to be the resolvent of . As for the samename concepts “unresolved”, “resolved” and “resolvent” for selectional gates, they are defined literally as before (Definition 5.2). Note that these three concepts depend on but not when is a gate, while they depend on but not when is a selectional gate. The function thus acts as a “metaextension” of . Intuitively, it can be thought of as selections in clusters made by the guardian angel of in favor of after the actual play took place (rather than during it), even if the latter lasted infinitely long; unlike , its guardian angel has magic — nonalgorithmic — intellectual powers to make best possible selections. Technically, however, selections by the “angel”, unlike selections made by either player, are not moves of the game.
The following definition refines the earlier definitions of truth by relativizing this concept — renamed into metatruth — with respect to a metaselection as an additional parameter.
Definition 6.1
Let be a cirquent, an interpretation, a legal run of , and a metaselection for . In this context, with “metatrue” to be read as “metatrue w.r.t. ”, we say that:

An port is metatrue iff .

A resolved selectional gate is metatrue iff so is its resolvent.

No unresolved disjunctive selectional gate is metatrue.

Each unresolved conjunctive selectional gate is metatrue.

A gate is metatrue iff it is resolved and its resolvent is metatrue.

A gate is metatrue iff so are all of its children.
Finally, we say that is metatrue iff so is its root.
The following definition brings us from metatruth back to truth.
Definition 6.2
Let be a cirquent, an interpretation, and a legal run of . We say that is true w.r.t. iff there is a metaselection for such that is metatrue w.r.t. .
It is left to the reader to see why the new concept of truth is a conservative generalization of its earlier counterparts. The same applies to the following definition, which completes our definition of the game represented by any given cirquent under any given interpretation .
Definition 6.3
Let be a cirquent, an interpretation, and a legal run of . Then is a won run of the game iff is true w.r.t. .
We now claim that any formula of (this time ordinary, “noneffective”) IF logic can be adequately written as a treelike cirquent with only and gates; namely, such a cirquent is obtained from through applying the steps 1 and 3 of Description 5.3, with step 2 omitted. For any interpretation , we will then have iff is true (under the same interpretation of atoms) in IF logic. Figure 12 shows an example. As an easy exercise, the reader may want to verify that the cirquent of that figure is under the interpretation which sends , , , to and sends all other atoms to . Note that this cirquent represents an elementary game, unlike its counterpart from Figure 10.
Just as for any other claims made in this paper regarding connections to IF logic, we are not attempting to provide a proof of our present claim. Such a proof would require reproducing and analyzing one of the semantics accepted/recognized in the IF logic community, which could take us too far — the present paper is on computability logic rather than IF logic after all and, even if a known semantics of IF logic and the corresponding fragment of the semantics of CoL turned out to be not exactly equivalent, a question would arise about which one is a more adequate materialization of the original philosophy of IF logic.
7 Clustering all gates; ranking
Other than the claimed fact that the cirquents of the previous section achieve the full expressive power of IF logic, there are no good reasons to stop at those cirquents. Indeed, if we clustered selectional and gates, why not do the same with the remaining type of gates? Naturally, the semantics of clustered gates would have to be symmetric to that of clustered gates. Namely, a universally quantified metaselection should be associated with them, as we associated an existentially quantified metaselection with clusters in the previous section. Such an can be thought of as a guardian angel of that makes selections in clusters in favor of after the game has been played by the two players. One can show that then, no matter how the gates are clustered, truth in the sense of the previous section is equivalent to an assertion that sounds like the right side of Definition 6.2 but starts with the words “there is an such that, for all ,…” instead of just “there is an such that…”. But then the question comes: why this quantification order and not “for all there is an such that…”, which would obviously yield a different yet meaningful concept of truth?^{13}^{13}13This predicate of truth, in contrast to the previous one, would depend on how gates are clustered but not on how gates are clustered. Again, there is no good answer, and here we see the need for a yet more general approach that would be flexible enough to handle the semantical concepts induced by either quantification order. This brings us to the idea of introducing one more parameter into cirquents, which we call ranking. The latter is an indication of in what order selections by the “guardian angels” should be made. Furthermore, we allow not just one but several “guardian angels” for either player, with each “angel” responsible for a certain subset of clusters rather than all clusters of a given type. Then, again, ranking fixes the order in which these multiple “angels” should make their selections. Let us get down to formal definitions to make these intuitions precise and more clear.
A cirquent in the sense of the present section is the same as one in the sense of the previous section, with the following two changes. Firstly, now the set of all gates (including gates) is partitioned into clusters, with each cluster, as before, satisfying the condition that all gates in it have the same type and the same outdegree. Secondly, there is an additional parameter called ranking. The latter is a partition of the set of all parallel ( and ) clusters into a finite number of subsets, called ranks, arranged in a linear order, with each rank satisfying the condition that all clusters in it have the same type (but not necessarily the same outdegree). A rank containing clusters is said to be conjunctive, and a rank containing clusters disjunctive. Since the ranks are linearly ordered, we can refer to them as the st rank, the nd rank, etc. or rank , rank , etc. Also, instead of “cluster is in the th rank”, we may say “ is of (or has) rank ”.
Cirquents in the sense of the previous section are understood as special cases of cirquents in the present sense, namely, as cirquents where all clusters are singletons of the highest rank, and all clusters (which are not necessarily singletons) are of the lowest rank. Here we say “highest rank” and “lowest rank” instead of “rank ” and “rank ” just for safety, because, if one of the two types of parallel gates is absent, then rank would be both highest and lowest; and, if there are no parallel gates at all, the cirquent would not even have rank .
Let be a cirquent with ranks, and let . An metaselection for is a (not necessarily effective) partial function from the th rank of to the set of positive integers, satisfying the condition that, for any given cluster of the th rank, whenever is defined, its value does not exceed the outdegree of . And a (simply) metaselection for is a tuple where, for each , is an metaselection for .
Clustering parallel gates and ranking has no effect on the set of legal runs of the game represented by a cirquent, so the definition of legal positions for cirquents of Section 5 (Definition 5.1) transfers to the present case without any changes.
Definition 7.1
In the context of a given cirquent with ranks, a legal run of and a metaselection for , we will say that a gate of a cluster is unresolved iff, where is the rank of , the function is undefined at . Otherwise is resolved, and the child of it pointed at by the th outgoing edge is said to be the resolvent of . As for the samename concepts “unresolved”, “resolved” and “resolvent” for selectional gates, they are defined literally as before (Definition 5.2).
The following definition of metatruth can be seen to conservatively generalize its predecessor, Definition 6.1:
Definition 7.2
Let be a cirquent,