Loading...
Loading...

Follow me on Twitter! @dela3499
Listen on Apple Podcasts, Spotify, Youtube, and more: https://carlos.buzzsprout.com/share
What's like my own personal definition of universality that is helpful to me, which I think
is only a slight spin on what is the usual definition.
Which is in the context of computers and minds, if you want to talk about universality,
I think the sentence that you want to have in your mind has three parts.
Universal system, or I claim about universality, is about number one, a particular system,
a computer, a brain, an alphabet, you know, something.
It has a certain relationship to every member of some set.
So a, you have a system, b, you have a relationship, and c, you have a set of things.
And so if I make a statement, which is of some form of universality, like, you know,
every language on earth has nouns.
And you'd say nouns are universal feature of human languages, you might say.
And so this is a statement about universality, and if you were to break it out and do these
three pieces, you'd say, okay, the system here that we're talking about is,
um, is actually going to be, I guess, a nouns.
And so nouns have a certain relationship to the set of all human languages.
And that relationship is, it's present in all those languages.
And again, focusing on that set, it's a set of all existing or maybe historical human languages.
It doesn't make a claim about anything outside that set, like an alien language or animal language.
It says, I'm defining these three pieces of this sentence, uh, nouns are contained in.
And then lastly, uh, all human languages.
And you can imagine variants of this statement, which change anyone of those variables,
change the nouns to verbs.
Now you have a different type of statement, uh, change the relationship.
You say, okay, no, no, it's not that instead of saying nouns are present in all these languages,
I could say nouns are essential in all these languages.
So you can't even make up one, any sentence in any of them without this thing, uh,
let's say that would be a different statement.
It's not just part of the language that's common.
It's essential to every single sentence in that language that could be true or not,
but that's a different type of relationship between nouns and these languages.
And then lastly, you could tweak the set itself and say, actually, I'm going to make a statement
not about all human languages, I'm going to make a statement about all possible languages.
Or all languages spoken in the antebellum south, or, you know, I'll dialects there or something like that.
Um, and so that's the basic framing of, at least for my, for my purposes, uh,
statements of universality, you have a system, a relationship, and a set, um,
and so anytime somebody says, uh, and often by the way, when people talk about universality,
especially in the context of language, they're making statements like that.
Like, here's a feature of language.
I think it's relevant to or present in all of the languages you'll ever find.
Um, and one thing that's different between that kind of thinking and the kind of universality
I'm interested in when I'm talking about the brain is that I'm not interested,
usually in a finite set of things that have existed.
I'm usually interested in this infinite set of everything that could exist,
which is a much more, it's much bigger and more interesting set.
Uh, so it's a more interesting type of universality, uh, I would say.
Uh, but ultimately, uh, and just to add one more thing to that, and then we can kind of,
uh, toss that around, uh, is that a statement about universality again is about,
uh, system having a certain relationship to every member of some kind of set.
Many, many, many things are true of only some members of a set, you know,
I know a lot of people, I don't know everybody on earth.
I know some people and the, the sum is the operative word there, uh, and the alternative being all.
I know all the people, um, so those are the, that distinction between sum and all is the one
that is most fundamental.
I went thinking about universality because if you say I'm good at some things or I could
possibly do some things, that's not good enough for an AGI, uh, for instance,
I want to be able, I want a system that is capable of doing all things, literally all things.
Um, maybe not right now, but it's, you know, capable of getting there.
Um, so there's some precision in terms of what that relationship is, what you're
specifically trying to say.
But anyway, zooming out to hear the key points on our statements of universality are about
three things, a system, a relationship, and a set.
And the fact that that system has this relationship before every member of that set.
And lastly, uh, some versus all is the key distinction to have in mind.
But anyway, uh, thoughts on that?
And the set be arbitrarily, uh, bigger, smaller, whatever.
Like you know everybody in this room.
So that is a universal statement.
You have a relationship of knowing everyone in this room.
Yeah, and, um, you can make the set whatever you want.
Although there are some sets are more interesting than others.
So, uh, the set of everything that's on my desk is a pretty parochial thing that nobody cares about.
You know, book written about that wouldn't be bought.
Uh, but about the set of everything that is computable.
Okay, now that's a set that's pretty interesting and transically.
And uh, that makes it valuable to a lot of people.
Um, and you could always gerrymander and invent your own arbitrary set.
You'd say the set of all things, uh, all languages on earth except English.
And, uh, and I'm going to make a statement about that.
And you go go like, well, that's kind of a little bit suspicious that you're,
you know, writing what you think is a some book about something.
And you're making one exception.
You're certainly, so you're actually, I think the more objectively important set is a set of all
languages, not the set of all languages minus English.
That seems a little arbitrary to be honest.
But, uh, in any case, uh, that's a question again about the types of sets that are interesting.
Um, if somebody else came along and said actually the set of all languages except English is a
legit set. And here's why then fair enough.
Um, but the set can be anything.
Um, and one of the key distinctions among the sets is whether it's finite or infinite.
And I'm mostly interested in the infinite set of all the things that could be.
Um, though we can always make a set of finite things that are, you know,
that we can imagine or the current exist or have existed.
Okay, but they are still universal statements, even without being infinite sets.
Yeah. Uh, as far as I'm concerned, you're, you're making a statement of the right form,
you know, and then somebody might look at that and say, actually, you're kind of bullshitting me.
You're saying like, I know, I'm making a, you can make a statement, which is sort of a BS statement
of universality, for instance, like, um, here's one that is especially Zalala.
And if you're looking at books on logic, I think they will sometimes use sentences like this,
where they'll say like, uh, uh, I have given one million dollars to every person,
um, or every alien who has asked me for it.
And of course there's zero of them.
So, and I, and so, uh, you couldn't say any statement about an empty set.
And that, you know, so you'd say, okay, well, in ordinary English usage and this common
sensical framing of it, that's not a good statement to make, um, though it's formally correct
or whatever. So, uh, you have to distinguish between, on the one hand, a statement,
to sort of fit this pattern of universality. And then there might be versions of it where you're
like, oh, that's, I don't care about that statement. That's a dumb statement. That's a, uh, whatever.
I was just wondering, so, wait, am I audible? Yes. Okay. Um, is there something like, what is
qualitatively different about the universal statements from the non-universal ones? Like, they
counterfactual and that they refer to, you know, sounds like they refer to all possible things
by some description rather than, I guess, not a finite set, but a, a known set.
So, like, if we say all possible languages have this feature that includes ones that we don't
even know about, but, um, so I don't know. Yeah, I feel like you'd want to have some kind of,
you know, generator of, uh, like classes. So, you know, to be universal, it isn't, it applies to
all things in this particular set that I have listed. Whereas you'd want something more like,
I have some decision criteria that groups things and all possible things that end up in that group.
Uh, this will apply, too. Yeah, you can define a set by numerating things or have some more
general criteria. And I think this falls under the broader heading of, you know, when you're making
a statement, uh, of this form, I guess what I'm really saying is like, I think of universal
universal statements, uh, statements of this form. And of course, any one of those statements could
be BS or boring or false or whatever. Um, but here's a format in which you could arrange universal
statements. And, uh, and so one of the ways in which it can prove to be boring is that it's a
boring set or a arbitrary set or a small set. Uh, and you could say, uh, I would be more interested
in the set of all possible languages than in the set of languages. Some random dude happens to know
they're both sets, but, you know, one is more, uh, rich and intrinsically interesting.
I wonder does a universal claim have to contain that description of what it refers to that a
non universal claim does not? So there's, or yeah, as far as, uh, yeah, I guess I'm just focusing
on sentences of a certain form. And then you could have questions about how any of these pieces
are defined, how you define a set at that point. That's a separate discussion because my little
format here just says, Hey, I want to, I want sentences of the form things with relationships to
every member of some set. Uh, how you define any one of those little pieces is up to you. Um,
and it could be valid or invalid, but just that three piece formula is sort of the focus here. Um,
yeah. There's something special. There's something special about universal statements in
that they can never be verified. They can only be falsified. And universal statements always
entail existential statements. So if I say all, all languages contain whatever, then that means that
this particular, any particular language will contain nouns. But I could always just say there
is a language that contains nouns. So that's an existential statement, which can never be falsified
because you can't go through all the languages to confirm you, you can only verify it. You verify
that's only true for infinite sets and things. Yeah. Everything on my desk is edible. And I can
test that statement. Go through all right. I'm using the existing, sorry, I'm using universal
statement in a way that's slightly different from what you're saying, but similar in that the set
is, uh, the set is infinite. So the format of the universal statement, but infinite set. Yeah.
Exactly. Yeah. So so I think for, for my purposes, um, yeah, then the interesting thing
becomes saying, okay, within this little, really, it's just a helpful device to just say, hey,
these are three things we're focusing on, the system, the relationship, and the set. These are
the three variables that are relevant to talk about. Um, and so then the interesting questions
all become about, okay, which system are we interested in, you know, particular animal or all
life forms or, uh, the human brain. Yeah, there's different things we could turn our attention to,
a strand of DNA. What is its relationship to, you know, all chemical reactions, let's say, or
these kinds of questions. So you can turn your focus to many different things. And my main focus
is on, you know, minds, you know, okay, so minds, uh, have a certain relationship to,
uh, and then the question becomes what set, the set of all possible physical transformations,
building of rockets and planets, and those, or everything, that's the, that's the, that's the
most important one. Um, what's that? I was going to ask what you think the relationship between
people is to the, um, set of all possible explanations. So we have to, the system and we have
the set, but what is the relation? Can synthesize or, uh, can create, I guess, but can we get more
specific than that? Yeah, and I think these are where the open questions are as well, trying to get
more precise about, okay, what, what are the relationships and which set? Um, and so if we focus on
the set of everything computable to start with, and then maybe we can dig into explanations,
which I think are like a subset of that. Um, everything, you know, everything a computer can do,
that'll be the set that we focus on. And then you can ask, okay, well, an AGI or a human
mind should have what relationship to that set. And the two that come to mind, uh, for me as
most important are on the one hand, uh, you should, you should be able to create anything in that set,
because that that set contains valuable things, you know, contains relativity and
instructions for how to build a rocket and all those things. So you want to access all that good
stuff. So you want to have, uh, universal ability to reach anything in that set, produce it, come
up with it, uh, given that you haven't started off with it, you know, so you have some building blocks
that you have when you're born, let's say, and you were capable of reassembling them and building
new blocks and whatever you need to do to come up with relativity and whatever else. So that's
number one, number two is you want to be able to use anything that you've created in that set,
or to put it differently, maybe there's sort of two versions of this in my head.
The other version is you want to be able to, um, sort of navigate that set in any possible way.
Um, so I guess it's sort of a use anything in that set to move through that set.
Yeah. Um, so I guess the way that I maybe you're clear is to say that you want to be able to reach
any point in that space, and you also want to be able to navigate and take any possible step
in that space. Um, and that the reason for that is that, you know, obviously, if you can reach
a point, that's good, but if it takes you like a trillion years to do that, that's not so good.
But if there's a shortcut, um, where you can think at a higher level of abstraction, for instance,
and reach that same endpoint, uh, in a decade, uh, let's say Einstein thinking about what he's
thinking about, he's reaching relativity in a way that some low level computer program,
enumerating all possible programs is going to have to take a few trillion trillion years before
it gets the same, uh, result. So he's navigating the space using, uh, interesting ideas and getting
to valuable places faster. So that's also important. Those are really two fundamental things.
So isn't that reachability the same as tractability? I think we've talked about that before, but,
um, that's what's front of mind for me. I mean, does that not mean that getting to, you know,
some any given program is tractable as opposed to the random number generator or something that's
intractable? Is that not the defining line? Does that, I keep going back to that? There's a
sharp distinction between what you can reach and how the resources required to do it,
because you can imagine navigating just a simple system like the number line. Imagine if you
only move one step at a time, you could reach anything, any positive integer, uh, but it could
take you arbitrarily long, whereas you would hope that, for instance, uh, whatever number you have,
let's say, have, have reached. So if you reach the number 10, you could then like multiply your
current position by that and then go to 100 and one step and so on and so on. That would accelerate
your, uh, traversal of the line. So it's something like that. Yeah. So you could say for any possible
natural number, if the machine can only add one, then it's intractable, perhaps, or something,
it takes very, very long time, but if the system has multiplication, then that could make it tractable.
So now that that makes that any possible natural number reachable, would we say that or do we mean
something else by reachable? If not createable in a, you know, not exponentially increasing time?
But the key question is, is the yes or no question of can you reach it and ignoring the number of
steps? You know, you can reach any integer in a finite number of additions from zero, you know,
one, two, and there's no number you can't reach that way. So every positive integer is for sure
reachable. As long as you don't snuggle, snuggle, snuggle, snuggle and other assumptions like,
you know, the universe only gives you so much time to exist and do this operation. If you ignore
those physical constraints and just say in the abstract universe where we're doing this addition,
you have infinite time and we don't care how long you take, then, you know, simple additions of one
will allow you to reach anywhere on the number line. But of course, we care about the time it takes
and the resources required, but that is a distinct categorically separate question.
But isn't that like totally front and center to person? Because again, random number generic could
also reach, quote unquote, any number. So the whole point is we want to be able to do it efficiently,
right? I didn't say it wasn't important. I'm just saying it's a totally different question.
It's useful to distinguish between them and know which one you're kind of addressing at a
given point because, for instance, you could make the number line analogy a bit more computational
and relevant to the mind. You'd say, okay, well, in a simple world, in a simple computational world,
you could be touring complete because you have, let's say, whatever four or five computational
building blocks you need to assemble any program. But suppose that you were always stuck assembling
new programs only by using those sort of atomic units. By the way, if you want to Google what I
have in mind here, look for like, combinators, the sort of interesting computational building blocks,
Stephen Wolfram has some videos on it. And so if you have all the relevant ones, all the
ones you need, a complete set, that's fine. But if you again, if you're stuck making new computations
by gluing those together one by one, and you could never take other pre-built programs you have made,
and stick them together, you know, those might have thousands of individual units in them and you're
taking a thousand unit program and another 10,000 unit program and making another one combining those
or running one program and another and making something really big. If you can't do that,
if you're stuck just with this little, like, you know, having little tweezers and making one
little unit at a time, you know, one computational atom, that's a very slow way to assemble new
programs. And so it's going to be hard to reach a program if, let's say, you need a trillion
unit program, it's going to take you along and why not to assemble that in this very reductionist
type of way. Anyway, all that is to say that you could have a system which is
to incomplete, it can reach anything, but only very slowly. You know, alternative computational
system that allows more recombination at high levels of abstraction, which will allow you
explore the computational universe much more and in much larger steps.
The whole question, it seems like to me, of AGI or one of the central questions is how to go from
like they call it in constructor through a no design laws to
something that can manufacture things beyond just the elementary undesigned
primitives, like in the case of combinators, that's just yet another instance of this
class of things. So that's, yeah, what I'm super interested is how to, how does it get off the ground
basically? Once you have completeness, how do you go from primitive things that need no recipe,
because they're just the laws of physics, quote unquote, or the computational laws of physics
in a mind. How do you get the stacking stable, you know, ever expanding hierarchy of tools?
And we know error correction is a big part of it, but I don't know.
Yeah, well, one way to frame some of this is to say that the problem of intelligence is very similar
to the problem of evolution and all these things, which you can sort of formulate as if you start
with a kind of bucket of primitives, how do you get to more complicated things? And so if all
that exists in the world are photons and protons and these kinds of subatomic particles,
you can ask a question, how you end up with atoms, you know, structure, a higher level structure
from molecules. And it could turn out that that's very easy. Once the universe cools down,
these form pretty naturally. And so you'd have your explanation there. But then you'd say, okay,
well, what about going from those, those units of molecules to a DNA strand? Because there are
many possible variants of a DNA strand, which are much poorer at story information. But why does
the one that works? Well, why is that keep getting made and sticking around? As opposed to all these
defective versions that could exist, that seems harder to explain. And Ditto, you might say for
a brain, you'd say, okay, well, I can imagine a brain that has, it's like, touring complete,
but how does it end up finding like good ideas? That seems like a different question.
And so in all these cases, you're starting with this small set of primitives, or at least more
primitive things. And asking how you branch out into this super, you know, vast search space
of combinations of all those primitives. How do you reach out into that vast space and hit
good stuff, given how unlikely that is? And that's the same question at each of these stages.
When you ask, how do you get from, how do you get these cool results from these more basic things?
I feel like I would want to have this relationship between humans and universality. I would
want it to be something like a human can reliably error correct to all possible explanations that
can lead to progress. That's what I would want, though I don't think it's reliable.
And I don't think we, I don't, yeah. Sorry, go on.
These things, I'm usually trying to ask the question, can you roll something back? So that's maybe
a quite a high level thing that involves error correction and different things. And let me see if
I can increase my volume here. Maybe it's just me, though. Is Carlos quiet for?
I have my zoom set up to be a high fidelity, original audio for musicians, it says.
It's supposed to be a higher fidelity, but I guess it makes it quieter also.
We'll see what happens there. But in any case, whenever there's like a high level thing to
that you might consider, like the thing you were mentioning, Zachary, I always want to see if there's
a simpler version that is the thing that matters. And maybe one version of this is talking about
explanations, like explanations. It's a little bit unclear what those are, but you can maybe
back up and say it's simpler to talk about the set of all possible programs. That seems like
something we can really grab onto. We can talk about terrain machines. And then as to which of the
programs, which are the things that a mind can do or explanations per se? Maybe that's a fuzzy thing.
Maybe we don't have to focus on that. Or maybe, yeah, that's an open question. Likewise,
for things about error correction, that's more of a tool I would suspect than maybe
the thing to focus on, but I don't know. Well, it's like the thing of, I can have
a number, infinite number generator that just goes up in steps. It can answer any Mac problem
because it can present every number. But it won't error correct to the correct answer.
And that's kind of a major problem. And we would want to have people be able to actually
settle on the correct answer for any problem that they're solving. So it's kind of the idea of
similar to the infinite monkeys on typewriters with infinite time. I'm sure they can produce anything.
But they, of course, they won't be able to do it efficiently. They won't be able to error correct
to it. They won't necessarily be able to use it in the way that you like to think of it Carlos.
They won't have the ability to navigate it in any coordinated way and all those types of things.
So that's why that's kind of what I'm thinking of with error correction there.
But of course, I think what I'm saying is very fuzzy and not complete. So that's just
where I wanted to be. That is a good point though. The random number generator cannot answer any
specific question. I can't do anything specific. You can do anything, but that's specifically.
You can't choose what it will do. There has no function to it. I think that's important.
Yeah. The way that I framed this is that ultimately in all these discussions, there's only
two or three real questions. And I think all of the, everything else is sort of a synonym of those or
a combination of those. And the one of them that we raised earlier is about what you can reach,
you know, a system that can never reach relativity. Well, full stop there. It's not a very powerful
system. And then you say, okay, well, I think you can reach it can do it efficiently. What kind of
steps can I take? What kind of mutations can it kind of make? That's a different kind of thing.
And so again, if it was possible to reach it, but only in a trillion years, you'd say,
that's not exactly what I'm looking for. I think what you're raising Zachary is something is a third
issue, which is what if you have a system which can reach it? Not only can it do that, it can do
it quickly. But then what if as soon as it hits it, it just says, forget it and keeps on going.
Or it says, I've generated not only the correct version of relativity, but 10,000 others. And I
think everybody to be fair, we should just use all of those equally. So the next thing you do is
not going to be particularly biased by the real one, the best one. So in that question,
there are there are there are two things to address there. One of them is how do you recognize
quality? How do you distinguish the goods from the bad? And then the second version of that or
the second thing is, yeah, what do you then do about it? You know, if a brain like blew up or
something every time I hit a bad idea, that's not a very good system, let's say. And if you forgot
things, actually, they were bad, that might also not be ideal because maybe you want to remember
that that was bad and why it was bad and avoid similar bad things in the future. So there are
different ways to handle, you know, even once you assess that one thing is better than another,
or one thing is very good, another thing is very bad. What you then do about it, how you exploit
that assessment, then becomes the next question. But yeah, the first thing to ask is,
suppose you have the right answer and you found it efficiently, how would you recognize it?
Would you stop and think, I'm going to really exploit that good answer? That's why I'm going to
talk about a lot. I'm going to remember that one. I'm going to invest in that and all the other
ones I'm going to invest in and less. So that to me is what I guess in my notes, I'd like to call
that the problem of criteria. And yeah, you need an open and a set of criteria because different
kinds of problems, different types of opportunities require different sort of means of recognizing that.
The way you recognize a good physics theory is not the same way you recognize a good ice cream
plate. The criteria are just programs like all the rest, nothing special about them.
I'm thinking you can't even reach relativity without error correction. So I don't think there
would be such a system as one that creates thousands of theories of relativity starting from nothing
because maybe there's no way to even do that tractively. You can only do it with
complete error correction or whatever. Well, I think it's important to distinguish
some of these questions. And this is kind of a lot of my interest is just trying to see where
are their important distinctions where you can kind of address things separately. And so
earlier I was saying you can address separately the questions of what you can reach with
resources versus what you can reach efficiently. And these are distinct questions, not that one
is less important than the other, but you can ask them so separately. And that makes them easier
to address. And likewise here, the question of what you can reach is quite separate from what
you can recognize as good because I could have a system which is incapable of reaching anything,
but I can give it these options and say, okay, you didn't find these options, but tell me which one
of them is good. This is a separate task. And of course, you know, the system we're interested in,
the human mind and other things like that are some powerful AGI. You know, we want everything
that we've discussed here wrapped up in that one system. So there is an integration that has to
happen at some point and figure out how you do all these different things at once and make it work.
But for now, you can sort of separate separate out those issues and say, okay, the problem of criteria
is distinct from the problem of what you can reach, logically speaking at least.
Yeah, and so like, yeah, you can have a random generator that comes up with relativity and
a million other things. And you know, I'm just, I'm just have a bucket of computational primitives.
I'm just keep shaking the bucket. And if I keep shaking along enough, you know, a big
relativity shape program will fall out of there and that's fine. And then the question is,
what do you do about it? And that's the bigger question.
So I want to go back to your initial, the statements, the universal statements,
they're including systems, relationships, and sets. And the ones that we're interested in
are the infinite sets. Are there any constraints on the relationships that we care about?
Like, I don't know, I don't know something about an infinite set. So I have a relationship,
which is not knowing the thing about the infinite set. Now, I imagine that's not interesting
that I that is the case and that's the universal statement. But, you know, it's reached,
it's matching the criteria that you've set so far for having an interesting universal statement.
So what is it about the relationship that needs to be constrained to exclude that type of statement?
Oh, I would just say that within this sort of three-part formula of the system, the relationship
and the set, you can just have different things you're interested in and there's no particular
rule or anything. But, yeah, I'm most interested in the set of all things that can be computed,
maybe the set of all the physical things that can be made to happen. Yeah, I want to
system that can not only think anything, but sort of do anything. Both of those probably go hand-to-hand,
you probably have to have both of those together, incidentally. But so that's once I've raised the
point of hey, these are the three parts of a statement about universality. Then let's start talking
about which ways you can fill each of those blanks with an interesting way. And as far as the
relationships goes, those are what I've said earlier. Do you want to be able to reach anything?
Do you want to be able to use anything? By the way, the distinction there is sort of like,
imagine a workshop that could produce anything, but always could only use very primitive woodworking
tools. You could make a rocket, but it had to use little wooden hammer and very primitive stuff.
That's a worse workshop than one that can only make anything, but that can make stuff and then
use what it may, like I can make a new hammer and then use that hammer and it can make a spaceship
and then use a spaceship to go get new ores and then it can back and use that stuff. That's
closing the loop and gets you to exponential progress. So you want to not only be able to have a
system which can reach anything, infinite set, but then also use anything in that set. And here's
where things sort of open up for a lot of further thinking, because the idea of being able to use
any program is a fairly abstract kind of statement and actually it's sort of an umbrella statement
because there are different types of uses of an idea. One of them is to make more ideas.
Another one is to use as criteria for assessing ideas. These are different uses.
Another use would just be to like a mechanical use. I have an addition program,
program that can add to numbers and then you just apply that. I'm not maybe making new ideas.
I'm not assessing ideas. I'm just running this program. So that will be the further use of ideas.
And so the question then becomes which uses are important. I think there are the ones I mentioned
there. Creating new ideas, using ideas to assess other ideas. And the question for me is I think
those two uses are pretty clear. You want to have those and you're going to ask what kind of
mind can do that? What kind of system can do that? But then there's a further question of like,
is that all of them? Have I exhausted the list of all the requirements you need for an AGI?
Are there any other senses of the word use and any other type of uses of the idea?
That's the big matter. Anyway, so that's one set of questions.
You have conjectured answers to any of these like, what allows us to, what's stopping us from,
so you know, we've established all the things we need, what's stopping us from coding it up?
What do they mean? What are the immediate problems that we see?
Yeah, I think in each case, the question is how do you achieve each one individually and how
you achieve them all together? Sometimes it's easy to state what you want and not so obvious how to
get it. So in the case of like a terrain machine, let's say you'd say, I want something that can
compute anything. And these okay, well, what does that take? And the answer is, in one sense,
it's quite simple, but is, you know, not obvious. And so I think that's true here as well,
where you think, okay, well, I want a system which can use any idea that it makes. Okay, interesting.
So let's say I've made an idea. What formed has that taken a brain? This creation of a new idea?
How's it stored or whatever? And is it the case that now that I've made this idea,
depending on how it's stored, like maybe it is like, you can imagine a world where it's like
having a book in a library and it's, you know, or it's at the bottom of some pile. Okay, well,
technically it exists, but it's not really connected upright in order to be exploited and used
and flexibly, you know, connected to and this kind of thing. So you'd say, well, okay, that's
that's the kind of system we don't want. We don't want a system that just like creates new ideas,
but there are some, imagine a brain that could like produce new connections, but they were like,
imagine a brain maybe not to produce new connections, but it was unlike our brains,
which is like made new neurons somewhere that weren't connected to anything. They were just like,
okay, butted off like little cells. So okay, well, okay, this brain can make new ideas, man.
And they're right there. They'd say it's not really, you can't use it anymore. It's not connected
upright. Our brains seem to work differently than that. But what kind of connection matters?
Like, I don't know. So the vague question there would be like, how do you produce new ideas in
such a way that they are like pretty automatically or easily capable of being used by anything else?
And one thing I've sometimes thought about is that any idea in your head, you can kind of
string together into a sentence. I can be like, I saw a dolphin with a tequila on the starship
shooting a gun at a black hole. Like these are, you know, any of the concepts in my brain,
I can kind of shove together into a sentence. And that's an interesting property. How do we achieve that?
Or maybe is that a trivial thing? Maybe some computer scientists would say, like any memory can do
that. Like I just have a key value pair is stored in the memory. And so you can just grab
any one of them. So maybe the kind of mental architecture you need has key value pairs as a fairly
primitive thing. Or maybe that's an overly, maybe that's a way of describing thing that's
overly biased by how current computers work. And the way our minds work is actually quite different.
Maybe you could squint at it and you could see some key value pairs, but really a neuroscientist
would see a lot more. I know. I think another one of the relationships that's important is that
you can group ideas or group programs, I guess, or relate them program, relate the programs.
As then you can like compare rival theories, you know, and a simple way of putting it,
or say that these two theories are the same theory, or these two programs are somehow the same
program. And you can know that they're the same program. I'm not sure Carlos, if that strikes you
as fitting within one of your other things like assessing, perhaps, or using in some unique way,
but I think if it does a specialized function, that's necessary.
Well, one thing I kind of left out is the idea of attention and what you focus on as being
relevant at the current moment. So like, yeah, once you can create new ideas and once you can
distinguish the good from the bad, let's say, let's say you can do these very well. That still
doesn't tell you what you should be focusing on right now, because, you know, you're doing
mathematics, but the line is about to eat you. So a smart, smarter person would recognize the
line and get out of its way and then think about the mathematics. So what is it about your brain
that makes it happen? And maybe a more, another way of putting that would be to say, like set aside
the line example, and just think of yourself actually just doing pure mathematics and saying,
well, we have some mathematics that we know there's a billion directions I could go on to try
to think of some new mathematics that will be valuable. So which of these branches should I strike out
on? Because most of them, if I were to think about them, would get me nothing. And I could spend
live times doing that. So it actually matters, even if you're only interested in mathematics,
that you can find good paths to go down. So what helps you do that? And so this is why I like to call
like a mechanisms of attention. And one of them might be like novelty or surprise, more
interestingness. These are things which are fuzzly defined, but we have some sense of what they can be.
Or logical conflict, you know, I have a use set of sentence, I set a sentence, they can both
logically be true, you know, whatever. And so that might be something to focus on, but that's
only one thing that might focus you in some way. And so you might also say, like anomaly detection,
you know, I'm used to such and such happening, but I'm surprised by this thing. It's an anomaly
in some sense. And that's where seeing levels of similarity might be of interest. By the way,
you're the sense of similarity that you have, that's a concept of similarity is interesting,
because there are different forms of similarity. And something that I think is one interesting thing
that the brain does is you can be in conversation and then say some anecdote that you haven't
thought about in 20 years. And somehow it was similar enough to the present situation that you
brought it up. But then as you say it, you might think, if you try to make it explicit, what was
similar about it? It might be difficult or whatever, or maybe it's actually pretty easy to say,
oh, like you got fired because you said the wrong thing at this thing. And then I'd say, oh,
that's like when I was in preschool, and I got put in detention because I said the wrong thing. But
say, you know, these are all high level things. And one thing that's interesting about it is that
somehow you experience that thing in kindergarten and it was stored in your brain in such a way,
despite not knowing what the future held or what things you would want to talk about or whatever
needs there would be in the future, it was stored in such a way that that similarity could be detected.
Which is kind of weird. That's an interesting property because it's like, it's almost like
saying, like imagine you have to arrange a library today and keep it sort of formed properly,
such that in 100 years, that arrangement will be useful, despite not knowing anything about
the future, you might say. But maybe you know enough to say, oh, these concepts will be relevant
and whatever. So just in terms of how you store information and retrieve it, that's already a
pretty interesting thing. But core to that is what you think of as similar, what definitions of
similarity you have. Do you think similar things? I mean, yeah, it's not just similarity.
I mean, my thought has been that you have like a big graph. The whole system is a graph of
programs. And then as a new one is made and is successful, then it's just put near where
it's sort of local to where it was made. I mean, there's some like special aspect. And so next time
when that activity is happening in that region, then all the other programs that were useful
before are first to be activated. But then you're assuming there's some sort of like pulse
moving around type situation, which seems like a big leap. But I mean, that is what is
roughly talked about when they talk about the human brain, you know, different pulses moving
around and causing cascades and criticality and all that stuff. So that's where my heck goes when
we talk about how the programs are stored and stuff like that. What the question is, is that a
necessary thing or is that just happenstance for how the mind like how the human brain is
organized currently? Yeah, it could be that you could be that you could arrange them in
arbitrarily different ways and arbitrarily more efficient ways or worse ways and so on.
Yeah, the sorting is just an efficiency thing. But the question is, is it necessary for some reason
to have everything connected, which is all that's all a graph is really everything present is
connected. If it's not connected, it's not part of the graph. So maybe there's something
cut off on a metal that graphs that like you're saying Carlos that that way the system would never
just make something but then isolate it so that it's not usable. Everything is always connected
and things are still decaying and being revitalized perhaps. But I mean, yeah, I think
yeah, I think Carlos is intuition that like I think the connection between sort of the ideas is
crucial and really important to the whole of it is that of like I think it's more like it's more
a discovery than it is an efficiency problem. So like the way you connect the graphs and the way
you connect the dots. Does that make sense? Yeah, yeah, it's not really yeah.
Telling thing that's like performance. Yeah, yeah.
One side note that I think is interesting sometimes is to think of my own personal notes which
form a graph as a sort of model of the mind and to wonder what the similarities and differences
might be because as I work with notes, you might say part of that is specific to note taking and
individual productivity. But then you might say, well, actually there's a convergence between the
needs of that situation and the needs of any knowledge management situation, including the brain.
And you might say actually I'm finding that it's very helpful to think not only in terms
of like previous generations of note taking tools which are more hierarchical and like folders,
documents and folders, documents in a hierarchy, one single outline. Every book has a sequence
of pages and that can contain a lot of good stuff. But you might say actually that's an inferior
way of arranging information compared to a graph because a graph can do that and also much more.
And so there are just intrinsic advantages to working with graphs as opposed to outlines and
hierarchies. And so you say, okay, well, that proves to be true for note taking tools and for the
brain and for friend networks or databases in various contexts. And it's for the same reason.
And so in the case of my own notes, you have, okay, a document with some contents with a name
and other documents can refer to that name. And that's useful. And the body of the document
that the note can refer to other notes. And so there's a high level similarity there in terms
of associative kind of framework of named things, maybe to how the brain works. It's at least a,
you know, an interesting thing to compare and contrast. Brains and note taking tools.
Graphs. I'm kind of going back on my efficiency idea again now as you're saying that,
and what we're talking about is, it seems like a person is something they can go from one point
and a space of ideas to another, right, of its own, you know, by its own light.
This thing goes, so maybe it is actually you need like, there's, I think we've talked about this
before, but it's like a picture like a combinatorial escape velocity concept where maybe you do need
several different types of efficiency to come together in one system, sort of like all hands on deck,
because that's the only way to get from like one program to another that is meaningfully
different at all, because the space of possibilities is just too dense, no matter what the implementation
of the system is. So maybe it is a matter of efficiency, and you mean enough
sources of efficiency or just it just doesn't happen, you know, there's too many combinations to
explore. So I don't know, I mean, I think I would argue, I think it would be more like
like problem situation than it is like, because like I think once you understand the like from where
you are, were you trying to go to like from the current problem you have, and to where you like to be
for, you know, things that I don't know, and I'm sure a lot of people don't know, like the mind
just like creates the idea and you just like connect it almost like very rapidly, like once you
understand, it's like whatever you're programming something, like understanding the problem is almost
as like sometimes you're pretty much like what you got to do now is just type out the solution.
Now that's not always true, but I think like a problem situation is more like more the guiding
thing when connecting ideas than like sort of random random combinations.
Yeah, there's a question of how you go down, like you've given the many possible paths you can go
down, which ones you should go down. But in this issue of like the architecture of the brain and
the fact that, you know, network might have advantages over some more strict hierarchical system,
let's say. I think one of the things you have to ask here is, and this is true of like
the broader question about how should you design a brain, or how should a brain be made? I think
the first question to ask is what should, what is its like fundamental purpose? What should it be good
at? And then how do you make it good at those things? And if your programmer working on some database,
let's say, one of the first things you'll have to ask is what does this thing need to be good at?
Does it need to be good at reading? You know, does it need to be able to support a million users
or a billion users that each want their data very quickly? Because if you want to do that,
that requires certain architecture. There's quite different from a system that says, actually,
I want to make a database that's very good for one person to come in and analyze and summarize
all the data for that day, or all the data of this company over the last 10 years. Those are
different operations. One of those, you might be able to pick a small piece of data and deliver
to a user very quickly and do that for lots of users. The other one, you want to summarize lots of
data. And that could literally be the difference of like, I want to have a data that is indexed by
user or data that is indexed by time or something else. And those are going to be radically different
things and inefficient for one purpose and efficient for another. And so for the human brain,
you might say, I want it to be able to add a new idea and efficiently be connected to all the
relevant things. I just want to be able to drop it in and say, oh, I had this new idea. And because
of the way I generated it, I sort of made it out of, let's say, three components. And imagine
that you have a network with three nodes in it already pre-connected, you know, your notion of a
table is already richly connected to your world view. And so imagine that you grab that and then
you grab this other thing which says, a computer. I put these into a new sentence, my computer is on
the table. And you're forming this new thing. But it's already connected to everything else that you
know. You just sort of drawn a new little line around these two concepts which already are
richly connected. And so now you have, for free, basically, very cheaply created something new but
also made use of everything old. And that's quite a nice feature to have. And it isn't one that,
you know, you can imagine alternative ways of doing things that wouldn't have that property, maybe.
So you say, okay, that's cool. I want that property in my thinking system. I want to have to like
pre-compute the relationships between everything. Every time I have a new idea,
I could do that. I could make a system that would do that and maybe it would work. But it would
be much more costly than, you know, every time. So I don't want that. So that question you want
to ask again and again and say, what should this thing be good at? What is its core bread and butter
as a computational system? And it isn't, for instance, doing things that we usually, like,
computers do, like run through and add numbers and do that, you know, a trillion times in a row without
error. We could do that. But it would be very, you know, it's not what we're good at.
Yeah. So again, I mean, I can't not picture a graph entire time, you're saying that.
Basically, what we have is a system that has programs connected throughout a graph. And then
something like a regulatory network and genetics is what I'm thinking about. It's something sort of
composed, the composition is happening by, you know, activating different regions of those
graph or connecting different regions and them, trying, trying many different connections because
composition of two programs is one, feeding into another or so. Yeah, it seems like it's all about
connections and trying connections. And then the ones that solve a problem in some sense are reinforced
something like that. There's a kind of a cool idea from the world of closure, which is a
Lisp programming language. And in that language, they said, we want to have, we have various reasons
where we want this property of where we, when you create a new variable, like it can ever change.
And we think, okay, we want this thing in our system. But then to implement it actually required
a very inefficient copying of a lot of data. So basically, they said, you know, we want to have
a programming language. We think this would be better if I had this feature, but actually that
feature is very costly. At least if you think about a naive way to approach it. And then
somebody else came along and said, oh, actually, you can get this thing that you want very cheaply.
And what this amounted to was saying that if you have some data in your system, previously,
with this naive thing, we're going to have to copy all the data you had before and make a new copy
of it. And this way, you could do operations on both separately and whatever you do in the new
thing won't affect the old thing. And that's a nice. It's kind of like saying, I want to make a new
version of a song. So I'll just copy it over and I'll leave the old song alone and I can always go
back to it. I don't have to write over it. So that's a nice feature to have. So, but they said,
you have to copy the whole thing. If it's 10 gigs, you have to copy 10 gigs every time you want to
make a change to it in order to make sure the old one is safe. So they said, actually, you can do a
structural sharing thing where you just, you arrange the system in such a way that you can keep
clear all the things you're doing that are new to it. So you can basically say almost like having
like a sheet of paper. And instead of like re-typing the whole thing, you just add a little sticky note
to one part of it. And a sticky note, you can see the new thing. Everything you wrote, you can see
everything you wrote before and you can have a sticky note on top of the new part, whether it's new
writing and you can lift up the sticky note and see what's underneath. So you can just make the edit
and it's efficient. And so they did something like that. And I think that is being an interesting
case of saying, okay, well, now let's think about that in the context of the brain. You want to be
able to do something efficient. And you want this feature of like every time I make a new idea,
it's connected everything else. And I can imagine a naive way of doing that where you like,
recompute everything. But that doesn't seem very good. But so is there a way of achieving this
thing that I want by doing it elegantly and efficiently with a little bit of cleverness? Like, once
you know what you want, maybe there's a way to get it. And in the end, it may not be that
complicated, but it does achieve this very important thing in a very efficient way. And that makes
all the difference. But yeah, so I think just to reiterate the stuff about universality here and
see if anybody else has any other questions, the overall picture was that if you're interested
in universality, you want to focus on three things. The system, the set of, yeah, you're usually
going to be making statements about this system has this relationship to every member of this set.
And then you can talk about different systems, different relationships, different sets. And
those sets could be finite or infinite. The relationship could be, you know, such and such
contains this thing or can represent this thing or can reach this thing or can use this thing.
All kinds of relationships are possible. And the systems you might be interested are genes or minds
or computers or, you know, whatever. It's pretty, I think, a rich framework that I think the main
goal of it is just to say that you want to focus on those things. And I don't think there's anything
else that has to be considered. And I don't think it's missing anything. This little three-part
framework. And I think you have to address each of those three parts to understand fully
what you're talking about. So I think it's just like a helpful little framing for the discussion.
One other thing I'd say, by the way, is that in the context of AGI, I think I mentioned this
a little bit last week, it's one of the core things that I think is unique about this sort of
popper, Deutsch-flavored approach to AGI. Because usually people are interested in performance of
a system and improving that performance according to some benchmark. But that's somewhat different
from saying, hey, I think that there's just a way of not like taking a system, making improvements,
and just continuing to improve it, improve it, and increasing some performance number. But to say,
like, oh, this system can do anything. It just has crossed some kind of binary qualitative
boundary. I think that tends not to be what people are thinking about mostly. They're thinking more
about, hey, we got this performance. I want to increase that number. They increase the accuracy,
increase the speed, increase this. That's quite a different thing. Imagine if you'd done that with
like terrain machines. You'd say, I have a computer and can compete more and more and more.
Versus, oh, I have a computer that can compete anything and I can prove it.
By the way, just to... This is something that I think is always interesting when talking about
like a universality in terrain machines and stuff. They are surprisingly disappointing in a way
because they contain like no information about how to do anything, a universal terrain machine.
All it is is like a system for like taking in an input and copying it over and simulating what
the real machine would do. So the universal machine is actually in some ways the most boring one.
It can't do anything that is useful on its own. All it can do is wait for you to tell it
the recipe and then it can follow it. So in that sense, it's the worst terrain machine.
And if you had to try to make it more, more powerful computers, you would have said, okay,
I have a computer here that can do some things. The way to improve its power is to make it
be able to do more things. So I'm going to take terrain machine A, terrain machine B, and I'm
going to make a new terrain machine, terrain machine A plus B. And it has a little toggle switch.
Let's you do the A program or the B program. So now it's better than either machine on its own.
So you say, okay, cool, terrain machine A plus B is more powerful than A or B separately. And then
you just keep on doing that. ABC, A plus B plus D plus C. So you're like adding more and more
programs into it. But this is exactly the opposite path to go down to reach universality, which says
actually the best program is the best machine contains no programs. It doesn't contain A, B, or C or
anything. All it does is listen for you to give it a BC. That's kind of a wild inversion.
And it turns out that's the actual machine that we want. And that's the one that gets built
and conquer the world. Yeah. So the analog is that a person is a program that actually consists of
no programs. But it makes all and make all possible programs. Because the person, the part of us
that's the person does not have, um, isn't the knowledge. It isn't the programs. It's program
creation thing like the the crest of the wave. I think a bit because knowledge, all the programs
and explanations and knowledge we've already made that could be run by any computer principle
unconsciously. So yeah, there is kind of a parallel there for the person like the turning machine
has no programs to run. It is it is the runner. The person has no, um, I guess
is not running any program other than program creating program. Maybe there's kind of I think
you can kind of think of this as like built in versus learned or created. And um, you know,
I'm I'm saying in a somewhat uh, revelatory way, but I think it's a common to everybody interested
in machine learning where they say, what if we made a system that instead of building in a
bunch of stuff, it figures it all out on its own. And so that was true of AlphaGo for instance,
where they say, oh, we're going to build in knowledge of these games. And then later on,
they I think made Alpha Star or a different program that said, actually, we're going to delete
all the knowledge of human games and have it figure it out how to be humans still, but without
building anything into it. So uh, this built in versus learned is uh, is key king. I think
everybody is interested in the algorithms, which you just say, hey, I it's a very simple algorithm,
but now we're going to let it run. And uh, therefore everything that uh, we hope it,
you know, all the value buildings we care about it can discover. They don't have to be built in from
the start. So that's true in general. Um, but anyway, I think what is different is that
people tend to be looking for some sort of performance that is is not about uh, this
qualitative distinction between non-universal universal. Um, those some people do. And then so I think
one thing that's interesting last week that I talked about was that I see like this uh,
flavor research that I'm interested in as like having three pillars. One of them starts with
paparian sort of evolutionary problem solving. Second, uh, is to take universality seriously.
And third is to focus on explanations, explanatory knowledge versus non-explanatory knowledge.
And in each case, you sort of are taking a view that is a little bit different from the mainstream.
And so if you focus on this universality piece, there is actually, uh, the most of the mainstream
doesn't take that seriously, I guess, uh, but there are people who do take it seriously.
Uh, for instance, uh, AIXI, uh, this is a Bayesian approach to saying, hey, I'm interested in
the set of all programs, um, an assistant which could somehow exploit that set, however they
approach it from an empiricist direction as opposed to this paparian evolutionary direction.
And so they end up taking kind of what I would expect to be I got a wrong turn.
Um, so you have to get all three pieces right. I suspect, um, the paparian side versus the empiricist side,
uh, the universality versus saying just like, uh, increase performance in some numerical way.
And then lastly, uh, looking at explanatory knowledge as being quite special.
But uh, any who? Uh, yeah.
I gotta hop off to make some lunch. So maybe next time stop and point.
Well, cool. Now because you're a universal, uh, mind, you're capable of doing this despite the fact you
were born unable to. So, uh, that says good illustration of any as a universality.
I spent the space, the length-making program only recently.
Nice. Well, cool.
All right. Thank you.
And it ended there.
Adios, everybody.
Thanks for joining.
