WORKING WITH WFF'S IN SYMBOLIC LOGIC

Let's talk more about well-formed formulas (or legal strings) in symbolic logic. One thing to note right off is that there is a fair amount of variation in the symbolization as well as in the proof systems used in different textbooks. What I have tried to do is keep things as simple as possible while working with the constraints of a normal keyboard. For the most part what I have here matches up with the system presented in the Schaum book that you can use to go along with these "lectures."  For just more on the general background of symbolic logic you might want to look at some of the things I have about Aristotle and Bertrand Russell (use the index to the list of titles on the SLIPS home page to link to these). (For a more intense introduction, you might also read an article about Russell in the online Stanford Encyclopedia of Philosophy.

We have used symbolic logic to represent complete sentences (such as "Jack is a student") either in in what's called a propositional or sentential calculus or in a predicate calculus. Here's the difference: in a propositional calculus we would have single letters for the sentences, so that the letter J could stand for the whole idea of my example sentence. In a predicate calculus we can go inside our ideas more by having the combination of letters Sj ("S of j"), which tells us that we are predicating being a student of Jack. Oh, you did note that we are going against the usual way we write proper names by capitalizing the student idea but using lower case for Jack's name.

Most textbooks keep these notational systems quite separate, with predicate calculus coming after quite a bit of material on the propositional calculus. (By the way, do not let that word "calculus" unnerve you. Just remember that folks like Bertrand Russell were first off mathematicians). I prefer following Russell's own presentation in which he starts off with both at the same time.

In symbolic logic we use the entire alphabet and ordinarily a collection of other symbols that express the relationships we have in mind. Also, ordinarily we do the same thing that you should be used to from grade school arithmetic: we use what's called an infix system so that the kind of operation (such as addition in math) is indicated by a connective placed between the elements (the variables) we are working with. For instance, we will write 2+3 for addition. In symbolic logic we can write J & W to express the relationship we have in mind when we say "Jack is a student and he works hard"--or we can also write Sj & Wj to do the same job. (Because I can use different colors on this page I won't bother with any quotation marks, and for simple combinations I will not put everything inside parentheses. I'll just mention now that parentheses or brackets or whatever are considered punctuation and not really symbols in the system.)

When I wanted to develop software to do certain things in symbolic logic I found it much easier to make use of a postfix system (for instance, having 2 3 +). The key reason is that using an infix system creates ambiguity unless I show how I mean to group my symbols. For instance, I cannot just write 2+3x4 without you having to ask whether I mean to add 2 and 3 before multiplying by 4 (which would give us 20 as an answer) instead of adding 2 and the product of 3 and 4 (which would give us 14). With an infix system I would have to write either (2+3)x4 or 2+(3x4). With a postfix system I can get by with fewer characters by writing either 2 3 + 4 x or 2 3 4 x + since I keep reaching backward from the operator.

What I also did was use other letters to express the operations themselves. This meant that I reserved certain letters for propositional variables (P,Q,...) and others for predicate variables (F,G,...) so that I would have wff's such as PQA or FjGjA to do the same job as J & W or Sj & Wj. This meant indicating a code for what letters such as P and F would represent.

Now what we need to do to understand what counts as a wff in symbolic logic

is lay out the symbols we'll use and the rules for their combination.

All letters of the alphabet will be variables. In the propositional calculus I'll follow an old convention of using lower case p's and q's for general forms and upper case letter when we are using symbolic logic to express particular sentences. In the predicate calculus we will reserve the last letters of the alphabet for unknown individual names ("Mr. X" instead of Jack, only this will be when we have an expression such as Ex(Sx) to say that there is a student). With a normal keyboard I cannot rotate A's and E's as is done in most texts to indicate what we call quantifiers, but there will not be any confusion if you remember to use a parenthesis and keep in mind that the "x" cannot be used away from such quantifiers.

We will have a lot to say about quantifers later on, so for the present let's keep things simple by looking just at expressions such as p & q, J & W, and Sj & Wj.

There are five standard connectives or operators expressing possible relationships.

One is the tilde (~) to express negation, so that ~J could stand for "It's false that John is a student" and ~(J & W) for "It's false that John is a student who works hard" (meaning the door is open to one but not both of the possibilities being true).

We use the ampersand (&) to express the relationship of conjunction (what we mean when we say "and" or "but" or even "although").

The "vel" (v) expresses what we call inclusive disjunction, how we use "or" in a sentence such as "You have either cream or sugar in your coffee" (at least one is true but both could be true).

For implication or a conditional we use an arrow pointing always to the right (->). For instance, J -> W could represent "If Jack is a student then he is working hard" as well as "Jack is a student only if he is working hard."

We can have mutual implication or a biconditional with (<->) so that J <-> W could stand for "Jack is a student if and only if he is working hard."

The most important thing to remember is that a well-formed formula (wff) must show grouping when this is needed. There is no problem with p & q & r, but p & q v r is not an acceptable combination. Instead we would have to use either (p & q) v r or p & (q v r).

In predicate logic we always tie together the predicate and the name. SWj and Sdj could not be used to express the ideas that Jack is a student who works hard or that Dick and Jane are both students. Instead we would use Sj&Wj for the first and Sd&Sj for the second. (You'll notice that I sometimes put extra spaces in my typing and sometimes not. I put the extra spaces for appearance only.)

We'll work on translations later, so for the present I just want you to concentrate on what would and what would not be a wff.

So here's a quick exercise. Rule out any combinations of letters that would not be wff's in the system or game I am proposing to you.

1. p & -> q

2. p & ~ q

3. -> q v r

4. p -> q v r

5. ~(p -> (q & r)

6. J ~ & W

7. ~ J & W

8. ~ ~ J v ~ (W v G)

9. Wx

10. W~j

11. ~Wj

12. W(d v j)

answers: You will keep 2,7,8 and 11. I think you should easily see what's wrong with 1,3,4 and 6, but for 5 you have to remember that we will need just as many right-hand parentheses as there are left-hand parentheses. In 9 we have the indefinite variable without a quantifier. In 10 we cannot have something such as non-Jack and in 12 we cannot use more than one name for a predicate in the way we have it (we would use Wd v Wj).