# Electric Charge, Truth, and Self-Awareness

What is truth?
— Pilate, John 18:38, NRSV

To say of what is that it is not, or of what is not that it is, is false, while to say of
what is that it is, and of what is not that it is not, is true.
— Aristotle

"The truth points to itself."
"What?"
"The truth points to itself."
"I do not understand."
"You will."
— Kosh and Delenn in Babylon 5:"In the Beginning"

The one quote that I want, but can no longer find, is to the effect that philosophers don't really know what truth is. Introductions to the philosophy of truth (e.g.
here) make for fascinating reading. I claim that the philosophers can't reach agreement because they aren't trying to build a self-aware creature. Were they to attempt it, they might reason something like the following.

Aristotle's definition of truth is clumsy. It simplifies to:

If true then [say] true is true.

In hindsight, this isn't a totally terrible definition. It combines the behavior (say "true") with the behavior ("truth leads to truth"). But it's still circular. "True ... is true" doesn't tell us what truth is, so it's useless for building something.

Still, this formulation anticipated a definition of truth in computer programming languages by some 1,700 years:

if true then truth-action else false-action

"True" is a special symbol that is given the special meaning of truth. In Lisp,
t is true and nil is false. In FORTRAN, .true. is true and .false. is false. Python uses True and False. And so on. But this still doesn't tell you what truth is other than it is a special symbol that can be used for making selections.

Looking at how "true" is defined in the Lambda Calculus provides a critical clue. Considering the Lambda Calculus is important, because it describes all computation in terms of behaviors (denoted by the special symbols λ, ., (, ), and blank) and meaningless symbols. There is no special symbol for "true".

def true = λx.λy.x

What this means is that "true" is a function of two objects, x and y and it returns the first object x. Truth is a
behavior that can be used as a property. That is, this behavior can be attached to other symbols. It is the behavior that selects true things and rejects false things. False has symmetric behavior. It selects false things and rejects true things. So we've advanced from a special symbol to a behavior. But we aren't yet done.

The simplest if-then statement is:

if true then true else false

Truth is the behavior that selects itself. So we've derived the basis for the quote from Babylon 5, above. But we need to take one more step. Fundamental to the Lambda Calculus is the ability to distinguish between symbols. It is a behavior that is assumed by the Lambda calculus, one that doesn't have a special symbol like λ, ., (, ), and space to denote the behavior of distinguishing between symbols.

So consider a Lambda Calculus with two symbols:
These symbols are meaningless. But we have to be able to distinguish between them. So we need a behavior that can say "this is me" and "that is not me." And we can find this in nature in the behavior of electric charge. Electric charges recognize themselves because like charges repel and opposite charges attract.
And so, we find that truth is the ability to recognize self and select similar self-recognizing things.

And so, we find that electric charge gives us the laws of thought and truth, all in one force.