Логические исследования 2022. Т. 28. № 1. С. 125-141 УДК 16
Logical Investigations 2022, Vol. 28, No. 1, pp. 125-141 DOI: 10.21146/2074-1472-2022-28-1-125-141
Символическая логика
Symbolic logic
ClORGI JAPARIDZE, BlKAL bAMICHHANE
Cirquent calculus in a nutshell
Giorgi Japaridze
Department of Computing Sciences, Villanova University, 800 Lancaster Avenue, Villanova, PA 19085, USA. E-mail: [email protected]
Bikal Lamichhane
Department of Computing Sciences, Villanova University, 800 Lancaster Avenue, Villanova, PA 19085, USA. E-mail: [email protected]
Abstract: This paper is a brief presentation of cirquent calculus, a novel proof system for resource-conscious logics. As such, it is a refinement of sequent calculus with mechanisms that allow to explicitly account for the possibility of sharing of subexpressions/subresources between different expressions/resources. This is achieved by dealing with circuit-style constructs, termed cirquents, instead of formulas, sequents or other tree-like structures. The approach exhibits greater expressiveness, flexibility and efficiency compared to the more traditional proof-theoretic approaches. The need for substantially new deductive tools that could overcome the limitations of sequent calculus while dealing with resource logics surfaced with the birth of computability logic, a game-semantically conceived logic of computational resources and tasks, acting as a formal theory of computability in the same sense as classical logic is a formal theory of truth. Cirquent calculus offers elegant axiomatizations for certain basic fragments of computability logic that have been shown to be inherently unaxiomatizable in sequent calculus or other traditional systems. The paper provides an iformal account on the main characteristic features of cirquent calculus, motivations for it, semantics, advantages over sequent calculus, as well as how cirquent calculus relates to classical and linear logics. Out of several existing cirquent calculus systems, only the simplest and most basic one, CL5, is presented in full detail.
Keywords: computability Logic, cirquent calculus, linear logic, affine logic, sequent calculus, resource semantics
For citation: Japaridze G., Lamichhane B. "Cirquent calculus in a nutshell", Logicheskie Is-sledovaniya / Logical Investigations, 2022, Vol. 28, No. 1, pp. 125-141. DOI: 10.21146/20741472-2022-28-1-125-141
© Japaridze G., Lamichhane B.
1. Introduction
Cirquent calculus, introduced in [Japaridze, 2006] and further developed in [Bauer, 2015; Japaridze, 2008; Japaridze, 2011; Japaridze, 2013a; Japaridze, 2013b; Xu et al., 2012; Xu, 2014; Xu, 2016], is a novel proof-theoretic approach, more general than traditional approaches such as sequent calculus, Hilbert-style systems, natural deduction, etc. — general in the sense that such systems can always be translated into cirquent calculus but not vice versa. The main distinguishing feature of cirquent calculus is that it allows sharing of subcomponents between different components of its expressions. Instead of formulas, it operates with circuit-style constructs termed cirquents. The word 'cirquent' is a portmanteau of 'circuit' and 'sequent': as we're going to see, cirquents are in fact generalized sequents.
To see why circuits are chosen over formulas, one can ask the following rhetorical question: what is a more natural representation of Boolean functions, formulas or circuits?
(A A B) V (A A C) V (B A C)
Fig. 1. Two ways of representing Boolean functions
In Figure 1 we see a formula and a circuit for the same Boolean function. Notice the sharing that is taking place in the circuit. For instance, input B is shared between the first and the third conjunctive gates. Formulas, on the other hand, have no sharing mechanisms, so B had to be written twice. Due to the sharing of subcomponents, circuits are generally exponentially more compact than formulas. Even though this fact might not be appreciated by just looking at Figure 1, with increase in the complexity of Boolean functions it starts becoming more evident. The compactness of circuits is the reason why computer hardware is based on circuits rather than formulas or other structures that take no advantage of sharing.
Cirquents are more general than Boolean circuits: every Boolean circuit is a cirquent but not vice versa. Out of the two cirquents shown below,
Fig. 2. Circuits vs. cirquents
only the one on the left is a Boolean circuit in the proper sense. The one on the right is not how Boolean circuits are normally drawn as it has two copies of B. From the classical point of view, writing (the "same" input) B twice makes makes no sense. On the other hand, from the point of view of cirquent calculus, the above two are simply different cirquents, not only syntactically but also semantically.
Additionally, cirquents are more general than Boolean circuits in that, when dealing with certain non-classical logics, the former may have non-Boolean gates just as well. Such cirquents can be found in [Japaridze, 2011; Japaridze, 2013a; Japaridze, 2013b; Japaridze, 2018; Japaridze, 2020a; Xu, 2014; Xu, 2016].
The main motivations for developing cirquent calculus have been the following:
• To axiomatize computability logic: Computability logic, which we shall henceforth abbreviate as CoL, is a semantically conceived logic of computational tasks and resources, originally introduced in [Japaridze, 2003] and subsequently developed in a long series of publications (see [Japaridze, 2020b] for a survey). For quite some time, CoL had stubbornly resisted all axiomatization attempts within the framework of traditional proof systems. Eventually it was simply proven in [Das et al., 2016] that axiomatizing even the most basic fragment of CoL in traditional systems was impossible in principle. As an nontraditional approach, cirquent calculus comes in and breaks the ice, offering an adequate proof theory for the otherwise untameable CoL.
• To have a more adequate logic of resources than linear logic claims to be: Here "resources" are meant in a more general/abstract sense than just computational resources studied in CoL. Resource sharing is a ubiquitous phenomenon, yet linear logic, unlike cirquent calculus, lacks mechanisms to account for it. Shame!
• To have more efficient proof systems for classical logic (and beyond) than the traditional ones: As illustrated in [Japaridze, 2008], cirquent calculus achieves an exponential speedup of analytic proofs over
cut-free sequent calculus or other analytic proof systems. Among the tautology classes enjoying this sort of a proof speedup is the well-studied Pigeonhole Principle.
2. Infocomputational tasks and operations on them
Computability logic has a whole zoo of logical operators, listed below. There are several sorts of disjunctions, conjunctions, quantifiers, and more. Among them, in this article we will only be dealing with -, A and V.
• Negation: -.
• Conjunctions: A (parallel); n (choice); A (sequential); A (toggling).
• Disjunctions: V (parallel); U (choice); V (sequential); V (toggling).
• Implications: ^ (parallel); □ (choice); > (sequential); - (toggling).
• Universal quantifiers: V (blind); A (parallel); n (choice); A (sequential); A (toggling).
• Existential quantifiers: 3 (blind); V (parallel); U (choice); V (sequential); V (toggling).
• Recurrences: 0 (branching); A (parallel); A (sequential); A (toggling).
• Corecurrences: ◦ (branching); Y (parallel); Y (sequential); Y (toggling).
• Rimplications: o— (branching); >- (parallel); >- (sequential); — (toggling).
• Repudiations: o- (branching); >- (parallel); >- (sequential); >- (toggling).
In CoL, formulas stand for infocomputational (informational/computational) tasks, and logical operators for operations on such entities. We do not differentiate betweem "informational" and "computational" here because, after all, the purpose of every computation is to provide information, whether the latter is immediately fetched from some database or is obtained as a result of running some sophisticated algorithms. Mathematically, infocomputational tasks are defined as games between two agents, called Provider and Consumer (more often referred to as the machine and the environment, respectively).
Intuitively, such games can be seen as dialogues consisting of questions and answers. For instance, the task performed by the watch (Provider) that you (Consumer) are wearing — call that task TIME — is to tell you the current time whenever you "ask" (well, look at) it. A "dialogue" between you and your watch takes the following form:
consumer: What time is it now? provider: It is 1:30 PM.
Seeing the above as a game, it is a two-move game where the first move,"What time is it now?", is by Consumer and the second move, "It is 1:30 PM", by Provider. Provider is considered to have accomplished the task, i.e., won the current run of the game, if it correctly answered the question, i.e., if it is indeed 1:30 PM. Otherwise it is Consumer who wins. As an aside, this is one case where you do not want to be the winner. If your watch lies to you, then you may lose a more important "game", such as catching the plane. Generally, the same is the case whenever you "play" against an agent meant to be a tool for you to use and rely on.
Most tasks, however, will be more interactive than what we just saw, with multiple questions and answers by both parties. Consider the dialogue below.
consumer: What is my balance? provider: What is your account number? consumer: My account number is 333444555. provider: What is your password? consumer: My password is "password123". provider: Your balance is $12000.
It is for the task BALANCE performed by an automated teller machine (ATM) of a bank. Consumer inquires about his/her balance. But the ATM (=Provider) releases the balance details only after asking (counter)questions and receiving answers regarding the account number and pasword. Here, Provider has accomplished the task if Consumer's balance is indeed $12000, or if Consumer has failed to provide the right account number and password.
Below is an informal explanation of the meanings of the three game operations on which the present article is focused. Formal definitions of all operations can be looked up in [Japaridze, 2020b].
Negation (-) interchanges the roles of the two agents: Provider's questions or answers become those of Consumer, and vice versa. For example, as in TIME Consumer asks the time and Provider answers, in -TIME it is Provider who asks such a question, and it is Consumer's obligation to answer. A naive reader may ask here: "But wait a second, why do we continue calling that agent "Provider" if it no longer provides any information but just the opposite, it consumes information?" Well, "Provider" and "Consumer" are just names that can be assigned to two agents as one pleases. After all, for either agent, most task would naturally involve both providing and consuming information, as was the case with the above task BALANCE. Speaking of tasks, they are symmetric to
resources: what is a task for Provider is a resource for Consumer, and vice versa. So, CoL is a logic of infocomputational resources just as much as it is a logic of infocomputational tasks.
The parallel conjunction A A B of tasks A and B is the task where, in order to accomplish it, Provider needs to accomplish both A and B. In other words, this is a game on two "boards", where Provider wins if it wins on both boards. From Consumer's perspective, having the resource A A B means having both A and B. For example, if you have a functioning watch and a functioning thermometer, the resource you possess is TIME A TEMPERATURE. It allows you to simultaneously know both the current time and the current temperature.
Parallel disjunction A V B can be formally defined as -(-A V—B). This is a two-board game just like A A B, with the difference that here provider is only obligated to win in at least one of the two components rather than both. Intuitively, possessing the resource TIME V TEMPERATURE corresponds to the situation in which you have a watch and a thermometer, where one of them might be malfunctioning but you don't know which one. So, if they tell you "8 AM" and "15°C", you will only come to know that either the time is 8 AM or the temperature is 15°C, without otherwise being sure which one is true.
3. Semantics
CoL and the corresponding cirquent calculus have have their own set of differences with classical and linear logic. For instance, in classical logic we have A = A V A. However, in CoL, A = A V A!. To get a feel for this, let us compare the resources TIME and TIME V TIME. Intuitively, TIME corresponds to a situation where you have a single watch, and a reliable one. TIME V TIME, on the other hand, corresponds to a situation where you have two watches, and you only know that at least one of them is reliable, even though you cannot tell which one. Obviously TIME is more helpful than TIME V TIME. That is, as a resource, the former is stronger than the latter.
A task is defined to be valid if (a smart) Provider has a strategy to always accomplish it without any physical or informational resources. That is, a valid task is one that can be accomplished by a Provider who knows nothing else but logic. Of course, here the word "defined" should be taken in quotation marks: this presentation deliberately avoids any strict definitions, relying on informal explanations instead. Formal definitions, of course, do exists for all concepts introduced here. Again, they, for instance, can be found in [Japaridze, 2020b].
Any task of the form —A V A is valid. E.g., Provider's winning strategy for —TIME V TIME is to wait for Consumer to ask "what time is it?" in TIME, and
ask the same (counter)question in -TIME; then, whatever Consumer answers, repeat the same answer in TIME. A few other examples of valid principles are:
• A V B V -A
• ((-A V -B) A (-C V -D)) V ((A V C) A (B V D))
• ((-A V -A) A (-A V -A)) V ((A V A) A (A V A))
Not all classical tautologies are valid though. For instance, -A V (A A A) is not validated by the semantics of CoL. Let PREGNANCY be the task of telling any physically present woman's pregnancy status. This is the resource provided by a disposable pregnancy kit. Is there a strategy for accomplishing the task given below?
-PREGNANCY V(PREGNANCY A PREGNANCY)
#1 #2 #3
As a matter of fact, there isn't. Let's try it out.
consumer in #2:: Is Martha pregnant? provider in #1:: Is Martha pregnant? consumer in #1:: Yes, Martha is pregnant. provider in #2:: Yes, Martha is pregnant. consumer in #3:: Is Dorothy also pregnant? provider:: ... stuck!
For the first question posed by Consumer, Provider could utilize #1 to obtain the correct answer. However, when Consumer poses the question again for Dorothy, Provider gets stuck as it cannot reutilize #1 to answer the question.
Cirquents can be seen as operations on tasks/resources (applied to their atoms/inputs). As such, they are not always expressible in terms of -, A, V or other primitives. For instance, the cirquent of Figure 1 is a 3-ary operation, accomplished by Provider iff at least two out of the three components, A, B, C are accomplished. There is no way to write it as a formula. A naive attempt could try to express it as (A A B) V (A A C) V (B A C), but it is far from adequate, as it suggests the presence of two copies of the task/resource A, two copies of B and two copies of C. In game-semantical terms, the cirquent of Figure 1 is a game on three boards. However, (A A B) V (A A C) V (B A C) suggests that this is a game on six boards, even if the types (but not necessarily runs) of the games played on boards #1 and #3 coincide, and so do the types of the games played on boards #2 and #5, or boards #4 and #6.
The concept of validity now naturally extends from formulas to cirquents: a cirquent is valid iff (the task expressed by) it can always be accomplished by a Provider without any physical or extra-logical informational resources.
4. Classical and linear logics from the perspective of cirquent calculus
To understand how ciruent calculus relates to classical logic and linear logic, let us consider the formula
and ask which of the following two cirquents is a (more) adequate or reasonable representation of its meaning:
The answer depends on who you ask. From the point of view of classical logic, it is the cirquent on the left: even though in the formula we see B twice, those two occurrences are semantically the same in every relevant sense, so why not combine them together. On the other hand, a linear logician would say that the meaning of the formula is captured by the cirquent on the right: the formula has two copies of B, and each copy stands for a separate resource, even if both resources have the same type B.
From the point of view of cirquent calculus, classical logic and linear logic are two imperfect extremes, whose resource-semantical perspectives on logical expressions can be schematically characterized as follows:
Classical logic: Everything is shared that can be shared. Namely, each occurrence of the same subcomponent stands for the same "copy" of the same
Linear logic: Nothing is shared at all. Namely, each occurrence of the same subcomponent stands for a different "copy" of the same resource.
But how about mixed cases, where some same-type resources may be shared between different subresources and some not, as in the cirquent of Figure 4 where the two conjunctions share both A and C but each one has its own B? Only cirquent calculus makes it possible to account for such cases.
(A A B) V (B A C)
Fig. 3. Two readings of the same formula
resource.
Fig. 4. A cirquent with some resources shared and some not
5. Cirquent calculus vs. sequent calculus
A number of cirquent calculus systems, of various degrees of expressiveness, have been elaborated in [Japaridze, 2006; Japaridze, 2008; Japaridze, 2011; Japaridze, 2013a; Japaridze, 2013b; Japaridze, 2018; Japaridze, 2020a; Xu et al., 2012; Xu, 2014; Xu, 2016]. The historically earliest, simplest and most basic among them is the system CL5 introduced in [Japaridze, 2006], and this is the only cirquent-calculus system that we are going to look at in this article.
CL5 operates with special — shallow — sorts of cirquents. Every such cirquent is of height 2, having a conjunctive root with disjunctive children and (-, A, V)-formulas as grandchildren. Quite simply, a shallow cirquent is a conjunction of disjunctions of formulas. With F, G, H standing for some arbitrary (not necessarily atomic) formulas, below is an example of a shallow cirquent:
For brevity, in CL5 we write such a cirquent without showing (the always-conjunctive) root, and with bullets (•) — called groups — instead of disjunctive gates, as follows:
Fig. 5. A shallow cirquent
F G H F
Fig. 6. A compact way of representing shallow cirquents
A group is said to contain the formulas to which it is connected with an arc; the horizontal line on the top is to show that this is one cirquent rather than two as it may be otherwise perceived. A formula F in isolation is understood as the cirquent with a single group that contains just F:
F i
Fig. 7. A formula understood as a shallow cirquent
Proof-theoretically, a cirquent can be thought of as a collection of leaf se-quents from some (one-sided) sequent-calculus proof tree, where some sequents may share some formulas. In the following illustration, on the right we see a (fragment of a) sequent-calculus proof tree where the formula G is implicitly assumed to be shared between the two leaf sequents (F, G) and (G,H); on the other hand, the formula F, while also occuring in two leaf sequents, is not assumed to be shared between them. The corresponding cirquent on the left, whose three gropus represent the three leaves of the proof tree, makes these implicit assumptions on the presence and absence of sharing explicit.
F G H F
F A H,G (F A H) V G
((F A H) V G) A F Fig. 8. A cirquent as a collection of leaves of a sequent-calculus proof tree
The inference rules of CL5 will only be explained in the following section. Nevertheless, for preliminary intuitive insights into the superiority of cirquent calculus over sequent calcus, let us still try to compare a purported cirquent-calculus proof (whatever that precisely means) — or rather a fragment of such a proof — of the formula ((F A H) V G) A F with a corresponding fragment of a sequent-calculus proof of the same formula, shown in Figure 9.
cirquent-calculus proof F G H F
W /
F A H G F
V /
(F A H) V G F _j_/
((F A H) V G) A F i
Fig. 9. Cirquent-calculus vs. sequent-calculus proofs
Taking a bottom-up (conclusion-to-premises) view of proofs, the sequent-calculus proof starts with the sequent consisting of just the target formula. On the left, at the same level, we wee the corresponding target cirquent with a single group. The number of leaves in the sequent-calculus proof tree is thus 1, and so is the number of groups at the corresponding step of the cirquent-calculus proof. This situation will persist throughout the rest of steps. Due to the main connective A in ((F A H) V G) A F, in the sequent-calculus proof tree the target sequent splits into two sequents ((F A H) V G) and (F} when proceeding to the next (second from bottom) level of the proof. In the sequent-calculus proof, correspondingly, the single group of the raget cirquent splits into two groups, one containing (F A H) V G and the other F. The next step in the sequent-calculus proof replaces V with a comma in (F AH) VG. In the cirquent-calculus proof, the single formula (F AH) VG of the left group correspondingly splits into F AH and G. Nothing remarkable has happened so far. It is when transitioning to the final (top) level of either proof that things get interesting. Due to the conjunctive formula F AH, the sequent (F AH, G) and the corresponding group of the corresponding cirquent split into two, one splinter taking the formula F with it and the other taking H. But how about G, which splinter can inherit it? Classical logic says that both of the corresponding branches of the sequent-calculus proof tree can simultaneously take G, because there is no difference between multiple Gs and a single G. On the other hand, the resource-conscious linear logic insists that only one of the branches can take G with it. Cirquent calculus resolves this conflict by letting G be inherited by both splinter groups but explicitly showing that G is shared between them, so it is still a single rather than two copies of G.
sequent-calculus proof F, G G, H
F A H, G (F A H) V G F ((F A H^VGOAF
6. The rules of system CL5
The following theorem, proven in [Japaridze, 2006], establishes the adequacy of system CL5, to completing whose description the present section is devoted:
Theorem 1. A cirquent (of the language of CL5) is valid iff it has a proof in CL5.
What follows is an informal explanations of the inference rules of CL5, six in total. All non-axiom rules take a single premise, and a proof (in CL5) of a cirquent C is understood as a sequence of cirquents ending in C where the first cirquent is an axiom, and every subsequent cirquent follows from its preceding one by one of the rules of inference.
6.1. Axioms (A)
Axioms can be thought of as "rules" with no premises. Every axiom of CL5 looks like an array of groups, as shown in Figure 10, where each group contains some formula and the negation of that formula. The letter "A" next to the horizontal line is to indicate that the conclusion follows by the rule whose abbreviated name is A. Similarly for the other rules.
A
F Fi
nFn Fn
Fig. 10. An instance of Axiom
6.2. Exchange (E)
This rule swaps arbitrary two adjacent formulas or groups, as in the two examples below.
formula exchange
ABC
group exchange ABC
B A C
ABC
E
E
Fig. 11. Instances of Exchange
6.3. Weakening (W)
Some rules are easier to describe by explaining how to get a conclusion from a premise, while some other rules, such as the present one, are more conveniently explained going from a conclusion to a premise. A premise of Weakening is obtained by deleting an arbitrary arc in the conclusion, as illustrated in the following two examples; if, as in the second example, a given formula was incident only with the deleted arc, then such a formula should be deleted as well.
A C
M
A C
K1
W
A
C
ABC
W
Fig. 12. Instances of Weakening
6.4. Duplication (D)
This rule replaces an arbitrary group of the premise with two identical adjacent copies, as in the following example.
F G H
F G H
Fig. 13. An instance of Duplication
6.5. V-introduction (V)
To obtain a conclusion by this rule, replace any two adjacent formulas F and G of the premise with F V G, and redirects it to all the arcs originally pointing to either F or G or both.
E F G H
Fig. 14. An instance of V-introduction
6.6. A-introduction (A)
To obtain a premise by this rule, do the following:
• Replace a formula F A G of the conclusion with two adjacent formulas F and G.
• Then duplicate each group originally containing F A G; let one copy contain F and the other G, without otherwise changing any old containments.
E F G H EFGHJ
E FAG H E FAG H J
Fig. 15. Instances of A-introduction
7. Do not throw the baby out!
Figure 16 below shows an example of a CL5-proof. We call its target formula
((-P V -Q) A (-R V -S)) V ((P V R) A (Q V S))
Blass's principle, as Andreas Blass [Blass, 1992] was the first to observe its game-semantical validity. The steps marked as E...E and v...v are combinations of several applications of the corresponding rules (E) and (V).
. A
PP V Q \ Q / S S V R R V
P -Q -R -S P R Q S
E...E
nP V-Q -R V-.S PV R Q V S
nP v-Q -R V-S (P V R) A (Q V S)
(-P V-Q)A(-RV-S) (P V R) A (Q V S)
- V...V
((-PV-Q) A(-R V-S)) V ((P V R) A (Q V S))
A
A
V
Fig. 16. A proof of Blass's principle
What is interesting about Blass's principle is that, while valid in CoL and, correspondingly, provable in CL5, it is not provable in linear logic or even the stronger version of it known as affine logic (=linear logic with the weakening rule of sequent calculus retained). Together with obvious similarities, there are thus also discrepancies between linear logic and CoL, even if we limit ourselves to formulas only, the common syntactic denominator of the two approaches. As both linear logic and CoL claim to be logics of resources, it is worthwhile to point out the main cause of disagreements between them. CoL started from a mathematically strict and intuitively convincing resource semantics, and only after that tried to answer what is valid and what is not in this semantics. In CoL, we can thus meaningfully talk about validity and prove the resource-semantical completeness of a system. As for linear logic, there is no formal resource semantics there, and the associated claims of being "the" logic of resources have basically remained at a level of naive examples in the "can you get both a candy and a gum for $1?" style. Of course, certain formal semantics have been retroactively developed for linear logic (e.g., the phase or
coherence spaces semantics), but those can hardly claim to be semantics of resorces. By and large, as a "resource logic", linear logic has been conceived proof-theoretically rather than semantically, by taking classical sequent calculus and deleting rules that seemed to be unacceptable from a naive, intuitive resource-semantical point of view. The deleted rules were indeed wrong, such as contraction, which is obviously inconsistent with any reasonable understanding of resources. However, where is a guarantee that, together with clearly offensive postulates, some deeply hidden resource-semantically irreproachable derivative principles were not expelled as well? CoL believes that this is exactly what happened, with Blass's principle being an example of an innocent baby thrown out with the bath water.
Acknowledgements. This paper is based on presentations of cirquent calculus given by the first author at the conferences Smirnov Readings (Moscow, June 21, 2019) and Logic, Quantum Computing, and Artificial Intelligence (Online, July 3, 2021).
References
Bauer, 2015 - Bauer, M. "The computational complexity of propositional cirquent calculus", Logical Methods is Computer Science 11, 2015, Vol. 11, Article 1:12, pp. 1-16.
Blass, 1992 - Blass, A. "A game semantics for linear logic", Annals of Pure and Applied Logic, 1992, Vol. 56, pp. 183-220.
Das et al., 2016 - Das, A., Strassburger, L. "On linear rewriting systems for Boolean logic and some applications to proof theory", Logical Methods in Computer Science, 2016, Vol. 12, pp. 1-27.
Japaridze, 2003 - Japaridze, G. "Introduction to computability logic", Annals of Pure and Applied Logic, 2003, Vol. 123, pp. 1-99.
Japaridze, 2006 - Japaridze, G. "Introduction to cirquent calculus and abstract resource semantics", Journal of Logic and Computation, 2006, Vol. 16, pp. 489-532.
Japaridze, 2008 - Japaridze, G. "Cirquent calculus deepened", Journal of Logic and Computation, 2008, Vol. 18, pp. 983-1028.
Japaridze, 2011 - Japaridze, G. "From formulas to cirquents in computability logic", Logical Methods is Computer Science, 2011, Vol. 7, Is. 2 , Paper 1, pp. 1-55.
Japaridze, 2013a - Japaridze, G. "The taming of recurrences in computability logic through cirquent calculus, Part I", Archive for Mathematical Logic, 2013, Vol. 52, pp. 173-212.
Japaridze, 2013b - Japaridze, G. "The taming of recurrences in computability logic through cirquent calculus, Part II", Archive for Mathematical Logic, 2013, Vol. 52, pp. 213-259.
Japaridze, 2018 - Japaridze, G. "Elementary-base cirquent calculus I: Parallel and choice connectives", Journal of Applied Logics - IfCoLoG Journal of Logics and their Applications, 2018, Vol. 5, No. 1, pp. 367-388.
Japaridze, 2020a - Japaridze, G. "Elementary-base cirquent calculus II: Choice quantifiers", Logic Journal of the IGPL, 2020, https://doi.org/10.1093/jigpal/ jzaa022.
Japaridze, 2020b - Japaridze, G. "Fundamentals of computability logic 2020", IfCoLog Journal of Logics and their Applications, 2020, Vol. 7, pp. 1177-1198.
Xu et al., 2012 - Xu, W., Liu, S. "Soundness and completeness of the cirquent calculus system CL6 for computability logic", Logic Journal of the IGPL, 2012, Vol. 20, pp. 317-330.
Xu, 2014 - Xu, W. "A propositional system induced by Japaridze's approach to IF logic", Logic Journal of the IGPL, 2014, Vol. 22, pp. 982-991.
Xu, 2016 - Xu, W. "A cirquent calculus system with clustering and ranking", Journal of Applied Logic, 2016, Vol. 16, pp. 37-49.