This is an excerpt from Alfred Tarski's Introduction to Logic and the Methodology of Deductive Sciences:

As variables we employ, as a rule, selected letters, e.g. in arithmetic the small letters of the English alphabet: "a", "b", "c", ..., "x", "y", "z". As opposed to the constants, variables do not possess any meaning by themselves. Thus, the question: does zero have such and such a property? e.g.: is zero an integer? can be answered in the affirmative or in the negative; the answer may be true or false, but at any rate it is meaningful. A question about x, on the other hand, for example the question: is x an integer? cannot be answered meaningfully. In some textbooks of elementary mathematics, particularly in the less recent ones, one does occasionally come across formulations which convey the impression that it is possible to attribute an independent meaning to variables. One might find an explanation that the symbols "x", "y", ... also denote certain numbers or quantities, not "constant numbers" however (which are denoted by constants such as "0", "1", ...), but so called "variable numbers" or "variable quantities". Statements of this kind stem out of a gross misunderstanding. The "variable number" x which one tries to envisage could not possibly have any specified property, for instance, it could be neither positive nor negative nor equal to zero; or rather, the properties of such a number would have to change from case to case, that is to say, the number would sometimes be positive, sometimes negative, and sometimes equal to zero. But entities of such a kind are not to be found in our world at all; their existence would contradict the fundamental laws of thought. The classification of the symbols into constants and variables, therefore, does not correspond to any of the familiar classifications of the numbers.

I have two questions. The first one is primary.

  1. What does he mean when he says variables do not have a meaning by themselves? Does he mean variables are completely devoid of meaning? As in we have referents for constants, but there are none for variables?

  2. What he's trying to argue with the last example of numbers- "The 'variable number' x which one tries to,..., familiar classifications of numbers"?

  • 9
    Constants are interpreted to "mean" specific objects in a domain of discourse, variables run over the entire domain and so "mean" nothing in particular. With "variable number", Tarski is essentially reprising Berkeley's critique of Locke's "idea" of a "general triangle", right and equilateral, acute and obtuse, etc., all at the same time. Such a chimera, if it could be made sense of, might presumably stand for the "meaning" of a variable. The problem is that it is incoherent.
    – Conifold
    Apr 2 at 10:04
  • 4
    Compare "x os red" with "it is read"; what does "it" mean? It depends on the context: this is what Tarksi says. Apr 2 at 10:08
  • 7
    The variable is a place holder. Without more context and definition, there is nothing that can be said about it. But in a strongly typed computer language, there are some things you can say about a variable (for example an unsigned integer). Apr 2 at 10:32
  • 2
  • 1

6 Answers 6


What does he mean when he says variables do not have a meaning by themselves? Does he mean variables are completely devoid of meaning?

I suppose he thinks of something along the lines of "while a (closed) sentence φ has a definite truth-value in a structure, a sentence with free variables φ(x) does not: it depends on a valuation/assignment of variables to elements of the structure, and as such it may be that it's true for some elements, and false for others". Of course there are some exceptions: in the language of unital rings with axioms for integral domains

∃y(xy = y) → xx = x

is always true, but that's because this formula really is the same thing as its universal closure, which is provable - or also, because it defines the set {0, 1} in every model - , and likewise more generally for the formula

x = x

What he's trying to argue with the last example of numbers- "The 'variable number' x which one tries to,..., familiar classifications of numbers"?

I really don't know, and it all seems a bit weird in light of definability

  • 2
    +1 I would say this is spot on. I'd add to it that it is the variable binding that gives the variable meaning in the vein of the semantic theory of truth. "The semantic conception of truth, which is related in different ways to both the correspondence and deflationary conceptions, is due to work by Polish logician Alfred Tarski."
    – J D
    Apr 2 at 17:04
  • Even an example like "x=x" bothers me a little; I am a bit reluctant to say it is true in the same way that "∀x (x=x)" is true. Apr 3 at 15:21
  • hi, @MishaLavrov, do you know why you feel this way?
    – ac15
    Apr 3 at 16:35
  • @ac15 I think it's more correct to say that x=x isn't something that can be true or false, because it has an undefined variable in it. (It's also worth observing that ∃x(x=x) is not a tautology.) Apr 3 at 19:27
  • 2
    @MishaLavrov - in formal logic, axioms are implicitly universally quantified. Thus in place of the "obvious" ∀x (x=x) we can freely use x=x. But this is only nitpicking... Apr 4 at 8:58

Tarski means exactly what he says: it is the fundamental idea that enables someone to "get" algebra. I still don't understand how you teach this idea. I have done some tutoring, and students either get it or they don't. All I have ever been able to do is to show them examples, and hope they will somehow infer the idea. Maybe this is linked to the way that I learned it.

I remember puzzling over this equation when I was at primary school, enter image description here (my first exposure to algebra). I had been told that a and b represented numbers, but, I wondered, which ones? I decided to experiment, maybe a=3 and b-2, and the formula worked! Was I lucky getting it the first time? I tried other values, and the formula still worked. Then I realized that the values of a and b didn't matter: that is what Tarski is saying.

  • 1
    Correct; in the above identity, variables represent generality From a logical point of view, they are universaaly quantified: "for every a,b we have that..." Apr 3 at 12:55
  • 1
    But this is not always so; in ax^2+bx+c=0 the "parameters" a,b,c, are general but the variable x is not so: the equation is not true for every value of x. Apr 3 at 12:57
  • 1
    @MauroALLEGRANZA: The trick is to understand x not as a variable, but as a formal constant from a polynomial ring.
    – Corbin
    Apr 4 at 14:55

This statement is in the context of a compositional denotational semantics of mathematical formulas. In a denotational semantics, you assign a denotation to each symbol; that is each symbol is assigned a thing that it represents. For example in [2+3=5] you can think of the brackets as quotes, and the parts have the following meanings:

  • [2], [3] and [5] represent the numbers two, three and five, respectively.
  • [+] represents a function of two arguments that returns the sum of the arguments.
  • [=] represents the relation of equality.

So, why didn't I just use quotes instead of brackets? It's because the brackets actually represent quasi-quotes, which are like quotes but they can contain meta-variables as in [A+B]. Here, the "+" is quoted, but the letters "A" and "B" are not; they are replaceable parts of the notation. [A+B] can represent "1+2" or "3+8" or "1000+1000" or anything else that fits the pattern. We need this sort of notation so that we can define the next level of semantics such as what does [A+B] mean? [A+B] denotes the result of the function [+] applied to the denotations of the arguments A and B, which we might write:

meaning([A+B]) = [+](meaning(A), meaning(B))

A denotational semantics is compositional if the whole thing can be built up like this, where the meanings of complex sentences like [1+2] are composed of the meanings of the parts.

So, with that background, I can explain what Tarski is getting at, which is: what is the denotation of a variable symbol? For example in [x+3], what is [x]? Note an important difference here: "x" is a variable of the language being defined, not a meta-variable like "A" and "B". "x" is a part of the notation itself, not a part of the notation we use in the semantic metalanguage.

So what does [x] denote? There have historically been two difference kinds of answer to this question. One kind of answer is that [x] denotes some sort of amorphous value, X, that can be anything. That is X is equal to 1 and X is equal to 2 and X is not equal to 1 and X is not equal to 2, all at the same time. Tarski is arguing that this interpretation is nonsense. It violates the law of noncontradiction among other things.

The other kind of answer is that [x] by itself denotes nothing. In this interpretation, you add complexity to the semantics to deal with [x] as a special kind of linguistic thing, not as a special kind of value. In other words, you complicate the meaning function to deal with variables rather than saying that a variable by itself denotes something.

(More correctly: denotational semantics do often work by having [x] denote something, just that if [x] represents a number, then [x] does not denote a number, it denotes a function that produces a number or something similar.)

  • 1
    Quine likes to say that a variable "ranges over" values.
    – Bumble
    Apr 2 at 17:24

In logic, variables are just placeholders, that is, references for « holes » in formulas that are « waiting to be filled ». There are rules that say that when you want to fill one hole with something, you should fill some other holes that have the same name with the same thing. There are rules that allow you to identify some variables in a formula that are said to be free, and some that are not. The « meaning » of free variables and « not free » (bound) variables, whatever this means, is different, but this is another story.

One could also argue that since logic tries to syntactically represent reasonings, nothing in logic has a meaning at all.


That is not particularly complicated. A constant (such as say pi) represents a single specific entity. A variable does not. A variable is used to formulate properties for any possible assignment of such entities. Depending on which theory you are in they can even a metatheoretical thing (in formal logic we’d even have both theoretical and metatheoretical variables). But this means that you cannot infer any meaning to a single variable symbol.

You can say ”what are the properties of pi“, but you cannot say ”what are the properties of x“ (at least without context).

So a variable needs to be constricted to actually infer some meaning.

x is merely the concept of something. It is not anything. (x < y) is the concept of something being smaller than something with regard to some order. (0 < 1) is the actual statement of the constant 0 being smaller than 1 (let’s assume integer order). (0 < x) is the concept of something being larger than 0. What we can say is

[∀x: 0 < x]

to state that in any assignment this concept holds. Which is of course false. But if we say

[∀x|x∈ℕ: 0 < x]

it is true. So once we constrict the variables to certain assignments we can deduce properties from this constriction of values. But we cannot simply deduce anything about a variable by itself.

An interesting non scientific example for this is the English colloquialism There are a large number of [something]. Semantically number is singular, so it should be there is .... But instead we use large number as a placeholder for a number such as there are 2000 of [something], so we use plural. In this context the statement is

there is/are n of [something]

where n is a placeholder for a non specified number, and large is a constriction to the number being probably quite a bit more than 1. By this we can deduce that this must require a plural numerus.


He's saying the same thing as would be said to a student-programmer -- variables are specific to their scope. In one function (equation) x may be an integer, in another it may be a float and in another it may be a string.

If you make a universal statement : the variable i is a positive a integer. That is incorrect. It may or may not be an integer, it may or may not be constrained to positive values. It's not universally true.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .