Download Getting Started With Slate

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Getting Started With Slate
Joshua Taylor
Selmer Bringsjord
Micah Clark
September 15, 2010
Contents
1 Starting Slate
1.1 Putting Formulae in the Workspace . . . .
1.2 Removing Formulae from the Workspace
1.3 Connecting Formulae . . . . . . . . . . . . . .
1.4 The Appearance of Formulae . . . . . . . . .
1.4.1 Formula Identifiers . . . . . . . . . .
1.4.2 Rule Correctness Indicators . . . .
1.4.3 Justification and Link Color . . . .
1.4.4 Formula Assumptions . . . . . . . .
1.4.5 Improper Conclusions . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
2
2
4
4
4
6
6
7
7
2 Summary of Proof Systems
2.1 Propositional Calculus . . . . . . . . .
2.1.1 Assume . . . . . . . . . . . . . . .
2.1.2 Conjunction Introduction . .
2.1.3 Conjunction Elimination . .
2.1.4 Disjunction Introduction . .
2.1.5 Disjunction Elimination . . .
2.1.6 Conditional Introduction . .
2.1.7 Conditional Elimination . . .
2.1.8 Biconditional Introduction .
2.1.9 Biconditional Elimination .
2.1.10 Negation Introduction . . . .
2.1.11 Negation Elimination . . . . .
2.1.12 Substitution . . . . . . . . . . .
2.1.13 PC ` and PC |= . . . . . . . . .
2.2 Non-Quantified Predicate Calculus
2.2.1 = Introduction . . . . . . . . . .
2.2.2 = Elimination . . . . . . . . . .
2.2.3 Substitution . . . . . . . . . . .
2.2.4 FOL ` . . . . . . . . . . . . . . . .
2.3 First-Order Logic . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
8
8
8
8
9
9
10
10
10
10
11
11
12
12
12
13
13
13
14
14
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2.3.0.1 Universal Introduction .
2.3.0.2 Universal Elimination . .
2.3.0.3 Existential Introduction
2.3.0.4 Existential Elimination .
2.4 Modal Logics . . . . . . . . . . . . . . . . . . . .
2.4.1 Necessity Counting . . . . . . . . . .
2.4.2 Modal Rules . . . . . . . . . . . . . . . .
2.4.2.1 Necessity Introduction .
2.4.2.2 Necessity Elimination . .
2.4.2.3 Possibility Introduction .
2.4.2.4 Possibility Elimination .
2.4.2.5 Modal Dualities . . . . . .
2.4.3 Modal Proof Systems . . . . . . . . .
2.4.3.1 T . . . . . . . . . . . . . . . . .
2.4.3.2 K . . . . . . . . . . . . . . . . .
2.4.3.3 S4 . . . . . . . . . . . . . . . .
2.4.3.4 S5 . . . . . . . . . . . . . . . .
ii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
14
14
14
14
15
15
17
17
17
17
17
17
18
18
18
18
19
Figure 1: The New Workspace prompt.
Figure 2: A blank Slate.
1
Starting Slate
When Slate is launched, you will be presented with a prompt in which you can choose
a proof system for a new workspace or choose to open an existing workspace file.
This prompt is shown in Fig. 1.
In this primer, we will begin with a workspace using the propositional calculus,
so select Propositional Calculus at the prompt, and press OK. Slate will open an empty
workspace, a blank slate1 in which arguments will constructed. The workspace will
eventually contain logical and meta-logical objects (formulae, proofs, models, &c.)
and links between them (premise citations, &c.).
1 We
stopped apologizing for this pun long ago.
1
1.1
Putting Formulae in the Workspace
Although Slate’s workspace can hold a number of different kind of things, formulae
are the most important of these, and will be present almost every time Slate is used.
To add a formulae to Slate, right-click2 anywhere in the workspace and select New
Formula, or select New Formula from the Edit menu.
A dialog will appear, and ask you to complete enough information to place a
formulae on the workspace. The Formula field must be filled in with text conforming
to Slate’s input syntax, a parenthesized, prefix syntax for formulae. This syntax is
summarized in Table 1. The whole process is shown in Fig. 3. If you know in advance
what rule will be used to justify the formula, it can be selected now, but the rule can
also be changed later, so it’s not all that important what rule is selected now.
Terms
Standard Syntax
Slate Syntax
Variables and Constants
Compound Terms
x , y , z , . . . , a, b, c, . . .
f (. . . )
x, y, z, . . . , a, b, c, . . .
(f ...)
Formulae
Standard Syntax
Slate Syntax
Propositional Variables
Atomic Formula
Equation
Negation
Conjunction
Disjunction
Conditional
Biconditional
Universal
Existential
Necessity
Possibility
P, Q, R, . . .
R(. . . )
P, Q, R, . . .
(R ...)
(= τ1 ...τn )
(not φ )
(and φ1 ... φn )
(or φ1 ... φn )
(if φ ψ)
(iff φ ψ)
(forall x φ )
(exists x φ )
(nec φ )
(pos φ )
τ1 = · · · = τn
¬φ
φ1 ∧ . . . ∧ φn
φ1 ∨ . . . ∨ φn
φ →ψ
φ ↔ψ
∀x φ
∃x φ
ƒφ
◊φ
Table 1: Slate’s input syntax.
1.2
Removing Formulae from the Workspace
Formulae can be removed from the workspace by right clicking and selecting Delete
Formula, as shown in Fig. 4, or by selecting the proposition and selecting Delete
Formula from the Edit menu. Multiple formulae may be deleted at once in the same
manner. In addition, keyboard shortcuts are defined for quickly deleting formulae
from the workspace.
2 On
OS X with a single button mouse, click while holding Control.
2
Figure 3: Adding a formula to the workspace by right-clicking on the workspace,
selecting New Formula, and entering a formula in Slate’s input syntax. The OK button
is not enabled until the input text is complete and correctly formed. The new formula
appears on the Slate workspace.
3
Figure 4: Remove a formula from the workspace by selecting Delete Formula from its
context menu.
1.3
Connecting Formulae
An argument is not simply a collection of disconnected formulae standing in no relation to each other; we establish formulae by appealing to other established formulae
and well-defined rules of inference. Thus, we need to add and remove connections
among formulae in the workspace.
When a formula in the workspace is selected, clicking on other formulae in the
workspace while holding the Alt key3 will add the latter as a premise of the former.
This process is shown in Fig. 5.
To remove a premise from a conclusion, select the conclusion formula, and click
on the conclusion to remove while holding the Alt key. This process is shown in Fig. 6.
1.4
The Appearance of Formulae
You may have noticed by now that some things in the workspace appear in different
colors, for instance, the green check marks ( ) and red X’s ( ) in Fig. 5, or that lines
appear in different colors and thicknesses. These visual properties of formulae and
argument links give valuable information about the proof structures in the workspace.
We now examine formulae in the workspace in detail, referring to Fig. 7.
!
1.4.1
%
Formula Identifiers
Each formula in the workspace has an identifier which is specified in the Name field
of the new formula prompt or, if left unspecified, is generated automatically by Slate.
In Fig. 7, Slate has automatically assigned the identifier 1 to P while the name “Queue”
3 Alt
is also called Option on OS X.
4
Figure 5: After adding the sentences P and Q to the workspace as assumptions and
P∧Q, citing the ∧ introduction rule, we need to connect the conclusion to its premises.
We select the conclusion, P ∧ Q and then, holding Alt, click on the premises P and Q.
Figure 6: To remove R from the premises of P ∧ Q, select P ∧ Q and click on R while
holding the Shift key.
5
Figure 7: A small argument illustrating various graphical properties of formulae in
the workspace.
has been manually specified for Q. Formulae identifiers appear in each formula’s list
of in-scope assumptions. For instance, since P ∧ Q is in the scope of the assumptions
P and Q, its list of in-scope assumptions is {1, Queue}.
1.4.2
Rule Correctness Indicators
Each formula in the workspace is justified by some particular inference rule. If the
formula has premises, then the inference rule justifying the formula appears in a box
on the link connecting the formula to its premises. If the formula has no premises,
the rule appears within the formula node. To the right of the inference rule, either
a green check mark or red X appears, indicating whether the formula is correctly
justified by the inference rule the formula’s premises. For instance, in Fig. 7, P is
correctly justified by Assume, and P ∧ Q is incorrectly justified by ∧ elimination.
1.4.3
Justification and Link Color
The links in Fig. 7 appear in two thicknesses and two colors: the link connecting
P ∧ Q to its premises is bold and black; the link connecting (P ∧ Q) ∨ R to its premise
is bold and blue; and the link connecting Q → ((P ∧ Q) ∨ R) to its premise is thin and
black. When one or more formulae in the workspace is selected, the links of the entire
argument structure supporting the selected formulae is displayed with bold links.
In large argument structures this can help in tracing arguments back to their roots.
When one or more formulae in the workspace is selected, the links of the selected
6
Figure 8: In the modal logic K, formulae 2 and 3 may not serve as ultimate conclusions
in a proof as their necessity counts are neither 0 nor ∞. To indicate this, these
formulae are drawn with a dashed border.
formulae to their premises are drawn in blue (and are thick, since they are part of the
argument structure supporting the selected formulae). This again can help in tracing
conclusions back to their premises in large argument structures.
1.4.4
Formula Assumptions
Each formula is within the scope of some set of assumptions. This set of assumptions
is automatically determined by Slate, and when it is non-empty, the identifiers of the
in-scope assumptions are shown within the formula’s node. For instance, formulae
3 and 4 in Fig. 7 are within the scope of formulae 1 and “Queue.” In addition to
displaying the identifiers of a formula’s in-scope assumption in the formula’s node,
when formulae are selected in the workspace, their assumptions are drawn with a
red double-lined border. Since formula 4 is selected and its assumptions are 1 and
“Queue,” the formula nodes of 1 and “Queue” are drawn with the red double-lined
borders.
1.4.5
Improper Conclusions
In some proof systems, certain formulae may arise that would not be proper conclusions of a proof. For instance, in the modal logic K, only a formula whose necessity
count4 is 0 or ∞ may serve as a conclusion of proof. In Fig. 8, the formulae P and
P ∨ Q have necessity count 1, and so cannot be the final conclusion of a K proof. This
is indicated by their dashed border.
2
Summary of Proof Systems
Slate supports a number of proof systems each of which is characterized by the
type of formula that it accepts and by its set of inference rules. The full details of
these proof systems are covered elsewhere, but we provide here a listing of the proof
systems that Slate supports ‘out of the box,’ and their formulae and inference rules.
4 Necessity counting in modal logics is discussed elsewhere. Here it suffices to know that a necessity
count is a non-negative integer or ∞.
7
The input syntax for formulae is given in Table 1, and is consistent throughout the
proof systems in Slate summarized here.
2.1
Propositional Calculus
The formulae of the propositional calculus are propositional variables and formulae
built up from them using the boolean connectives ∧, ∨, →, ↔, and ¬.
The rules of the propositional calculus are Assume, introduction and elimination
rules for each of the connectives, PC `, and PC |=.
For most rules of the propositional calculus, the in-scope assumptions of the
conclusion of a rule are simply the union of the in-scope assumptions of the premises.
For rules where this is not the case, we use the notation Γ ` P to indicate that P is in
the scope of assumptions Γ. We will use the notation Γ, Σ as shorthand for Γ ∪ Σ, and
Γ, Q for Γ, {Q}.
2.1.1
Assume
{P} ` P
Assume
1. P
{1} Assume !
Figure 9: An assumption introduced by Assume.
2.1.2
Conjunction Introduction
From P1 , . . . , Pn , under assumptions Γ1 , . . . , Γn , respectively, P1 ∧ . . . ∧ Pn may be
inferred under the assumptions Γ1 , . . . , Γn .
Γ1 ` P1 . . . Γn ` Pn
∧ intro
Γ1 , . . . , Γn ` P1 ∧ . . . ∧ Pn
2.1.3
Conjunction Elimination
From a conjunction P1 ∧ . . . Pn , any individual conjunct Pi may be inferred. Pi is in
the scope of the same assumptions that the conjunction P1 ∧ . . . ∧ Pn was.
P1 ∧ . . . ∧ Pn
∧ elim
Pi
8
1. P ! Q
{1} Assume !
! elim !
! elim !
2. Q
3. P
{1}
{1}
! intro !
4. Q ! P
{1}
Figure 10: Conjunction introduction and elimination are used to prove Q ∧ P from
P ∧ Q.
2.1.4
Disjunction Introduction
From Pi the disjunction P1 ∨ . . . ∨ Pn may be inferred.
Pi
P1 ∨ . . . ∨ Pn
2.1.5
∨ intro
Disjunction Elimination
This rule is also known as proof by cases. From a disjunction P1 ∨ . . . ∨ Pn under
assumptions Γ0 and n proofs of some conclusion Q from assumptions Γi , Pi , infer Q
under the assumptions Γ0 , . . . , Γn .
Γ0 ` P1 ∨ . . . ∨ Pn
Γ1 , P1 ` Q . . .
Γ0 , . . . , Γn ` Q
Γn , Pn ` Q
2. P
4. Q
{2} Assume !
{4} Assume !
! intro !
! intro !
1. P ! Q
3. Q ! P
5. Q ! P
{1} Assume !
{2}
{4}
∨ elim
! elim !
6. Q ! P
{1}
Figure 11: The disjunction introduction and elimination rules are used to prove Q ∨ P
from P ∨ Q.
9
2.1.6
Conditional Introduction
From Q under the scope of assumptions Γ, P, infer P → Q under the scope of assumptions Γ.
Γ, P ` Q
→ intro
Γ`P→Q
2.1.7
Conditional Elimination
This rule is also known as modus ponens. From P and a conditional P → Q, infer Q.
P P→Q
→ elim
Q
1. P ! Q
2. P
{1} Assume !
{2} Assume !
! elim !
3. Q
{1,2}
! intro !
4. (P ! Q) ! Q
{2}
! intro !
5. P ! ((P ! Q) ! Q)
Figure 12: Conditional introduction and elimination are used in proving the theorem
P → ((P → Q) → Q).
2.1.8
Biconditional Introduction
Γ, P ` Q Σ, Q ` P
↔ intro
Γ, Σ ` P ↔ Q
2.1.9
Biconditional Elimination
P P↔Q
↔ elim
Q
Q P↔Q
↔ elim
P
10
1. P ! Q
2. P
4. Q
{1} Assume !
{2} Assume !
{4} Assume !
! elim !
! elim !
3. Q
5. P
{1,2}
{1,4}
! intro !
6. Q ! P
{1}
Figure 13: Biconditional introduction and elimination rules are used to prove Q ↔ P
from P ↔ Q.
2.1.10
Negation Introduction
If under the assumption of some formula φ both ψ and ¬ ψ can be derived, derive
¬ φ from the other assumptions from which ψ and ¬ ψ followed.
Γ, φ ` ψ Σ, φ ` ¬ ψ
¬ intro
Γ, Σ ` ¬ φ
2.1.11
Negation Elimination
If under the assumptions of some formula ¬ φ both ψ and ¬ ψ can be derived, derive
φ from the other assumptions from which ψ and ¬ ψ followed.
Γ, ¬ φ ` ψ Σ, ¬ φ ` ¬ ψ
¬ elim
Γ, Σ ` φ
1. A ! B
3. A
2. ¬B
6. ¬C ! B
7. ¬C
{1} Assume !
{3} Assume !
{2} Assume !
{6} Assume !
{7} Assume !
! elim !
! elim !
4. B
8. B
{1,3}
{6,7}
¬ intro !
¬ elim !
5. ¬A
9. C
{1,2}
{2,6}
Figure 14: Negation introduction and elimination rules.
11
2.1.12
Substitution
This rule justifies a formula produced by uniform substitution of propositional variables of a theorem. (A theorem must be in the scope of no assumptions.)
;`φ
Substitution
;`φσ
1. P
{1} Assume "
! intro "
2. P ! Q
{1}
" intro "
3. P " (P ! Q)
Substitution !
5. A ! B
Substitution "
{1}
4. A " (A ! B)
Figure 15: Substitution justifies A → (A ∨ B) from P → (P ∨ Q) since the latter is a
theorem. A ∨ B does not follow from P ∨ Q by Substitution, however, for the latter is
not a theorem.
2.1.13
PC ` and PC |=
These rules justify a conclusion from a set premises if the conclusion is derivable
from or a consequence of the premises, respectively.
P1 . . . Pn
PC |=
Q
P1 . . . Pn
PC `
Q
2.2
Non-Quantified Predicate Calculus
The non-quantified predicate calculus is similar to the propositional calculus, but has
different atomic formulae, and adds several rules. In the predicate calculus, a term is
a variable, constant, or the application of a function symbol to one or more terms,
and an atomic formula is a propositional variable, an equation, or an application of a
predicate or relation symbol to one or more terms.
The non-quantified predicate calculus has introduction and elimination rules for
equality, an enhanced version of Substitution, and an provability rule FOL `.
12
Figure 16: When PC ` is used to justify an inference, the resulting proof can be viewed
by selecting View Artefact from the formula’s context menu. This resolution-style
proof was produced by SNARK when PC ` was used to justify ¬ P from (P → Q) ∧ (Q →
R) ∧ ¬ R.
Figure 17: When PC |= is used to justify an inference and the conclusion is not a
consequence of the premises, a counterexample can be viewed by selecting View
Artefact from the formula’s context menu. This counterexample was produced when
PC |= was incorrectly used to justify P from (P → Q) ∧ (Q → R) ∧ ¬ R.
2.2.1
= Introduction
For any term τ, = introduction may be used to introduce the equation τ = · · · = τ.
τ = · · · = τ = intro
2.2.2
= Elimination
Given an equation t 1 = · · · = t n and a formula φ, = elimination may be used to infer
any variant φ 0 of φ in which any t i has been replaced by any t j .
t1 = · · · = tn
φ0
2.2.3
φ
= elim
Substitution
This rule is modified to allow uniform substitution for any names (variables, constants, function symbols, and relation symbols) in theorems.
13
FOL `
2.2.4
This rule is used to justify a conclusion which is derivable using the rules of first-order
logic from its premises. As with PC `, proofs may be examined by selecting View
Artefact from a correctly justified formula’s context menu.
1. a = b
2. P(a) ! ¬P(a)
PC ! !
{1} Assume !
= elim !
3. P(b) ! ¬P(b)
{1}
5. b = b = b
= intro !
Substitution !
4. R(f(c)) ! ¬R(f(c))
Figure 18: Use of equality introduction and elimination and the modified Substitution rules.
2.3
First-Order Logic
The formulae and rules of first-order logic are just those of the non-quantified predicate calculus along with universal and existential quantifications and introduction
and introduction and elimination rules for these quantifiers.
2.3.0.1 Universal Introduction From a formula φ universal introduction may
be used to infer ∀x φ, provided that x does not appear free in any of the in-scope
assumptions of φ.
Γ`φ
∀ intro
Γ ` ∀x φ
2.3.0.2 Universal Elimination From the universal quantification ∀x φ, any instance of φ may be inferred wherein x is uniformly replaced by some term t , provided
that no name free in t becomes bound in the process.
∀x φ
∀ elim
φ{x → t }
2.3.0.3
Existential Introduction
φ
∃ intro
∃x φ
2.3.0.4 Existential Elimination From an existential ∃x φ depending on assumptions Γ and from ψ depending on assumptions Σ an instance of φ whose witness
does not appear free in ψ, infer ψ in the scope of Γ, Σ.
Γ ` ∃x φ
Σ, φ{x → t } ` ψ
∃ elim
Γ, Σ ` ψ
14
4. #x P(x)
5. P(b)
{4} Assume !
{5} Assume !
" intro !
1. P(a) " ¬P(a)
PC ! !
6. P(b) " Q(b)
! intro !
2. !x (P(x) " ¬P(x))
{9} Assume !
# intro !
FOL ! !
7. #y (P(y) " Q(y))
10. Q(a)
{5}
{9}
! elim !
3. P(b) " ¬P(b)
9. P(a) $ !x (P(x) % Q(x))
{5}
# elim !
8. #y (P(y) " Q(y))
{4}
Figure 19: Universal and existential introduction and elimination rules along with
FOL `.
2.4
Modal Logics
Slate supports six of the most common modal logics, K, T (sometimes called M),
S4, and S5. Slate’s proof systems for these logics are mostly in the same style, and
introduce a necessity-count associated with each formula in the workspace (much
like the propositional calculus and its derivatives have a notion of in-scope assumptions). The differences between the modal proof systems is primarily in the way that
necessity counts are computed. For all the modal logics, the formulae are those of
the propositional calculus along with those formed by necessity and possibility.
2.4.1
Necessity Counting
In the modal proof systems in Slate, each formula is a associated with a necessity
count which captures ‘how necessary’ the formula is. The necessity count determines
how many times necessity introduction may be applied to the formula. In presenting
the modal rules, we indicate that φ has necessity count n by writing φ (ƒ n ). Necessity
counts are either a non-negative integer or ∞, and we adopt the convention that
∞ − 1 = ∞ + 1 = ∞.
By default, a formula justified by some rule R, unless R is one that affects the
necessity count (necessity introduction and elimination), the necessity count of the
formula is the minimum of the necessity counts of its nearest ‘ancestors’ not in the
scope of any assumption discharged by R, where a branch with no such ancestor
count as ∞. This definition is likely not at all transparent, and an example will help
to make it clear.
Consider the argument structure in Fig. 20. Q is derived using conditional elimination from P and P → Q. Conditional elimination discharges no assumptions, so
the nearest ‘ancestors’ not in the scope of any discharged assumption are simply
the premises P and P → Q. The necessity count of P is 1 and of P → Q is 2, and
15
the minimum of 1 and 2 is 1, so the necessity count of Q is 1. Formula justified by
rules that do not discharge assumptions, and which are not necessity introduction
or elimination have as their necessity count the minimum of the necessity count of
their premises.
When ƒ P → Q is inferred from P by conditional introduction, the assumption
ƒ P is discharged. As a result, the ‘nearest’ ancestors are formula number 5, Pl i f Q
with an assumption count of 2, and from the branch starting from the assumption
ƒ P there is no nearest ancestor, so we take the value ∞. The minimum of ∞ and 2 is
of course 2 and this is the necessity count of ƒ P → Q. Formulae justified by rules that
discharge assumptions get their necessity counts by following the argument backward
and finding the nearest ancestors not in the scope of a discharged assumption. Any
branch which is completely eliminated contributes ∞.
As a special case assumption discharging, correctly justified formulae in the scope
of no assumptions (which are theorems) will always have necessity count ∞.
3. !!(P ! Q)
{3} Assume !
! elim !
4. !(P ! Q)
{3} 1 !
1. !P
{1} Assume !
! elim !
! elim !
2. P
5. P ! Q
{3} 2 !
{1} 1 !
! elim !
6. Q
{1,3} 1 !
! intro !
! intro !
7. !P ! Q
{3} 2 !
8. !!(P ! Q) ! Q
{1} 1 !
! intro !
! intro !
9. !!(P ! Q) ! ( !P ! Q)
"!
10. !P ! ( !!(P ! Q) ! Q)
"!
Figure 20: An argument illustrating the subleties of necessity counting in light of
assumption discharging rules.
16
2.4.2
Modal Rules
We will first present the basic forms of the modal rules, and we will then continue to
describe the slight variations in rules and in necessity counting that distinguish the
various modal systems.
2.4.2.1 Necessity Introduction From a formula φ with a non-zero necessity count
necessity introduction permits deriving ƒ φ with a necessity count one less than that
of φ.
φ (ƒ n )
ƒ intro
φ (ƒ n − 1)
2.4.2.2 Necessity Elimination From a formula ƒ φ with a necessity count n , infer
φ with necessity count one greater than n .
ƒ φ (ƒ n )
ƒ elim
φ (ƒ n + 1)
2.4.2.3 Possibility Introduction
cessity count.
From a formula φ, infer ◊ φ with the same neφ
◊φ
◊ intro
2.4.2.4 Possibility Elimination The structure of possibility elimination is rather
like first-order logic’s existential elimination. From a possibility ◊ φ and a derivation
of ψ in the scope of an assumption φ, where the conditional φ → ψ, were it derived
by conditional introduction, would have an infinite necessity count, derive ◊ ψ.
◊φ ψ
◊ elim
◊ψ
Possibility elimination is intended to the capture line of reasoning that says “φ is
possible, and ψ necessarily implies φ, therefore ψ is possible.” The actual form
of possibility elimination presented here removes the need to derive the necessary
conditional ƒ(ψ → φ), but requires the same conditions.
2.4.2.5 Modal Dualities
other as follows.
The modalities ƒ and ◊ can be defined in terms of each
◊φ
≡
¬ƒ¬φ
ƒφ
≡
¬◊¬φ
The Modal Dualities rule allows inferring any formula from a premise that is equivalent modulo these definitional equivalents (and double negations).
17
1. ""P
11. !P
{1} Assume !
{11} Assume !
" elim !
8. P
{8} Assume !
6. P
! intro !
{6} Assume !
2. "P
{1} 1 "
9. P ! Q
! intro !
" elim !
! intro !
3. P
4. "P ! Q
{1} 1 "
{1} 2 "
12. "P " ¬!Q
{12} Assume !
{8}
Modal Dualities !
7. !P
{6}
! elim !
13. ¬!¬P " "¬Q
{12}
10. !(P ! Q)
" intro !
{11}
5. "( "P ! Q)
{1}
Figure 21: The modal rules.
2.4.3
Modal Proof Systems
2.4.3.1 T The modal system T is the simplest modal system. The modal rules all
behave exactly as specified above; there are no special cases in the application of the
rules or in necessity counting. All formulae are proper conclusions, regardless of their
necessity count. T has the property that for any formula φ, ƒ φ → φ is a theorem.
1. !!
{1} Assume !
! elim !
2. !
{1} 1 !
Figure 22: A proof in T of the formula ƒ φ →φ. This would not be a proof in K, for in K
proper conclusions must have a necessity count of 0 or ∞, but here φ has a necessity
count of 1.
2.4.3.2 K K is more restrictive than T. The propositional inference rules may only
be applied to formula in T that have the same necessity count, and only formulae
with necessity counts of 0 or ∞ are proper conclusions. Though K is rather restrictive,
it has the property that every theorem is necessary (often known as the rule of necessitation), and the property that ƒ(A → B)→(ƒ A →ƒ B) (often known as distributivity).
2.4.3.3 S4 S4 is like T, but any formula whose primary logical system is ƒ, i.e.,
any formula ƒ φ is automatically assigned an infinite necessity count. This property
18
1. !(A ! B)
3. !A
{1} Assume !
{3} Assume !
! elim !
! elim !
2. A ! B
{1} 1 !
{3} 1 !
9. P # ¬P
4. A
PC " ! " !
! elim !
! intro !
! intro !
5. B
{1,3} 1 !
6. !B
7. !A ! !B
{1} 1 !
{1,3}
! intro !
10. !(P # ¬P)
"!
! intro !
8. !(A ! B) ! ( !A ! !B)
"!
Figure 23: K proofs of necessity distributivity and of necessitation.
means that S4 admits a proof of the formula
ƒ φ → ƒ ƒ φ.
2.4.3.4 S5 S5 is just like S4, except that all modal formulae, i.e., necessities and
possibilities, are assigned infinite necessity counts. This means that in addition to
having ƒ φ → ƒ ƒ φ as a theorem, S5 also has
◊ φ → ƒ ◊ φ.
19
Index
= introduction, 13
∃ elimination, 14
∃ introduction, 14
∀ elimination, 14
∀ introduction, 14
∧ elimination, 8
∧ introduction, 8
→ elimination, 10
→ introduction, 10
↔ elimination, 10
↔ introduction, 10
ƒ counting, 15
ƒ elimination, 17
ƒ introduction, 17
¬ elimination, 11
¬ introduction, 11
∨ elimination, 9
∨ introduction, 9
◊ elimination, 17
◊ introduction, 17
,6
,6
countermodel, 13
detachment, 10
disjunction elimination, 9
disjunction introduction, 9
distributivity
of ƒ, 18
elimination rules
biconditional, 10
conditional, 10
conjunction, 8
disjunction, 9
existential, 14
necessity, 17
negation, 11
possibility, 17
universal, 14
equality introduction, 13
existential elimination, 14
existential introduction, 14
%
!
first-order logic, 14
FOL `, 14
formulae
adding, 2, 3
appearance, 4
assumptions, 7
border, 7
identifiers, 4
removing, 2, 4
Assume, 8
assumptions, 7
in-scope, 7
biconditional elimination, 10
biconditional introduction, 10
border
dashed, 7
green
!, 6
check mark, 6
colors
green, 6
red, 6
conclusions
improper, 7
conditional elimination, 10
conditional introduction, 10
conjunction elimination, 8
conjunction introduction, 8
counterexample, 13
improper conclusions, 7
in-scope assumptions, 7
input syntax, 2
introduction rules
biconditional, 10
conditional, 10
conjunction, 8
disjunction, 9
equality, 13
20
existential, 14
necessity, 17
negation, 11
possibility, 17
universal, 14
universal elimination, 14
universal introduction, 14
%, 6
K, 18
link
black, 6
blue, 6
thick, 6
thin, 6
M, 18
Modal Dualities, 17
modal logics, 15–19
modus ponens, 10
necessitation, 18
necessity counting, 15
necessity elimination, 17
necessity introduction, 17
negation elimination, 11
negation introduction, 11
non-quantified predicate calculus, 12–14
PC |=, 12
PC `, 12
possibility elimination, 17
possibility introduction, 17
premises
adding, 4
removing, 4
proof by cases, 9
propositional calculus, 8–12
red
%
border, 7
,6
S4, 18
S5, 19
SNARK, 13
Substitution, 12, 13
T, 18
21
Related documents