Take the 2-minute tour ×
Computer Science Stack Exchange is a question and answer site for students, researchers and practitioners of computer science. It's 100% free, no registration required.

From Wikipedia:

A logical system or, for short, logic, is a formal system together with a form of semantics, usually in the form of model-theoretic interpretation, which assigns truth values to sentences of the formal language, that is, formulae that contain no free variables. A logic is sound if all sentences that can be derived are true in the interpretation, and complete if, conversely, all true sentences can be derived.

Does a logical system have semantics?

Does the assignment of truth values to sentences of the formal language count as the semantics of a logical system? I feel it provide little interpretation of what the sentences of the formal languages mean.

share|improve this question
Of course! Otherwise it would just be a bunch of strings. –  Raphael Jul 16 '14 at 14:36
a formal system is not just a bunch of strings. do you claim it to have semantics? –  Tim Jul 16 '14 at 14:45
That is what I wrote. –  Raphael Jul 16 '14 at 14:52
I am not sure what you mean by "that is what I wrote", I may post a question asking if a formal system has semantics, because I think it doesn't –  Tim Jul 16 '14 at 15:10
@Tim If a formal system did not have semantics, it would just be a bunch of strings. A formal system contains a bunch of strings but it is not just a bunch of strings: therefore, it must have semantics. –  David Richerby Jul 16 '14 at 19:33

3 Answers 3

Semantics of a logic describe how to compute the truth value of an expression, possibly given some interpretation. For example, one rule would say that an expression $\varphi \land \psi$ is true iff both $\varphi$ and $\psi$ are true, and another would say that $\forall x \varphi(x)$ is true if for all $x$ in the domain of discourse $D$ (which forms part of the interpretation).

Sometimes the semantics are not obvious – for example, there are different semantics for modal logic. Sometimes we are interested in non-standard semantics, such as the semantics of bounded arithmetic described in Forcing with random variables.

share|improve this answer
By the way, "semantics" is singular, just like "mathematics" and "physics". (Unless you have more than one of them, of course.) –  David Richerby Jul 16 '14 at 9:33
According to Merriam–Webster, it's noun plural but singular or plural in construction. –  Yuval Filmus Jul 16 '14 at 13:34

The answer to your literal question, "Does a logical system have semantics?" is "Obviously, yes. The definition you quoted says so!" So I figure that isn't what you're actually asking.

I think the root of your misunderstanding is the word "formal". In this context, it doesn't mean "rigorous", the opposite of "hand-wavy"; it means "depending on form". That is, the truth of a sentence of, say, propositional logic depends only on the form (or shape, if you like) of the sentence. $P\wedge Q$ is true if, and only if the propositions $P$ and $Q$ are both true. It doesn't depend on what, if anything, those propositions represent in the real world: if $P$ is any true thing and $Q$ is any true thing, then $P\wedge Q$ is true.

Consider the formula $\text{I am a human} \wedge \text{My mother is a giraffe}$. Reasoning informally (i.e., not based on the form of the sentence), one would say that it is impossible for a human to have a giraffe as a mother so the sentence must be false. Reasoning formally, one would determine whether the propositions $\text{I am a human}$ and $\text{My mother is a giraffe}$ are true individually, by looking at their interpretation, which assigns each of them a truth value. Then, one would combine those truth values using the semantics of the $\wedge$ operator.

But let's go back to the informal claim that the human/giraffe sentence must be false. One property that "reasonable" logics have is that renaming variables makes no difference, as long as you don't make two different variables have the same name. You're familiar with this from programming languages and mathematics: if you take a program and rename all the variables, the program does exactly the same thing; in $\lambda$-calculus, this is called $\alpha$-equivalence. So, since propositional logic is eminently reasonable, I could rename the second proposition in that sentence to be $\text{My mother is a human}$. Formally, the sentence is unchanged but now, reasoning informally, one would say that the sentence must be true! Taking things a little farther, one could even make the proposition $\text{I am a human}$ stand for the real-world fact "It is sunny today". That would be a stupid thing to do but, formally ("shape-wise"), it's perfectly valid. Just like it's perfectly valid but stupid to write a program that says something like

colour = "Hello, world!";
message = green;
setColour (message);
print (colour);

or to write "Let $v$ be a graph containing a vertex $G$."

Summary / tl;dr. Yes, logics do have semantics. The semantics of a logic tells you how to determine whether a formula is true or false, based only on the syntactic structure of the formula and some interpretation that states the truth values of the most simple formulas (propositions in propositional logic, atomic formulas in first-order logic, and so on). That's all the semantics of the logic does: in particular, it has nothing to do with assigning "real world" meaning to the variables and constructs in the formula. Semantics depends only on the form ("shape") of the formula; in particular, it doesn't depend on the names chosen for the variables. That's why the systems are called formal.

share|improve this answer
Thanks. (1)"'reasonable' logics have is that renaming variables makes no difference," do you mean any logical system has this property, or only some logical systems have? If latter, what is such a reasonable logical system called/named? (2) If further adding to a logic system another interpretation of each sentence, e.g. those informal claims you gave, what is such a logical system called/named? –  Tim Jul 16 '14 at 16:54
(1) It's not strictly required but logicians mostly restrict attention to logical systems called "regular logics", which have this property and a few other sensible ones (e.g., the semantics of a formula can't depend on any predicate that doesn't occur in the formula). Anything else is messy. (2) You could achieve something like this by restricting your attention to certain interpretations, such as those where the predicates $\text{I am a human}$ and $\text{My mother is a giraffe}$ are not simultaneously true. But you'd have to be very careful about what renaming you allow, in that case. –  David Richerby Jul 16 '14 at 17:45

Unless I've totally misunderstood you, there seem to be two meanings of semantics here:

(1) Semantics in formal logic, which is precisely what the definition you give declares it to be, ie correspondence between values and propositions of the system.

(2) Semantics in semiotics, ie 'meaning' in the sense of correspondence between natural language symbols and their denotata.

Of course, while similar in some respects, the two are quite different -- and this seems to be what is concerning you -- ie, how we make the 'link' between our formal system and our natural language interpretation of it, or making correspondences between propositions in a logical system and states of 'the world'. That is a deep question in semiotics (and even philosophy of science), and particular to neither logical nor linguistic semantics.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.