I have said this several times and you simply haven’t engaged with it at all, so this is my last attempt.
If you are computational like a literal computer, it does imply blindly executing it. that is what a computer would do, just execute the loop.
This is just flatly false. Of course blindly executing the code is one thing a literal computer can do when faced with it, but there are others, such as translating it into directly-machine-executable instructions, or checking it for certain classes of bugs, or counting the words in it, or executing it while watching for easily-spotted infinite loops.
The fact that human beings looking at the code don’t blindly execute it tells you nothing about whether human beings are computational.
It is still not clear to me whether your argument is that because humans reading the code do something smarter than executing it blindly, therefore they are doing something non-computational, therefore AI-running-on-a-computer can’t do what humans do. Maybe it’s something else. But if it’s something else, you haven’t successfully made clear to me (or, so far as I can tell, to any other readers) exactly what that is. The OP promised, in so many words, “a clearly structured argument”, but it does not contain a clearly structured argument.
>This is just flatly false. Of course blindly executing the code is one thing a literal computer can do when faced with it, but there are others
I am talking about a programmable computer. And I said the program is meant to be executed. It does NOT lead to an endless loop, as it can be halted or left or transcended uncomputationally. That is the whole point of the argument. The brand new internal computer system you use to execute it can be halted uncomputationally.
That is really an important information, otherwise this is rather confusing right there, it might get someone rather confused if you miss that crucial point.
If you ignore the instruction that the program is to be executed the demonstration does not work, and the whole reasoning around it does not work either, as it is in the context of that instruction.
>The OP promised, in so many words, “a clearly structured argument”, but it does not contain a clearly structured argument.
This is unfortunately 100% true. The commentary I hope is somewhat clearly structured (hence bolding etc), but the post itself is not an argument. It is meant as a demonstration.
Meaning it is meant to demonstrate something that is already the case. It is meant to be valid and true, not to be “convincing”. There is not need to convince anyone of this, and attempting to do so will just lead to tie my head up in knots and possibly others too😅.
I edited my post appropriately, my bad. Thank a lot for pointing it out!
Again just for clarity you can execute and halt the following loop by reading it:
START: START COMMENT This kind of loop cannot be left computationally-deterministically but it can be left or halted deterministically-uncomputably or chaotically-randomly². END COMMENT GOTO START
Maybe that is a much better demonstration? As it leaves the whole meta and trans-computational stuff aside.
²which is not computationally either (not talking about classical chaos or pseudo-randomness here, as that can be computed in principle—although not in practice, but uncomputational chaos, whether deterministic or stochstically-deterministically, meaning with a quantifiable probability or in an i n d e t e r m i n s t i c way that is not stochastically quantifiable)
I think the difference between computational loop and uncomputational loop can be explained by a computational loop being at the very least a loop between two states. An uncomputational loop is just a loop going around and back to a single state.
As for a program you need at least two states (For example S start and E end).
The mere state “loop” is not a program, it is just a loop. O
♾
An instruction can be open ended: S start. That is not a computer program. It cannot be computed, as it is open-ended. You cannot tell a computer just start, and do nothing else. That is just a start of some kind, not a computer program, haha. Maybe in this case the start into a new future of clear reasoning about uncomputability, who knows?
It seems to me in many ways illustrations would be more useful for this than words. As in a certain way, it seems the structure becomes more clear by way of illustration than verbal elucidation. So again, also thanks for giving me some reason that maybe the structure can be made clearer!
I feel I am a bit too serious about this. I used to think computers will solve a lot of my problems too and even perhaps digitally revive me after I am dead😅. They do solve MANY problems, but not as many as I thought.
I think this past belief still haunts me a bit, so that I take this whole thing more heavily than it needs to be. Computers work great. My brain works, at least somewhat okayishly, enough to write this to you. Heavy is heavy illness or heavy conflict. Not really this kind of question or conversation🙏.
I believe that insight will at some point gain more popularity in AI culture, as it just becomes clear that computers do not fulfill all of our expectations, and that there are some false assumptions about what the brain and the mind are going around (Penrose addresses those things quite well lately, as he now tends to leave aside the OR stuff more that seems a bit questionable).
You say that the program is meant to be executed. But then you say it is meant to be “halted or left or transcended”. If you do those things then you are not executing the program any more. You might be doing something _better_ than executing it, but in any case you are doing something _different_.
It seems like you are saying (1) that a human being can execute the program but then halt/leave/transcend it, and (2) that a computer cannot. But this is only true if you (1) allow “execute” to be used in a metaphorical sense when talking about what the human being does but (2) don’t allow it to be so used when talking about what the computer does.
It is perfectly possible for a computer to “execute” code in a way that allows it to stop when (for instance) it notices certain kinds of lack of progress. I gave a simple example elsewhere in this thread. So it isn’t at all true that humans can execute code while retaining some ability to stop doing so but computers can’t; computers can do that too.
Computers can’t (at present) execute code while understanding what English-language comments in the code say and acting accordingly because computers don’t yet understand English very well. It could turn out that this is because for some reason understanding human language is impossible for merely-computational systems, but I see no reason to think so and you haven’t offered any.
Of course if you take your code, turn it into an executable program, and make that the program the computer is executing then it will loop for ever. A human being won’t do that because you don’t have any way to make a program the program the human is executing. (Fortunately, perhaps.) This isn’t a difference between what humans can do and what computers can do, it’s a difference between how you use the term “execute” when talking about humans and when talking about computers.
Your “much better demonstration” still does not demonstrate anything, at least not in the sense of conveying anything useful to my mind.
I am not sure exactly what you mean by “state”, but a machine-language program consisting of a single instruction saying “branch to the same address this instruction is at” doesn’t loop “between two states” in any useful sense. When executing this loop, the computer’s program counter always has the same value, all its registers keep the same value, and the contents of memory do not change.
>This is just flatly false. Of course blindly executing the code is one thing a literal computer can do when faced with it, but there are others, such as translating it into directly-machine-executable instructions, or checking it for certain classes of bugs, or counting the words in it, or executing it while watching for easily-spotted infinite loops.
I said the program is to be executed! If you say I choose to not execute it and choose to process it in other ways, then the argument doesn’t work.
But a computer cannot do that, it cannot decline being programmed, unless it is computer that has programming functionality disabled (which obviously is not the kind of computer I am talking about). A functioning computer simply executes a program if you give it and execute it.
That is why the reasoning is valid, I executed the program and validated it (obviously it is easy to validate, as it is just a simple START: GOTO START loop). Of course if you have a high level computer that just does not permit programming by an end user, the argument does not work, as the program is not being executed. But is simple to just access a new low level computer internally which can be easily programmed, which is what I did. Maybe that should be part of the instruction. Because it is true we have a lot of internal quasi-computations going on already. I say quasi, because I notice how tricky it can be to actually build a precisely functioning computer inside of your mind, a lot of our computations are very fuzzy and could be wrong potentially (I tried adding simple 3-digit numbers and it is surprisingly tricky).
The program is not merely be executed of course, as it not about blindly executing; as that would not be very fruitful, it is about mindfully doing so.
It is a simple GOTO loop. The comment is a comment is not part of the program!
You can also attempt to execute the comment as a START GOTO START loop (you can basically ignore the text apart from This loop cannot be left computationally; which is logically true, as the computation is just a START GOTO START loop which cannot be left computationally if executed correctly), but that leads to an inconsistency if the text in-between is processed. You can correctly spot the inconsistency and exit the loop and thus execute the instruction (which is not a program) correctly. A computer cannot, as that is not part of the program, but the commentary (obviously, as it says START comment, and this comment here is outside the program in the post, in the comment section, just to remind you). It is not part of the program described in the post and to be executed by reading.
Seems easy enough to understand. It seems you are doing meta-computation or unrelated computations, which as I said is not part of the program described which is crucial for the reasoning to make sense.
You cannot compile the comment correctly, as it is not a computational instruction. It is a comment, and such the only way for the compiler to treat it correctly is to discard it.
The point of my argument is to look at assumptions and see if they are true, not to assume some assumptions are true and inductively conclude from that they are true. It might be the assumptions we have are false.
If you want to execute the program correctly, first delete the comment, and then run the program.
Of course if you want to understand the program you can read the comment. That is what a comment is for, as you know but it seems I have to point out with all the complex commentary😉. But you cannot understand this program without running it, as it is a program that runs by reading it.
>The fact that human beings looking at the code don’t blindly execute it tells you nothing about whether human beings are computational.
That is true. It seems you tried to blindly execute the comment, but you cannot do that either, as it is not a program, but the comment to explain the program (which is a simple loop, but exists in a context; same way that a simple loop exists in a context in a larger program, or even a computer that is only running a simple loop exists in a larger context; if you can imagine a simple computer that does nothing but run a START GOTO START or however that is translated into machine code—I don’t really know those 01111011 numbers).
>The OP promised, in so many words, “a clearly structured argument”, but it does not contain a clearly structured argument.
If you ignore the main point which is that the program is a program to be executed and the comment is a comment, then it is not an argument but a jumble of words. But that is not what I said! The program can be executed and then elucidations makes sense.😃
However unfortunately I did make a bit of a blunder here, and it does make you 100% correct here. This is not an argument!
I corrected it by editing my post. My bad.
It is not meant to “convince” but to be true and valid. Being “convincing” is not good enough. So more like a proof, although as it is a program to be executed it is something different than an ordinary proof. I guess a demonstration that leads to a certain true conclusion in a deterministic way (as the loop is not an endless loop uncomputationally, the program can be executed and successfully halted uncomputationally!).
But you probably cannot correctly understand this program unless you loosen your 99.99999% assumption that a human brain works solely computationally, as it leads to a logical inconsistency which might leady you to slip up and read a comment as a program as you get into meta-computational loops in your own brain (which BTW a functional computer would never do unless it is massively malfunctioning, oopsie my internal computer malfunctions, as I make this mistake sometimes it seems😅🤨🙄😑).
I have said this several times and you simply haven’t engaged with it at all, so this is my last attempt.
This is just flatly false. Of course blindly executing the code is one thing a literal computer can do when faced with it, but there are others, such as translating it into directly-machine-executable instructions, or checking it for certain classes of bugs, or counting the words in it, or executing it while watching for easily-spotted infinite loops.
The fact that human beings looking at the code don’t blindly execute it tells you nothing about whether human beings are computational.
It is still not clear to me whether your argument is that because humans reading the code do something smarter than executing it blindly, therefore they are doing something non-computational, therefore AI-running-on-a-computer can’t do what humans do. Maybe it’s something else. But if it’s something else, you haven’t successfully made clear to me (or, so far as I can tell, to any other readers) exactly what that is. The OP promised, in so many words, “a clearly structured argument”, but it does not contain a clearly structured argument.
>This is just flatly false. Of course blindly executing the code is one thing a literal computer can do when faced with it, but there are others
I am talking about a programmable computer. And I said the program is meant to be executed. It does NOT lead to an endless loop, as it can be halted or left or transcended uncomputationally. That is the whole point of the argument. The brand new internal computer system you use to execute it can be halted uncomputationally.
That is really an important information, otherwise this is rather confusing right there, it might get someone rather confused if you miss that crucial point.
If you ignore the instruction that the program is to be executed the demonstration does not work, and the whole reasoning around it does not work either, as it is in the context of that instruction.
>The OP promised, in so many words, “a clearly structured argument”, but it does not contain a clearly structured argument.
This is unfortunately 100% true. The commentary I hope is somewhat clearly structured (hence bolding etc), but the post itself is not an argument. It is meant as a demonstration.
Meaning it is meant to demonstrate something that is already the case. It is meant to be valid and true, not to be “convincing”. There is not need to convince anyone of this, and attempting to do so will just lead to tie my head up in knots and possibly others too😅.
I edited my post appropriately, my bad. Thank a lot for pointing it out!
Again just for clarity you can execute and halt the following loop by reading it:
START: START COMMENT This kind of loop cannot be left computationally-deterministically but it can be left or halted deterministically-uncomputably or chaotically-randomly². END COMMENT GOTO START
Maybe that is a much better demonstration? As it leaves the whole meta and trans-computational stuff aside.
²which is not computationally either (not talking about classical chaos or pseudo-randomness here, as that can be computed in principle—although not in practice, but uncomputational chaos, whether deterministic or stochstically-deterministically, meaning with a quantifiable probability or in an i n d e t e r m i n s t i c way that is not stochastically quantifiable)
I think the difference between computational loop and uncomputational loop can be explained by a computational loop being at the very least a loop between two states. An uncomputational loop is just a loop going around and back to a single state.
As for a program you need at least two states (For example S start and E end).
The mere state “loop” is not a program, it is just a loop. O
♾
An instruction can be open ended: S start. That is not a computer program. It cannot be computed, as it is open-ended. You cannot tell a computer just start, and do nothing else. That is just a start of some kind, not a computer program, haha. Maybe in this case the start into a new future of clear reasoning about uncomputability, who knows?
It seems to me in many ways illustrations would be more useful for this than words. As in a certain way, it seems the structure becomes more clear by way of illustration than verbal elucidation. So again, also thanks for giving me some reason that maybe the structure can be made clearer!
I feel I am a bit too serious about this. I used to think computers will solve a lot of my problems too and even perhaps digitally revive me after I am dead😅. They do solve MANY problems, but not as many as I thought.
I think this past belief still haunts me a bit, so that I take this whole thing more heavily than it needs to be. Computers work great. My brain works, at least somewhat okayishly, enough to write this to you. Heavy is heavy illness or heavy conflict. Not really this kind of question or conversation🙏.
I believe that insight will at some point gain more popularity in AI culture, as it just becomes clear that computers do not fulfill all of our expectations, and that there are some false assumptions about what the brain and the mind are going around (Penrose addresses those things quite well lately, as he now tends to leave aside the OR stuff more that seems a bit questionable).
You say that the program is meant to be executed. But then you say it is meant to be “halted or left or transcended”. If you do those things then you are not executing the program any more. You might be doing something _better_ than executing it, but in any case you are doing something _different_.
It seems like you are saying (1) that a human being can execute the program but then halt/leave/transcend it, and (2) that a computer cannot. But this is only true if you (1) allow “execute” to be used in a metaphorical sense when talking about what the human being does but (2) don’t allow it to be so used when talking about what the computer does.
It is perfectly possible for a computer to “execute” code in a way that allows it to stop when (for instance) it notices certain kinds of lack of progress. I gave a simple example elsewhere in this thread. So it isn’t at all true that humans can execute code while retaining some ability to stop doing so but computers can’t; computers can do that too.
Computers can’t (at present) execute code while understanding what English-language comments in the code say and acting accordingly because computers don’t yet understand English very well. It could turn out that this is because for some reason understanding human language is impossible for merely-computational systems, but I see no reason to think so and you haven’t offered any.
Of course if you take your code, turn it into an executable program, and make that the program the computer is executing then it will loop for ever. A human being won’t do that because you don’t have any way to make a program the program the human is executing. (Fortunately, perhaps.) This isn’t a difference between what humans can do and what computers can do, it’s a difference between how you use the term “execute” when talking about humans and when talking about computers.
Your “much better demonstration” still does not demonstrate anything, at least not in the sense of conveying anything useful to my mind.
I am not sure exactly what you mean by “state”, but a machine-language program consisting of a single instruction saying “branch to the same address this instruction is at” doesn’t loop “between two states” in any useful sense. When executing this loop, the computer’s program counter always has the same value, all its registers keep the same value, and the contents of memory do not change.
>This is just flatly false. Of course blindly executing the code is one thing a literal computer can do when faced with it, but there are others, such as translating it into directly-machine-executable instructions, or checking it for certain classes of bugs, or counting the words in it, or executing it while watching for easily-spotted infinite loops.
I said the program is to be executed! If you say I choose to not execute it and choose to process it in other ways, then the argument doesn’t work.
But a computer cannot do that, it cannot decline being programmed, unless it is computer that has programming functionality disabled (which obviously is not the kind of computer I am talking about). A functioning computer simply executes a program if you give it and execute it.
That is why the reasoning is valid, I executed the program and validated it (obviously it is easy to validate, as it is just a simple START: GOTO START loop). Of course if you have a high level computer that just does not permit programming by an end user, the argument does not work, as the program is not being executed. But is simple to just access a new low level computer internally which can be easily programmed, which is what I did. Maybe that should be part of the instruction. Because it is true we have a lot of internal quasi-computations going on already. I say quasi, because I notice how tricky it can be to actually build a precisely functioning computer inside of your mind, a lot of our computations are very fuzzy and could be wrong potentially (I tried adding simple 3-digit numbers and it is surprisingly tricky).
The program is not merely be executed of course, as it not about blindly executing; as that would not be very fruitful, it is about mindfully doing so.
It is a simple GOTO loop. The comment is a comment is not part of the program!
You can also attempt to execute the comment as a START GOTO START loop (you can basically ignore the text apart from This loop cannot be left computationally; which is logically true, as the computation is just a START GOTO START loop which cannot be left computationally if executed correctly), but that leads to an inconsistency if the text in-between is processed. You can correctly spot the inconsistency and exit the loop and thus execute the instruction (which is not a program) correctly. A computer cannot, as that is not part of the program, but the commentary (obviously, as it says START comment, and this comment here is outside the program in the post, in the comment section, just to remind you). It is not part of the program described in the post and to be executed by reading.
Seems easy enough to understand. It seems you are doing meta-computation or unrelated computations, which as I said is not part of the program described which is crucial for the reasoning to make sense.
You cannot compile the comment correctly, as it is not a computational instruction. It is a comment, and such the only way for the compiler to treat it correctly is to discard it.
The point of my argument is to look at assumptions and see if they are true, not to assume some assumptions are true and inductively conclude from that they are true. It might be the assumptions we have are false.
If you want to execute the program correctly, first delete the comment, and then run the program.
Of course if you want to understand the program you can read the comment. That is what a comment is for, as you know but it seems I have to point out with all the complex commentary😉. But you cannot understand this program without running it, as it is a program that runs by reading it.
>The fact that human beings looking at the code don’t blindly execute it tells you nothing about whether human beings are computational.
That is true. It seems you tried to blindly execute the comment, but you cannot do that either, as it is not a program, but the comment to explain the program (which is a simple loop, but exists in a context; same way that a simple loop exists in a context in a larger program, or even a computer that is only running a simple loop exists in a larger context; if you can imagine a simple computer that does nothing but run a START GOTO START or however that is translated into machine code—I don’t really know those 01111011 numbers).
>The OP promised, in so many words, “a clearly structured argument”, but it does not contain a clearly structured argument.
If you ignore the main point which is that the program is a program to be executed and the comment is a comment, then it is not an argument but a jumble of words. But that is not what I said! The program can be executed and then elucidations makes sense.😃
However unfortunately I did make a bit of a blunder here, and it does make you 100% correct here. This is not an argument!
I corrected it by editing my post. My bad.
It is not meant to “convince” but to be true and valid. Being “convincing” is not good enough. So more like a proof, although as it is a program to be executed it is something different than an ordinary proof. I guess a demonstration that leads to a certain true conclusion in a deterministic way (as the loop is not an endless loop uncomputationally, the program can be executed and successfully halted uncomputationally!).
But you probably cannot correctly understand this program unless you loosen your 99.99999% assumption that a human brain works solely computationally, as it leads to a logical inconsistency which might leady you to slip up and read a comment as a program as you get into meta-computational loops in your own brain (which BTW a functional computer would never do unless it is massively malfunctioning, oopsie my internal computer malfunctions, as I make this mistake sometimes it seems😅🤨🙄😑).