Something the Structuralists pointed out is that if it makes no difference, then it is not different.
There are many thought experiments that appear to mean something, but actually applying this rule clear up.
Consider the idea of a person in a parallel universe where parallel universes cannot affect one another. It is not that this person does not have a "telephone" to this universe, it is that there will never be a way to contact this universe. Now this is the same situation as there being no such person. If there is no difference then they are not different!
Applying Occam's Razor here we just dismiss the "idea of a person in a parallel universe where parallel universes cannot affect one another." If it is the same as the idea that there is no such person, and if they are the same then why address the non-existence of a person with such flowery, appearing-to-say-something-but-not-actually-saying-anything language.
This issue of "difference" is the essence of truth. If things are not different then they are the same, and it is the ability to separate those things that are different from those that are the same which is the essence of truth.
Truth is an extraordinary thing, and it lurks deep within the structures of the universe. That saying "the truth will out" is fundamental because if "a truth" will never "out" then its a false distinction. Just like the supposed person in this uncontactable universe: they will never show up and so they are a false distinction from the idea they exist. They are the same idea as not existing, just dressed up. No difference.
This seems harsh. Surely not existing is a positive statement with evidence, while we can entertain the idea of people in distant universes? But the point here is that we are also entertaining the idea that these distant universes are uncontactable. We have tricked our self into thinking about something that we can't think about. Something must give. To be thinking about people in distant universes they must be contactable else how would we be thinking of them: the door must be open in some way. But to then close the door by saying parallel universe do not interact is to have a door which is open and closed. Which is it? We have tricked our self. So we need be strict: door open or closed we must chose. This is the essence of truth is forces us to decide.
Truth outs cos it forces us things to decide. This sounds a bit Wave Collapse. When systems get uncovered then decisions are made; door become either open are closed but not both.
I'm just debugging a long project and fudged decisions were made during its construction. I knew eventually they would need to be solved, and its interesting that nothing is ever hidden. In testing these fudges have all come out as problematic behaviour, and each one has been forced to decide.
Its reminiscent of Hash Collisions. Hashes look like magic. We can hash any file and get a "unique" short string that seems to identify it, no matter how long the file. Magic.
But of course are tricking our self. There are many more possible files than hashes. But we are fudging the fact that it is just "very unlikely" for two different files to have the same hash. Unlikely but not impossible and clever techniques like "rainbow tables" can enable these "collisions" to be found. It means for example a hacker can masquerade a file as one file when in actual fact its another file with the same hash. The "truth will out" that hashes are not quite, altho very close, to what we really want which is the impossible "unique hash." Its the same problem as magical compression. On average there is only one compression and that is the file itself. However the real world is not "on average" since the vast number of possible files are also nonsense from a human perspective. Compression just reorders this list so the useful files get mapped to smaller "compressed" files, and the useless files end up being bigger than original. No magic, the truth does out.
Differences may be small like hash collisions, or subtle bugs in a program, but one way or another these people in distant universes are able to contact us and let us know they exist.
So what of two programs that have different code but with the exact same output? Well then we say they are the same. The *truth* is that they are the same.
I will need think some more on the implications of this.
Suppose two 1-ary functions with different code A,B have identical output:
A(x) == B(x) for all x.
Then we say they are the same.
Now suppose there is a function that can produce a unique hash of the source code of a function. H(x). This is essentially a Godel Numbering function in that it maps functions into the Countable Numbers (unnecessary step since source code is already a number but lets ignore that).
There must be an infinite number of function that do this H1(x) = H2(x) = Hi(x) for all x.
...run out of time...
essentially however can we get a contradiction like we have before for functions that examine their own process?
Essentially can a function change its own source code depending upon a dynamic result? Really into nitty gritty of coding here
to be continued...
===
Obvious continuation here is F(x) = G which outputs a function. So we have the following syntax
F(x)(y) which is the function returned by F being bound to y.
===
Putting that together:
So we have 1 definition of same (the one we are plugging here):
A(x) == B(x) for all x.
Then we say they are the same.
And another S(x) which returns the unique hash of the source code of x. Using S we say that
S(A) == S(B) iff A and B are the same source code.
We can also say that S(A)(x) = A(x) given that the output of S is also the source code.
10 GOTO 10
Is source code. Feed "10 GOTO 10" into a BASIC emulator taking a string and it will run this code. "10 GOTO 10" is also a binary number using 8-bit ASCII encoding, altho a very big one, so it can even be passed to Principia Mathematic whose formulae bind to integers. Anyway...
Lets ignore use/mention distinction. "10 GOTO 10" as a string of input, is no different from "10 GOTO 10" putting the emulator machine into a loop.
So the classic Turing program:
AntiQuine(x) {
if (S(x) == S(AntiQuine) {
return "10 GOTO 10";
} else {
return S(AntiQuine);
}
}
AntiQuine(x) takes a program x and is a Quine (a function that when run outputs its source code) unless x is itself when it outputs something else.
Now what is the source code of function AntiQuine()?
Well we have two ways of getting it.
(1) the definition above
(2) The expression S(AntiQuine)
Definition (1) is fine, but (2) is a contradiction. If S(x) really does produce the source code for x, then by definition if S(x) == S(AntiQuine) then this is not the source-code it produces.
The existence of S(x) can be used to create a contradiction, so there is no S(x) which produces source-code for all x. And then the problem for which x is it valid and we don't know, so the function is meaningless.
Therefore the appealing idea of defining function equality by its source code is a problem as there is no function that can reliably determine the source code of all function.
We are left with equating things simply by their output or appearance. What we could call Duck Truth, after "if it looks like a duck and it sounds like a duck it is probably a duck." The idea of getting to the heart of a duck and somehow getting a unique source-code or "identity" is a myth. Truth is not like this.
Seemingly arbitrary until we realise we are living a life within which we think we have the source code to ourselves! Habitually in the West at least we think we have a unique handle on "ourself" we can somehow do S(x) on ourself and get the "truth" of our self.
It we have ever surprised our self by being better or worse than we thought of our self we will see that we are actually a living thing going through its life without an instruction manual and without anyone holding the reigns. We must take a "duck type" approach to our self and view who and what we are from the outside like everyone else. There is no magic S(x) to get to our source code.
Okay that is a destabilising thought when we thought we were "in control." But it doesn't mean we are suddenly "out of control", it just brings into focus the actual nature of life as something being lived right now, and in this Now we are learning all the time about ourselves and the world, feeling every moment, and every breath as it happens, and being alert to all the subtleties and nuances of what is really an ever changing and very often unfamiliar world.
I heard it said that the closer we get to Jhana or Enlightenment the more unfamiliar the world seems. Not in a scary way, just in a seeing it for the first time way. The problem with S(x) is that once we believe we have the source-code we give up on life and experiencing it, thinking we have it in the can.
And this is the exact problem of Ego. Getting our own source code, we think there is nothing left to do and we fossilise. We live an ever more unrealistic life, the source code we think we have getting further and further away from the "duck type" that we are. It seems bliss to begin with having a certain self, but soon it becomes stale and suffocating and eventually we die inside.
But all that said the post is about the hidden structures never escaping the duck typing. If it is not a duck, despite it having no source-code or fundamental essence to grasp and hold up, it never-the-less will never be able to fake it forever. The truth will out.
So there is a subtle balance here between the belief that things just are what they are we know that as source code, and things being totally uncertain and masquerading as anything the want.
Truth is the middle ground. You do not know the "inside" of a thing before it has quacked. But at the same time something that is not a duck will eventually reveal itself as not a duck.
A but of circular argument cos we are just saying that
A(x) = B(x) for all x.
Given enough x we will get ever more certain that A(x) really does B(x).
Truth is the awareness that eventually a duck and a goose will appear different, without appealing to some fixed essence and source code of "duck" or "goose" that we must, or even can get hold of.
===
HOWEVER all that said if you just take data and try and fudge things to work you will get lost. Effective interaction with the world involves creating a model (an understanding) and what is "really" going on. Finding the "pattern" in something gives us extraordinary power to interact with it effectively.
Even with AI all that data is just being used to create a model.
And its this method of creating a "model" which becomes the "model" we use for Truth. Once a model has been found it's tempting to think we are now looking at the hidden "reality." The confusing veil of appearance has been pulled aside and we can see the workings of God's creation. Or so it must have seemed to the likes of Newton et al.
But thing to notice is that if "Model" is superior to "Data", that that itself is a Model (call it M0), and the data is all the other processes of modelling. So we are saying that the idea of Model being superior to Data is itself superior to all the smaller instance of Models like "F=Ma" being superior to all the data collected showing the linear relationship between M and a and F.
But if all the other instances of models summarising data are data themselves then so is M0. So M0 is both Data and Model. In which case how can it be superior to itself? Anyway small contradiction.
But the point of that exercise was to show that "models" are not "real." They are models. Humans brains and computers and AI do modelling. But clearly those models are not "real" cos if they were why do we need models, just take the "real" things themselves. I mean a tennis ball is a real thing. Why waste time in physics class modelling it, if all we are going to discover is what is "real" when we have the thing in our hands. This is the whole issue of phenomenon and noumenon, and Materialism and Idealism.
Anyway with reference to this post the short answer is that models give us ways of looking at the world, like spectacles that bring things into focus. BUT they are not "windows into the soul" of the world, or the ticking of God's creation. There is no such window, and there is no such hidden mechanism, or Truth waiting to be discovered. BUT we must not go into nihilism and think that means that there is no point in modelling and discovery. Without modelling, science and discovering we will not discover the Truth. We will not force ourselves to make all those little decisions that bring the world into focus. Its just that when it is in better focus, we do not conclude it was always like this waiting to be seen (cos clearly we only know that with the hindsight of having focused things) and also we do not know when and where the next focusing will be. There is no "end point" or "fixed matter" there to be found. But this does not in any way diminish the power of exploration and modelling.
Problem with America is commented on many times is Gold Rush. Americans think just one more mountain, one more river, one more exploratory dig and they will hit the motherload of all motherloads. No such thing, it is just another mountain, river, exploratory dig forever until they are tired and die. This is no way to live.