Okay, just to summarize.
If we have n bits, this corresponds to 2^n
possibilities,
and we'll always define 2^n to be N, if we
have a little n.
If we have N possibilities, where N could
be three, this corresponds to log base 2 of n bits,
which doesn't have to be a number, for instance,
log to the base 2 of 3 is between one and two bits.
I guess, it's still a number but it's not a
natural number.
Then we also looked at probabilities.
So if the frequency of heads is m_h/m,
I have a sequence of heads and tails,
I count the total number of heads, I count
the total number of tails,
I define this to be q(h) and I define q(t),
this is equals 1-q(t), because it's either
heads or tails,
our coins are not landing on their sides and
just staying there like that,
then the log base 2 of the number of sequences
with frequency q(h) for heads and q(t) of tails,
this is equal to m(-q(h) log base 2 q(h) - q(t) log base 2 q(t)),
and we define this to be the amount of
information or entropy, and so sequences.
And if the logarithm of this number is equal
to this,
that implies that the total number of such
sequences, that is, sequences with this frequency,
is approximately equal to 2^(mI) or 2^(mS).
So this special formula, almost magical but
not magical because it's just mathematical,
this formula which shows up all the time in
information theory,
minus the sum of q log q or minus the sum of
p log p,
is just a way of counting numbers of sequences
if you're given a particular kind of frequency.
So there's an intrinsic relationship between
frequency, probability and information,
and that relationship is given by this formula.
In a bit, maybe a lecture or two down the line
in these ten minute lectures,
we'll talk about how to apply this fundamental
formula about information theory to the
problem of communication.
How many bits of information can you send
down a communication channel?
For example, I'm talking right now.
My larynx is wiggling, they're sending vibrations
through the air,
this is a physical system, information is being
conveyed,
but because it's a physical communication
channel, there are physical limits to how much
information I could probably communicate to you,
assuming, of course, you think I am communicating
any information at all.
These fundamental formulas of information theory
allows us to put limits on the capacity of any
communication channel, any communication
channel that's realized by a physical medium,
and those are the only communication channels
I know about.
But before we do this, let's talk about the
relationship between information and computation.
Let's talk about information processing.
This also goes under the name of computation,
and it also goes under the name of Boolean
logic.
Boolean logic, what is Boolean logic?
Well George Boole was a 19th century logician
who came up with Boolean logic.
He actually was married to Mary Everest,
who was the daughter of the surveyor of the
British Raj of the same name after whom
Mount Everest is named.
Boole wrote a modestly-titled book called
the Laws of Thought.
He'd fit in right well with the kind of modesty
that goes on in the Santa Fe Institute nowadays,
I'm sure we'd welcome him with open arms.
So what is the content of Boole's laws of thought?
Boole was interested in logical propositions,
and logical propositions can either be true or false.
By the way, if we're going to map this the way
computers do this,
often we call true - 1 and false - 0.
This is just a convention.
Those of you who are more fond of zero than one
can have the opposite convention if you like,
but I'm going to adopt this convention right here.
So Boole was interested in questions like,
suppose I have a proposition X,
so X is 'it's sunny'.
And I have another proposition Y, and Y is,
for example, 'it's raining'.
So either it's sunny or it's not sunny.
So it could be true if it's sunny or it's
false if it's sunny.
It could be true if it's raining or it's
false if it's raining.
And Boole was interested in propositions
of the form X AND Y.
X AND Y means that it's sunny and it's
raining.
Now actually where Boole lived in Ireland,
it was probably, usually, false.
Usually false in this case.
And he was also interested in propositions
like X OR Y.
Now, either it's sunny or it's raining.
It could also be cloudy and not raining.
So sometimes true.
And he was also interested in propositions
like, if X then (NOT Y).
So if it's sunny then it's not raining.
Probably largely true.
So he wanted to break down logical statements
into propositions of this form,
using ideas like X AND Y, that a proposition
is true if and only if its constituents are true.
X OR Y, this proposition is true if and only if
one or more of its constituents were true.
Or more complicated propositions like if X
then NOT Y,
which is some Boolean function of its constituent
propositions.
Here is a glorious fact.
If I say X AND Y, I write this as X ⋂ Y.
X OR Y, I can write this as X ⋃ Y,
this is the notation that Boole developed.
NOT X, I write this as X with a little twiddle
in front of it (~X) to say that it is not true.
If X then Y, I write this as X → Y, if X is
true then Y is true.
Then Boole had a beautiful theorem that says,
"Any possible logical expression can be written
down in terms of composing these kinds of
propositions.
So, for example, X ⋂ (Y ⋃ ~X) → Y ⋂ (X ⋃ ~Y).
Now I've no idea what this means.
And what Boole gave is a set of rules to
evaluate when such expressions could be true
and when they're not true.
So if I just speak this out in terms of sunny
and raining,
it's sunny and it's raining or it's not sunny
then it's raining and it is sunny or not raining.
Sounds false to me.
But what Boole showed is that any possible
logical proposition could be written in this way.
And this is why he modestly entitled his book,
"The Laws of Thought".
Because he was interested in logic, he noted
that any possible logic proposition could be
written out in terms of these simple rules,
and here is a even more remarkable fact,
and the fact is, and this is not a mid-19th-century
thing,
this is a beginning-of-the-21st-century thing,
all digital computers are doing is evaluating
such Boolean expressions.
A computer just breaks up things into operations.
And we can have an operation, this is how I
write the same kind of thing in computer language,
this says X AND Y, and this is what's called
an AND gate.
An AND gate is simply a device in the computer
that takes in the inputs X AND Y, which are zero and one,
and outputs X AND Y, and this is equal to one
if and only if X = 1, Y = 1, otherwise it's equal to zero.
Similarly, we have an OR gate, which is written
like this, and the output is X OR Y,
this is equal to one if X OR Y is equal to one.
It's equal to zero if X = 0 and Y = 0.
It's a physical device that implements this
logical operation OR.
The AND gate is something that implements
the physical operation AND.
And we have something that implements NOT X.
So NOT X = 0 if X = 1 and it's NOT X = 1 if X = 0.
So this is AND, OR, NOT and the final operation
is a COPY operation.
So I take X and I make two copies of it.
So these are the computer digital versions
of Boolean logic,
they are actually physical devices that implement
Boole's universal laws of thought.
Mind you, there are plenty of ways of thinking
that I do and that other people do and the
dogs and cats do that cannot obviously be
broken down into this Boolean logic,
so I'm not sure how universal it is.
We have these four different kinds of gates:
AND, OR, NOT and COPY.
And now here's a remarkable thing.
So Boole's theorem, his universal theorem,
says that any set of digital logic operations,
that is to say what a digital computer can do,
including your iPhone, or if you're an Android
person, your Android phone,
can be broken down into AND operations,
which looks like this in computer science lingua,
OR operations, which looks like this,
NOT operations, which are written like this
for some historical reasons,
and COPY operations, which are written like this.
So all your smartphone is doing, all your
computer is doing
is breaking down logical processes and information
processing into fundamental units of combining
these operations of AND, OR, NOT and COPY.
And as George Boole showed in the 1840s and fifties,
it's possible to break down any kind of logical expression
into the set of operations.
So we have information, we have bits, we have
ways of processing and transforming those information,
or that information, sorry,
using elementary physical systems which
are logic gates,
and all the digital computation is doing is
combining these sets of operations in arbitrarily
complicated ways.