Natural deduction in a paracomplete setting
A. E. BOLOTOV, V. O. SHANGIN1
abstract. In this paper we present the automated proof search technique in natural deduction paracomplete logic. Here, for some statements we do not have evidence to conclude if they are true or false, as it happens in the classical framework. As a consequence, for example, formulae of the type p V —p, are not valid. In this paper we formulate the natural deduction system for paracomplete logic PComp, explain its main concepts, define proof searching techniques and the searching algorithm providing examples proofs.
Keywords: paraconsistent logic, natural deduction, proof search
1 Introduction
The Natural Deduction systems for a long time have been mostly subject of teaching curriculum while the computer science community paid much more attention to other deductive methods such as for example resolution or tableaux. The recent interest in ND systems [3, 26, 22] is, to large extend, due to its potential to give an explicit construction of the proof based on some goal-directed proof search. This enables applications of ND in various areas [27, 13].
In this paper we concentrate on paracomplete logic PComp, [4], [1], and [23]. In our presentation of an ND formulation of PComp we directly follow the notation of the latter.
We, in general, follow Quine's representation of subordinate deduction [24] which, in turn, originates from Jaskowski [16] and Fitch
[14].
xThe second author is supported by the Russian Foundation for Humanities, project 13-03-00088a. The authors thank two anonymous referees for useful suggestions.
In our previous work we extended the original formulation for classical propositional logic to first-order logic [10, 11] and then to the non-classical framework of propositional intuitionistic logic [18]. Then, in [8] it was further extended to capture propositional lineartime temporal logic PLTL and in [12] the computation tree logic CTL. Subsequent works defined the proof technique for natural deduction in linear-time case [9] and tackled expressive formalisms of quantified temporal logic [5] and in [7] we have presented a natural deduction system for the paraconsistent logic PCont and relevant proof searching algorithm.
The main contribution of this paper is the definition of the natural deduction proof search technique for the paracomplete logic PComp.
The rest of the paper is organized as follows. In § 2 we describe PComp reviewing its axiomatics and semantics. In § 3 we formulate the natural deduction calculus and give an example of the construction of the proof. Subsequently, in § 4, we introduce the main proof-searching procedures, formulate the searching algorithm and show its correctness. Finally, in § 5, we provide concluding remarks and identify future work.
2 Paracomplete Logic PComp
Fixing a set Prop of propositions, we export the following axiomatics of PComp from [1]. The axiomatics is a subset of classical propositional logic with the characteristic PComp Axiom 18.
PComp Axiomatics
1. A d (A v B)
2. A d (B v A)
3. (A d C) D ((B D C) d ((A V B) D C))
4. (a A B) D A
5. (A A B) D B
6. (C D A) D ((C D B) D (C D (A A B)))
7. A d (B d A)
8. (A D (B D C)) D ((A D B) D (A D C))
9. ((A D B) D A) D A
10. -.(A V B) D (—A a-B)
11. (—A a—B) D -(A v B)
12. —(A A B) D (—A v—B)
13. (—A v—B) D (—A a—B)
14. —(A D B) D (A a—B)
15. (A a—B) d —(A D b)
16. ——A D A
17. A d ——A
18. —A D (A D B)
The only rule of inference of PComp is modus ponens: From A and A d B infer B.
Semantics
The semantics for the above axiom system is a matrix semantics which reflects the nature of this system — truth gaps. There are three values 1, f, 0 with the designated value 1 such that 0 < f < 1 and A v B = max(A, B) and A a B = min(A,B). The matrix semantics for PComp is given below:
v 1 f 0 a 1 f 0 d 1 f 0
1 1 1 1 1 1 f 0 1 1 f 0
f 1 f f f f f 0 f 1 1 1
0 1 f 0 0 0 0 0 0 1 1 1
p — p
1 0
f f
0 1
In this context, for example, the law of excluded middle, p v —p is not a valid formula. Indeed, as it is easy to check, that when p is assigned 1 or 0, formula p v —p behaves as in the classical setting, getting the designated value 1. However, when p is assigned f, the same value, f, is assigned to its negation, —p, and thus p v —p is assigned the value f.
3 Natural deduction system NPComp
In this section we present the natural deduction system for logic PComp slightly changing its formulation given in [25]. Due to the
nature of the set up of this system, we need to take care of the behaviour of logical operations. In particular, to reflect the truth values gapping, we need to guarantee that some known formulae that are dependent on this semantical property, do not hold as theorems. For example, formulae of the type A v - A, are not, in general, valid, for example, p v —p is not a theorem. Further, some known classical derivabilities fail. Thus, for example, from A d B we should not be able, in general, to derive —A v B. Similarly, the following variant of the contraposition should also fail: from —A d B derive —B d A.
In the subsequent presentation we will utilise the following notation. Firstly, by a literal we understand a proposition or its negation. Let Lit abbreviate a set of literals. Next, when writing r h B we refer to the task of establishing a natural deduction derivation (defined below) of a formula B from some set of assumptions r. If r, in r h B, is empty then the task is to prove that B is a theorem, and in this case we will simply write h B. Finally, the abbreviation r |= B stands for establishing that B is a logical consequence of a set of assumptions r. If r, in r |= B, is empty then the task is to show that B is a valid formula and in this case we will simply write |= B. Throughout the paper, symbols 'h' and '=' stand for PComp-derivability and PComp-validity, respectfully.
Natural deduction calculi can be used to solve different deductive tasks. For example, we might be given any of the following tasks:
1 to find an ND derivation r h B,
2 to find an ND proof h B or
3 to check the consistency of some given set of formulae.
In the first and third cases, the ND derivation would start with some given set of assumptions r. In the second case, i.e. when we need to establish if B is a theorem, we commence our reasoning by introducing some assumptions. As in other ND calculi, in
constructing an ND derivation, we are allowed to introduce arbitrary formulae as new assumptions2. Consequently, any formula in a derivation is either an assumption or a formula which is obtained as a result of the application of one of the inference rules.
Now, as it is indicative for the natural deduction construction, we define two classes of rules of inference: elimination and introduction rules. Applying elimination rules we simplify formulae while applying introduction rules we aim at 'constructing' formulae, introducing new logical constants. In Figures 1-3 we define these sets of elimination and introduction rules, where prefixes 'el and i in1 stand for elimination and an introduction rule, respectively.
Elimination Rules :
AaB
A eli
— a el
— v eli el
A
—(A a B) —a v—B
—(A v B) —a
A d B, A
d el2
B
i(A D B) -B
a el2
AB
B
el
A
A
— v el2 D eli
—(A V B) —B
n(A D B) A
el
A v B, [A]C, [B]C, C
I
Figure 1. NPComp Elimination rules
2Note that for many researchers, this opportunity to introduce arbitrary formulae as assumptions has been a point of great scepticism regarding the very possibility of the automation of the proof search.
Introduction Rules
A, B
A iu
v iu\
— v iu
— d iu
dp
A a B A
iu
AvB
—(A V B)
A, —B —(A D B) [A D B] A A
v iu2
A v—B i(A A B)
B
iu
iu
AvB
[C] B
C d B B
B
I
Figure 2. NPComp Introduction rules
Characteristic PComp Rule
PComp- A' A
Figure 3. NPComp Characteristic rule
Definition 1 (Inference). An inference in the system NPComp is a finite non-empty sequence of formulae with the following conditions:
• each formula is an assumption or is derived from the previous ones via an NPComp-rule;
• by applying din each formula starting from the last alive assumption up to the one which is the result of the application of this rule, is discarded from the inference;
• by applying vei each formula starting from assumption A up to formula C, inclusively, as well as each formula starting from assumption B up to formula C, inclusively, is discarded from the inference;
• by applying dp each formula starting from assumption A d B up to formula A, inclusively, is discarded from the inference. This, as before, is abbreviated by enclosing relevant discharged and discarded formulae into square brackets.
Definition 2 (Proof). A proof in the system NPComp is an inference from the empty set of assumptions.
Two rules deserve attention. First, it is PComp- in rule which is specific for this logic and allows to derive arbitrary formulae from a contradiction. However, when applying this rule, we do not discharge any assumptions if they were part of the contradiction.
The other rule, dp rule, is an analogue to axiom 10 which represents Pierce law.
As an example of the ND proof let us consider the proof for axiom 10.
list proof annotation
1. (p D q) d p assumption
2. p d q assumption
3. p 1,2,D el
4. p 3, Dp, [2-3]
5. ((p d q) d p) d p D in, 4, [1-4]
A slightly different formulation of NPComp has been shown to be sound and complete [25] where instead of PComp-in as in our current presentation, tollendo ponens rule was used called PCompVef.
A v B, -A
B
However, it is easy to show that PComp-in used in the formulation above and PCompVej are derivable in both systems, respectively. Let us show that PCompVei is derivable via PComp-in.
lproof annotation
1. AvB given
2. —A given
3. A assumption
4. B 2,3, PComp-in
5. B assumption
6. B 1, 4, 5, [3 - 4], [5] V el,
PComp~,in is derivable via PComp^el
lproof annotation
1. A given
2. —A given
3. AvB v in, 1
4. B PCompvin, 2, 3
Thus, since ND formulations of PComp in [25] and in the current paper are deductively equivalent the established correctness in [25] covers our current presentation:
THEOREM 1. r hNPComp A ^^ r |= A [25].
4 Proof searching techniques for NPComp
The proof searching procedure presented in this section is based on our generic approach developed for various ND constructions — in classical and non-classical settings, see for example [9, 7], where the main components of this generic method are defined in full. The main features of this generic procedures can be summarised as follows:
• The proof search strategy is goal-directed, it runs over two sequences: list_proof which lists formulae in the proof and listgoals which lists goals to be reached.
• Each step of the algorithmic proof is associated with a specific goal, called current_goal.
• In forming a derivation, we check the reachability of the current_goal.
— Reaching the current goal fires an appropriate introduction rule. Note that this makes the application of introduction rules strictly determined.
— Otherwise, we continue searching for updating both sequences, listproof and listgoals. In particular, a special place in our searching technique is devoted to the rules that explore compound formulae in the proof in searching for new goals.
— We define special marking techniques to avoid infinite loops in list proof and list goals during the proof search: for example, to prevent the same application of an elimination rule or updating list goals with the same goal.
For the sake of integrity of this presentation and for the readability of the text, we introduce the proof technique for PComp below in full, defining all main concepts and presenting both the searching procedures and the formulation of the algorithm in detail.
We proceed first defining the notion of a goal reachability noting that there are three possible situations here. Let Gn be the current goal in list_goals = (G0, G\,..., Gn). Let G+ stand for ' Gn is reached'. Let list_proof(G+) stand for a sequence of formulae satisfying the definition of an NPComp proof of Gn. Firstly, a goal Gn can be some formula B and to reach such a goal we must have a non-discarded formula in list proof simply graphically identical to B. Secondly, a goal Gn can have a form [A]B and to reach such a goal we must have a proof list_proof(B+) such that there exists a non-discarded assumption A £ list_proof and B is the last formula of list_proof. Finally, a goal can be a contradiction, i.e. we need to have in list_proof two contradictory statements, A and —A and abbreviated as
Definition 3 (Current goal reachability). Current goal, Gn, 0 < n, occurring in list_goals= (Go,G\,... ,Gn), is reached if
• Gn is some formula B and there is a formula A £ list proof such that A is not discarded and A = B or
• Gn is of the form [A]B and there is a listproof(B+) such that a non-discarded assumption A € list_proof and B is the last formula of list_proof.
• Gn is a contradiction and there are two contradictory statements, A € list_proof and —A € list_proof.
When we generate list_goals we commence it with the initial goal, which is either a formula to be proved from some set of assumptions or as a theorem (i.e. in the resulting proof all assumptions should be discarded), or a contradiction.
4.1 Proof-searching procedures
First of all, to simplify search, we introduce two new rules, that are derivable in NPComp:
VDi (A V ^ D C (A V ^ D C
Ad C 2 BDC
Now we will give the definition of an algo-derivation and overview the proof search procedures for PComp.
Definition 4 (Algo-derivation NPCompalg). A PComp algo-derivation, abbreviated as NPCompALG, is a pair (listproof, listgoals) whose construction is determined by the searching procedure outlined below.
Searching Procedures. The formulation of the searching procedures below utilises various techniques that have been originally defined for the classical setting [10] and also formed part of the proof-search for temporal logic [9]. Additionally, we use procedures that were introduced for paraconsistent logic PCont [7] but are also useful in the PComp setting. Finally, there are novel techniques that are introduced specifically for the setting of PComp to tackle its paracomplete nature.
Procedure (1). Here we search for an applicable elimination ND-rule in order to update list_proof. If we have a formula, or several formulae, which enable an application of an elimination ND-rule, we apply this rule and update list_proof by the conclusion of
this rule. Procedure 1 terminates when either the current goal is reached or there are no applicable elimination rules.
Procedure (2). We apply procedure 2 when Procedure 1 terminates but the current goal is not reached. Here we distinguish two subroutines.
Procedure (2.1). This subroutine looks at the structure of the current goal and updates list_proof and list_goals, respectively, by new goals or new assumptions. Let list_proof = P1,...Pk and list_goals = G1,..., Gn, where Gn is the current goal. A new goal, Gn+i, is generated by applying the subroutines (2.1.1) - (2.1.9) below depending on the various possible structures of Gn: Gn = A a B| A v B| A d B|—(A A B) |—(A V B) |—(A D B) | L|——A, where A, B are any formulae and L £ Lit.
(2.1.1) r h A, A A B —> r h A, A A B, B, A
(2.1.2.1) r h A, A V B —> r h A, A V B,A*
(2.1.2.2) r h A, A V B —> r h A, A V B, B*
(2.1.3) r h A, A d B —> r, A h A, A D B, B
(2.1.4) r h A, —(A D B) —> r h A, —(A D B),A, —B
(2.1.5) r h A, —(A V B) —> r h A, —(A V B), —A, —B
(2.1.6) r h A, —(A A B) —> r h A, —(A A B), —A V—B
(2.1.7.1) r h A, F r h A, F, ±
(2.1.7.2) r h A, F r, F D p A—p h A, [F D p A—p]F **
(2.1.8) r h A, ——A r h A, —— A, A
(2.1.9) r h A, [A]B r, A h A, B
★ when the current goal is disjunction, we apply Procedure (2.1.2.1), if it fails, i.e. we have not reached A, the left disjunct of the desired goal A v B, this subroutine is deleted and we apply Procedure (2.1.2.2). We terminate these subroutines if they are not successful in deriving goals A or B straightforwardly, using the elimination rules.
★★ where F £ Lit or F = A v B. Procedure (2.1.7.2) applies when Procedure (2.1.7.1) fails. Also, in Procedure (2.1.7.2) variable p should be fresh.
Marking. Applying Procedure (2.1) we mark literals and formulae of the type A v B if we start proof by refutation. The mark
means that in reaching these goals we cannot any longer apply reasoning by refutation.
Let us explain Procedure (2.1.7) which deals with an unreached goal, F, which is either a literal or AvB. When we cannot reach the current goal, F, and Procedures (2.1.1) - (2.1.4) are not applicable, we follow similar to the classical refutation. However, now, in the new setting, we deal with this situation differently. Namely, first, we look for the contradictions in the proof — Procedure (2.1.7.1). If no contradictions are found then we turn into the refutation style proof noting that 'refutation' is understood in a very specific for this logic sense. Namely, once we have assumed F d (p a —p), where p is fresh, we aim at achieving the goal F. If this can be done then we can always add to list_proof a proof of F from F d (p a —p) and F by dp.
Procedure (2.2). If Procedure (2.1) terminates and the current goal is not reached we apply Procedure (2.2). Here we analyse compound formulae in list_proof in order to find sources for new goals. Unlike in classical case, here only two types of compound formulae in list_proof can serve as sources for new goals, namely disjunctive and implicative formulae but not of the type A d If one of these formulae is found then its structure will determine the new goal to be generated.
(2.2.1) r, A v B h A, C —> r h A, [A]C r h A, [B]C
(2.2.2) r, A d B h A, C —► r h A, C, A
We do not go further into the details of applying both procedures which can be found in [7].
Procedure (3). This is the standard, for our technique, routine, which checks the application of Definition 3 to establish if the current goal in the sequence list_goals has been reached: when we reach the current goal, Gn, we delete Gn from the sequence list_goals and set Gn_i as the current goal.
Procedure (4). Procedure (4) results in finding a relevant introduction rule to be applied. Procedures (2.1.1) - (2.1.8) are associated with correspondent introduction rules. Recall that Procedure (2.1) splits a conjunctive goal and is associated with the ain rule, i.e. given that both goals A and B by applying this rule we would obtain the desired goal A a B. Similarly, Procedure (2.2) looks for
goals A or B, etc; so the following table represents the association of the procedures with the introduction rules as follows:
Procedure (2.1.1) -Procedure (2.1.2.1) Procedure (2.1.2.2) Procedure (2.1.3) -Procedure (2.1.4) -
As we have already noted, the specifics of our searching technique is complete determination of the application of the introduction rules. Any application of such a rule is strictly determined by the current goal in list_goals.
4.2 Proof-searching algorithm NPCompALG
In this section we explain the proof-searching algorithm and give its pseudo-code. The components of the algorithms described below correspond to the searching procedures above.
1. Initialisation. The algorithm commences by setting some initial task G0 as its initial goal, G0 = G.
2. Checking the reachability. We apply a recursive call to check if the current goal is reached. Letting Gcur to abbreviate the current goal we formalise this recursive check as follows
VGi(0 < i) £ list_goals((Gi = Gcur) —> Procedure (3)(Gi) = true).
Thus, Procedure (3) checks the reachability of the current goal, for example, after initialisation, we would let Go = Gcur and apply Procedure (3)(Gcur) = true.
3. Searching for applicable elimination rules. If the current goal is not reached and it is not the initial goal, we apply Procedure (1) determining an applicable elimination rule.
(Reached(Gcur) = true)AND (Gcur = G0) —►
Procedure (1)((list_proof, list_goals)) = true.
If there are no applicable elimination rules we fire Procedure (2).
O
in
in
ain Procedure (2.1.5) —> —v.
vini Procedure (2.1.6) —> —ain
vin2 Procedure (2.1.7) —> d p
din Procedure (2.1.8) —> —in
4. Analysis of the current goal and compound formulae in list_proof. Update list_proof and list_goals depending on the structure of the current goal Gcur or on the search for potential sources of new goals in list_proof.
(Procedure (1)(list_proof) = false) —>
Procedure (2)((list_proof, listgoals}) = true.
5. Introduction rules. If the current goal is reached and it is not the initial goal, we apply Procedure (4) determining an applicable introduction rule.
(Reached(Gcur) = true) AND (Gcur = G0) 5 —> Procedure (4)((list_proof, list goals}) = true.
6 Termination.
6a. Reached(Gcur) = true AND Gcur = G0 —> EXIT. If the current goal is reached and it is the initial goal, terminate, proof found.
6b. If the current goal is reached and no more elimination rules are applicable and no more compound formulae in list_proof can serve as sources for new goals then terminate, no proof found.
(Reached(Gcur) = false) AND (Procedure (2)((list_proof, list_goals}) = false) AND (Procedure (4)((list_proof, list_goals}) = false) —> EXIT.
This search terminates if we managed to reach the initial goal, G0, or if the current goal is not reachable (i.e. no more updates for list proof and list goals are possible). In the former case we have found the desired proof, in the latter case there is no proof and we can construct a counterexample. Let us now describe the marking technique for formulae in list_proof and list_goals that prevent infinite loops when we apply procedures above. Thus, we mark:
• any formula in list proof once it serves as a premise of the rules invoked in Procedure (1);
• any formula in list_proof once it serves as a source of new goals in Procedure (2.2) as well as new goals themselves. This prevents looping in Procedure (2.1.2) — see ★ comments above;
• in some cases marks are deleted, for example, when A £ list_proof served as a source of a new goal B, but then B has been reached, hence discarded. In this case we delete the mark for A enabling this formula again to serve as a source of new goals.
Now we are ready to formulate a searching algorithm. Algorithm NPCompALG. list_proof = list_goals = 0. Given a task r h G,
(1) Gcur = G.
(r = 0) —> (list proof = r, list_goals = G, go to (2)) else list_goals = G, go to (2).
(2) Procedure(3)(G cur) = true.
vGi(0 < i) £ list_goals ((Gi = Gcur) (Procedure (3)(Gi) = true)).
(2a) Reached(Gcur) —> go to (3) else (2b) go to (4).
(3) Procedure(4)((list_proof, list_goals)) = true.
(3a) (Reached(Gcur) = true)AND (Gcur = G) —> go to (6a) else
(3b) Procedure (4)((listproof, listgoals)) = true, go to 2.
(4) Procedure (1)((list_proof)) = true.
(4a) Elimination rule is applicable, go to (2) else
(4b) (if there are no compound formulae in list_proof to which an elimination rule can be applied), go to (5).
(5) Procedure (2)((list_proof, list_goals)) = true.
(5a) Procedure (2.1)((list_proof, list_goals)) = true (analysis of the structure of Gcur), go to (2) else
(5b) Procedure (2.2)((list_proof, list_goals}) = true (searching for the sources of new goals in list_proof), go to (2) else
(5c) (if all compound formulae in list_proof are marked, i.e. have been considered as sources for new goals), go to (6b).
(6) Terminate(NPCompALG).
(6a) The desired ND proof has been found. EXIT,
(6b) No ND proof has been found. EXIT.
4.3 Algo-proof examples
As an example of an algorithmic ND proof we apply NPCompALG to search for the proof of Pierce Law (Axiom 10).
NPCompALG Example: ((p d q) d p) d p
We commence the proof with the main goal, G0 = ((p D q) D p) D p. According to the classical search Procedure (2.1.3) its antecedent (p d q) d p becomes the new assumption, and its consequent, p — the new goal, Gi = p.
list proof annotation listgoals
1. (p d q) d p assumption Go = ((p D q) D p) D p Go, Gi = p
The current goal G\ = p cannot be reached so we apply Procedure (2.1.7). Firstly, by Procedure (2.1.7.1) we search for L, i.e. the presence of contradictions in the proof. This fails hence we apply Procedure (2.1.7.2) and set up the new task — to reach the current literal goal (p in our case) from goal l d p, where goal l stands for some contradictory statements not occurring in the proof earlier. We chose l = r a —r. So our new assumption at step 2 is p d (r a —r) and we aim to reach G2 = p.
list_proof annotation list_goals
1. (p d q) d p 2. p d (r A —r) assumption assumption Go = ((p D q) D p) D p Go, Gi = p Go, Gi, G2 = p
From this moment we are in the refutation style proof understood specifically to this logic. Therefore, we are looking for new assumptions considering compound formulae in the proof. Thus, applying Procedure (2.1) we analyse (p d q) d p at step 1 and set up the new goal G3 = p d q. This is an implicative goal therefore by Procedure (2.1.3), the new assumption is p (at step 3) and the new goal G4 = q.
list proof annotation listgoals
1. (p D q) D p 2. p d (r a —r) 3. p assumption assumption assumption Go = ((p D q) D p) D p Go, Gi = p Go, Gi, G2 = p Go, Gi,G2, G3 = p d q Go, Gi, G2, G3, G4 = q
The next few steps are applications of elimination rules. First, we eliminate implication from 2 and 3 deriving r a —r at step 4 and then eliminate conjunction from the latter deriving formulae at steps 5 and 6.
list proof annotation listgoals
Go = ((p D q) D p) D p
1. (p d q) d p assumption Go, Gi = p
2. p d (r a —r) assumption Go, Gi, G2 = p
Go, Gi,G2, G3 = p d q
3. p assumption Go, Gi, G2, G3, G4 = q
4. r a—r 2, 3, d el r-i r-i r-i r-i r-i Go, Gi, G2, G3,
5. r 4, a el r-i r-i r-i r-i r-i Go, Gi, G2, G3,
6. —r 4, a el r-i r-i r-i r-i r-i Go, Gi, G2, G3, G4
Since we are at the refutation style proof, applying elimination rules we are looking at the possibility to use — in2 rule which needs two contradictory statements. Now we have them at steps 5 and 6. Note that the application of — in2 allows, in general, to introduce any formula as a consequence of the contradiction. However, in our setup the application of this rule is strictly determined so we aim at deriving the current goal only. Thus, at step 7 we get q. This gives us the goal G4. The previous goal — G3 = p d q and according to Procedure (2.1.3) we derive p d q at step 8 discharging assumption
3 and formulae [3-7]. Next, from 1 and 8 we derive p by D el which gives us the reachability of goal G2.
list_proof annotation list_goals
Go = ((p D q) d p) d p
1. (p d q) d p assumption Go,Gi = p
2. p d (r a —r) assumption Go, Gi, G2 = p
Go, Gi,G2, G3 = p d q
3. p assumption Go, Gi, G2, G3, G4 = q
4. r a—r 2, 3, d el r-i r-i r-i r-i r-i Go, Gi, G2, G3, G4
5. r 4, a el r-i r-i r-i r-i r-i Go, Gi, G2, G3, G4
6. —r 4, a el r-i r-i r-i r-i r-i Go, Gi, G2, G3, G4
7. q 5, 6- in2 Go,G1,G2,G3 \G4 reached
8. p d q 7 D in, [3-7] Go,G1,G2 IG3 reached
9. p 1, 8 D el Go,G1 \G2 reached
The current goal is G1 = p. At this stage we apply dp which is associated with Pierce Law. The application of this rule looks as follows:
[p d (r a —r)], p
P '
Thus, we derive p at step 9 discharging assumption 2 and discarding formulae [2-9]. Finally, introducing implication to step 9 we derive the desired formula reaching the main goal Go.
listproof annotation listgoals
Go = ((p D q) D p) D p
1. (p D q) D p assumption Go,Gi = p
2. p D (r A —r) assumption Go,Gi,G2 = p
Go, Gi,G2, G3 = p D q
3. p assumption Go, Gi, G2, G3, G4 = q
4. r A —r 2, 3, D el Go, G\, G2, G3, G4
5. r 4, A el Go, G\, G2, G3, G4
6. —r 4, A el Go, Gi, G2, G3, G4
7. q 5, 6— in2 Go,Gi,G2,Gs G4 reached
8. p D q 7 D in, [3-7] Go,Gi,G2 IG3 reached
9. p 1, 8 D el Go,Gi \G2 reached
10. p 9 Dp, [2-9] Go \Gi reached
11. ((p D q) D p) D p 10 D in, [1-9] \ Go reached
4.4 Correctness
The correctness of the proof searching algorithm NPCompALG consists of showing that it satisfies the following three properties: termination, soundness and completeness.
Theorem 2. NPCompALG terminates for any input formula.
Proof. Proof of the termination of NPCompALG consists of showing that list_proof and list_goals are finite. This will follow from establishing that NPCompALG does not contain infinite loops. The marking technique ensures that there is finite number of application of elimination rules (Procedure (1)), as well as it guarantees that number of formulae introduced into list_proof and list_goals by Procedure (2) is also finite. The way how we manage disjunctive goals A v B and —(A a B) and goals-literals also ensures the absence of infinite loops.
As mentioned above, introduction rules are completely determined by the algorithm. The reachability of the current and the type of the previous goal determines the relevant introduction rule. Also, though the specific for PComp, Pcomp- in rule, in general, allows to derive any formula from the contradiction, the application of this rule is strictly determined by the searching procedures, namely, by Procedure (2.1.7), hence the formula that we derived from a contradiction is always the one mentioned in list_goals. □
Theorem 3. NPCompALG is sound.
Proof. Note that according to its construction, list_proof in NPCompALG, is in fact an NPComp proof. Hence, if there is an NPCompALG of F then its list_proof is a proof of F in the system
NPComp. Therefore, as NPComp is sound then so is NPCompALG.
□
Lemma 1. A PComp-model truth-value assignment ^ for a formula F,^(F), is as follows:
1. A):
1.1. If A) = 1 then ^(A) = 1;
2. ^(A a B):
2.1. If ^(A a B) = 1 then ^(A) = 1 and $(B) = 1;
3. 0(A v B): 3.1. If 0(A V B) = 1
4. 0(A d B): 4.1. If 0(A d b) = 1
then 3.1.1 3.1.2.
then 4.1.1
4.1.2.
4.1.3.
0(A) = 1; or ■0(B) = 1;
■0(A) = 0; or 0(B) = 1; or 0(A) = f;
5. 0(—(A A B)):
5.1. If 0(—(A a B) ) = 1 then 0(—A v —B) = 1;
6. 0(—(A V B)):
6.1. If 0(—(A v B) ) = 1 then 0(—A a —B) = 1;
7. 0(-(A d B)):
7.1. If 0(—(A d B)) = 1 then 0(A a—B) = 1.
Proof. Proof immediately follows from the matrix definitions of
PComp connectives.
□
Lemma 2. From list_proof(F_), an exhausted and unsuccessful algo-proof for a PComp formula F, it is possible to extract a counter-model for F.
Proof. Similar to [25] we generalise Hintikka set technique [15]. According to the construction of an algo-proof for F, if it is exhausted and non successful then the algorithm terminates with all its procedures applied and the final goal, F not reached. We show that in this case list_proof contains a set of literals from which we can build a model M = {M,0} such that 0(F) = 0 or 0(F) = f. We omit the details of the proof but will provide an example of an unsuccessful algo-proof and the corresponding counter-model in the next section.
□
Theorem 4. P C omp alg n d is complete.
Proof. We must show that for every valid formula, A, PCompALGND finds a PCompND proof. This is a simple consequence (by contraposition) of Lemma 2. □
Theorems 2, 3 and 4 imply the following fundamental property of our algorithm:
Theorem 5. For any input formula A, the PCompALGND terminates either building up a PCompND -proof for A or providing a counter-model.
5 Conclusion and future work
We have presented a proof search technique in natural deduction system for paracomplete logic PComp. To the best of our knowledge, there is no other similar work on the automation of paracom-plete natural deduction systems. Our developments presented in this paper form basis for the development of automated goal directed techniques for more expressive formalisms mentioned above. The feasibility of these extensions is based on the systematic nature of the approach which we follow to build natural deduction systems. When we started in our earlier works with the classical setting, we have managed to construct the rules of the natural deduction system for classical propositional [11] and first order logics [10] which enable an efficient extensions to more expressive frameworks of linear-time temporal logic [8] and branching-time logic [12] and to the setting of dynamic normative systems [6]. All these systems are still based on the classical setting which makes them only applicable to the complete and consistent specifications. Further, the developments of the ND calculus for the paraconsistent logic PCont [7] and the current paper are dealing with inconsistent and incomplete specifications, respectively. Due to the coherence of the approaches to build the natural systems above, it looks feasible to combine paraconsistent and paracomplete ND systems together which will form basis for temporal and normative extensions. These will be part of our future explorations.
Similarly, our initial proof search technique for ND in classical setting, was incorporated and further extended for the linear-time case and to large extend updated to the setting of paraconsistent and paracomplete logics. This gives us confidence in the success of further extensions of the proof search for the above combinations of logic so we will aim at constructing more expressive formalisms:
ND1 Combining paracomplete and paraconsistent frameworks.
ND2 Extending this combination to the frameworks of linear and branching-time logics, and
ND3 to the framework of deontic reasoning.
Finally, aiming at practical implementation of the ideas presented
in this paper, we will target the following related developments:
• Implementation of the proof-search technique for the setting of paraconsistent and paracomplete logics;
• Application of these developments to a suitable use case;
• Study of complexity and refinements of the proof search procedure.
References
[1] Avron A. Natural 3-valued logics — characterization and proof theory // The Journal of Symbolic Logic. 1991. Vol. 56(1). P. 276 - 294.
[2] Avron A., Lev I. A formula-preferential base for paraconsistent and plausible non-monotonic reasoning. // Proceedings of the Workshop on Inconsistency in Data and Knowledge (KRR-4), Int. Joint Conf. on AI (Ijcai 2001). 2001. P. 60-70.
[3] Basin D., Matthews S., Vigano L. Natural deduction for non-classical logics // Studia Logica. 1998. N. 60(1). P. 119-160.
[4] Batens D. Paraconsistent extensional propositional logics // Logique et Analyse. 1980. Vol. 23. P. 127-139.
[5] Bolotov A. Handling Periodic Properties: Deductive Verification for Quantified Temporal Logic Specifications // Fifth International Conference on Secure Software Integration and Reliability Improvement, SSIRI 2011, 27-29 June, 2011, Jeju Island, Korea. 2011. P. 179-186.
[6] Bolotov A., Basso A., Grigoriev O. Deontic Extension of Deductive Verification of Component Model: Combining Computation Tree Logic and Deontic Logic in Natural Deduction Style Calculus // Proceedings of IICAI-2009. 2009. P. 166-185.
[7] Bolotov A., Shangin. V. Natural Deduction System in Paraconsistent Setting: proof search for PCont // Journal of Intelligent Systems. 2012. Vol. 21. N. 1. P 1-24.
[8] Bolotov A., Basukoski A., Grigoriev O., Shangin V. Natural deduction calculus for linear-time temporal logic. // Joint European Conference on Artificial Intelligence (JELIA-2006). 2006. P. 56-68.
[9] Bolotov A., Grigoriev O., S'hangin V. Automated natural deduction for propositional linear-time temporal logic // the Proceedings of the Time-2007, International Symposium on Temporal Representation and Reasoning, June, 2007.
[10] Bolotov A., Bocharov V., Gorchakov A., Makarov V., Shangin V. Let Computer Prove It // Logic and Computer. M.: Nauka, 2004, (In Russian).
[11] Bolotov A., Bocharov V., Gorchakov A., Shangin V. Automated first order natural deduction // Proceedings of the 4th Indian International Conference on Artificial Intelligence (IICAI-2009): Tumkur, 16-18 December 2009. P. 1292-1311.
[12] Bolotov A., Grigoriev O., S'hangin V. Natural deduction calculus for computation tree logic // IEEE John Vincent Atanasoff Symposium on Modern Computing. 2006. P. 175-183.
[13] Clarke E., Jha S., Marrero W. R. Using state space exploration and a natural deduction style message derivation engine to verify security protocols // Proceedings of the IFIP TC2/WG 2.2, 2.3 International Conference on Programming Concepts and Methods, June 1998. P. 8796.
[14] Fitch F. Symbolic Logic. NY: Roland Press, 1952.
[15] Hintikka J. Notes on the quantification theory // Commentationes physico-mathematicae. Societas scientiarum Fennica, 1955. Vol. 12, N. 17.
[16] Jaskowski S. On the rules of suppositions in formal logic // Polish Logic 1920-1939. Oxford Univ. Press, 1967. P. 232-258.
[17] Kamide N. Natural deduction systems for Nelson's paraconsistent logic and its neighbors // Journal of Applied Non-Classical Logics. 2005. Vol. 15 (4).
[18] Makarov V. Automatic theorem-proving in intuitionistic propositional logic // Modern Logic: Theory, History and Applications. Proceedings of the 5th Russian Conference. StPetersburg, 1998. (In Russian).
[19] Middelburg C. A Survey of Paraconsistent Logics // The Computing Research Repository (CoRR). Vol.1103.4324, 2011.
[20] Naddeo A. Axiomatic Framework applied to Industrial Design Problem formulated by Para-complete logics approach: the power of decoupling
on Optimization-Problem solving // Proceedings of Fourth International Conference on Axiomatic Design. 2006. P 1-8.
[21] Nelson D. Constructible falsity // Journal of Symbolic Logic. 1949. Vol. 14. P. 16-26.
[22] Pfenning F. Logical frameworks // Handbook of Automated Reasoning, J. A. Robinson and A. Voronkov eds. Elsevier, 2001. Chapter XXI, P. 1063-1147.
[23] Popov V. Sequence axiomatisation of simple paralogics // Logical Investigations. 2010. Issue 16. P. 205-220. (In Russian).
[24] Quine W. On natural deduction // Journal of Symbolic Logic. 1950. Vol. 15. P. 93-102.
[25] Shangin V. Natural deduction systems of some logics with truth-value gluts and truth-value gaps // Logical investigations. M.-SPb: C.G.I., 2011. P. 293-308. (in Russian).
[26] Sieg W., Byrnes J. Normal natural deduction proofs (in classical logic) // Studia Logica. 1998. Vol. 60. P. 67-106.
[27] Wooldridge M. Reasoning about Rational Agents. MIT Press, 2000.