• Re: Correcting the definition of the halting problem --- Computable fun

    From =?UTF-8?B?QW5kcsOpIEcuIElzYWFr?=@21:1/5 to olcott on Mon Mar 24 15:49:23 2025
    On 2025-03-24 14:11, olcott wrote:
    On 3/24/2025 12:35 PM, dbush wrote:
    On 3/24/2025 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string
    for DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD
    halts when executed directly.


    given an input of the function domain it can
    return the corresponding output.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.



    The HHH you implemented is computing *a* computable function, but it's
    not computing the halting function:


    The whole point of this post is to prove that
    no Turing machine ever reports on the behavior
    of the direct execution of another Turing machine.


    Given any algorithm (i.e. a fixed immutable sequence of instructions)
    X described as <X> with input Y:

    A solution to the halting problem is an algorithm H that computes the
    following mapping:

    (<X>,Y) maps to 1 if and only if X(Y) halts when executed directly

    Cannot possibly be a computable function because computable
    functions cannot possibly have directly executing Turing
    machines as their inputs.

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.

    While the inputs to TMs are restricted to strings, there is no such such restriction on computable functions. The vast majority of computable
    functions of interest do *not* have strings as their domains, yet they
    remain computable functions (a simple example would be the parity
    function which maps NATURAL NUMBERS (not strings) to yes/no values.)

    You really need to learn the difference between a Halt decider and the
    halting function. They are distinct things.

    André

    --
    To email remove 'invalid' & replace 'gm' with well known Google mail
    service.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QW5kcsOpIEcuIElzYWFr?=@21:1/5 to olcott on Mon Mar 24 16:49:34 2025
    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.p


    Maybe when pure math objects. In every model of
    computation they seem to always have inputs. https://en.wikipedia.org/wiki/Computable_function

    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.

    The crucial point is that the domains of computable functions are *not* restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such
    such restriction on computable functions.

    The vast majority of computable functions of interest do *not* have
    strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL NUMBERS
    (not strings) to yes/no values.)


    Since there is a bijection between natural numbers
    and strings of decimal digits your qualification
    seems vacuous.

    There is not a bijection between natural numbers and strings. There is a one-to-many mapping from natural numbers to strings, just as there is a one-to-many mapping from computations (i.e. turing machine/input string
    pairs, i.e. actual Turing machines directly running on their inputs) to strings.

    André


    --
    To email remove 'invalid' & replace 'gm' with well known Google mail
    service.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QW5kcsOpIEcuIElzYWFr?=@21:1/5 to olcott on Mon Mar 24 17:05:55 2025
    On 2025-03-24 17:04, olcott wrote:
    On 3/24/2025 5:49 PM, André G. Isaak wrote:
    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.p


    Maybe when pure math objects. In every model of
    computation they seem to always have inputs.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.

    The crucial point is that the domains of computable functions are
    *not* restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such
    such restriction on computable functions.

    The vast majority of computable functions of interest do *not* have
    strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL
    NUMBERS (not strings) to yes/no values.)


    Since there is a bijection between natural numbers
    and strings of decimal digits your qualification
    seems vacuous.

    There is not a bijection between natural numbers and strings. There is
    a one-to-many mapping from natural numbers to strings, just as there
    is a one-to-many mapping from computations (i.e. turing machine/input
    string pairs, i.e. actual Turing machines directly running on their
    inputs) to strings.

    André



    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When III is emulated by pure emulator EEE for any finite
    number of steps of emulation according to the semantics
    of the x86 language it never reaches its own "ret"
    instruction final halt state THUS DOES NOT HALT.

    When III is directly executed calls an EEE instance
    that only emulates finite number of steps then this
    directly executed III always reaches its own "ret"
    instruction final halt state THUS HALTS.

    And that has what, exactly, to do with the post you are allegedly
    responding to?

    André

    --
    To email remove 'invalid' & replace 'gm' with well known Google mail
    service.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QW5kcsOpIEcuIElzYWFr?=@21:1/5 to olcott on Mon Mar 24 18:00:26 2025
    On 2025-03-24 17:42, olcott wrote:
    On 3/24/2025 6:05 PM, André G. Isaak wrote:
    On 2025-03-24 17:04, olcott wrote:


    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When III is emulated by pure emulator EEE for any finite
    number of steps of emulation according to the semantics
    of the x86 language it never reaches its own "ret"
    instruction final halt state THUS DOES NOT HALT.

    When III is directly executed calls an EEE instance
    that only emulates finite number of steps then this
    directly executed III always reaches its own "ret"
    instruction final halt state THUS HALTS.

    And that has what, exactly, to do with the post you are allegedly
    responding to?

    André



    THE INPUT FINITE STRING DOES SPECIFY RECURSIVE EMULATION.

    The behavior specified by the finite string input to a
    computable function implemented on a model of computation

    does differ from the direct execution of this same finite
    string because the direct execution avoids the pathological
    self-reference that causes the recursive emulation.

    THE INPUT FINITE STRING DOES SPECIFY RECURSIVE EMULATION.

    In the post you were responding to I pointed out that computable
    functions are mathematical objects. The above copypasta doesn't address
    this.

    I pointed out that the domain of a computable function needn't be a
    string. The above copypasta doesn't address this.

    I pointed out that there is no bijection natural numbers and strings,
    but rather a one-to-many relation. The above copypasta doesn't address this.

    I pointed out that the exact same sort of one-to-many relation exists
    between computations and strings. The above copypasta doesn't address this.

    --
    To email remove 'invalid' & replace 'gm' with well known Google mail
    service.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Mon Mar 24 21:28:28 2025
    On 3/24/25 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string
    for DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD halts
    when executed directly.


    given an input of the function domain it can
    return the corresponding output. https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.


    Nope, got the requirement a bit sideways. The only CAN compute the
    mapping there code generates as the output, but MUST compute the mapping
    they are defined to compute to be correct.

    Thus, since the Halting Mapping is from the description of the Program,
    to whether that program itself when run will halt, if that mapping was computable, there would exist a program that could do it. Since there
    isn't one, as proven by Turing, the Halting Mapping isn't a Computable Function.

    Your flaw is that you PRESUME computability just because you are writing
    a program, and fail to understand that not all functions are, in fact, computable

    You run into this confusion because you just failed to learn the meaning
    of the basic terms of the field, and just made up your own, so you
    became just an ignorant lying fraudster.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?B?QW5kcsOpIEcuIElzYWFr?=@21:1/5 to olcott on Mon Mar 24 19:46:38 2025
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable
    functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable functions.

    The halting problems asks whether there *is* an algorithm which can
    compute the halting function, but the halting function itself is a
    purely mathematical object which exists prior to, and independent of,
    any such algorithm (if one existed).

    For example pure math functions don't have any specific
    storage like a tape or machine registers.

    No they don't. Why would they? A mathematical function is simply a
    static mapping from elements of a domain to elements of a codomain.

    This also would seem to mean that they would require
    some actual input.


    The above copypasta doesn't address this.

    I pointed out that the domain of a computable function needn't be a
    string. The above copypasta doesn't address this.


    When implemented using an actual model of computation
    some concrete form or input seems required.

    I pointed out that there is no bijection natural numbers and strings,

    finite strings of decimal digits: [0123456789]

    but rather a one-to-many relation. The above copypasta doesn't address
    this.

    "12579" would seem to have a bijective mapping to
    a single natural number.

    The natural number 12579 maps equally to the (decimal) string '012579', '0012579',... so there is no bijection.


    I pointed out that the exact same sort of one-to-many relation exists
    between computations and strings. The above copypasta doesn't address
    this.


    I pointed out above that the finite string of x86
    machine code correctly emulated by EEE DOES
    NOT MAP TO THE BEHAVIOR OF ITS DIRECT EXECUTION.

    But I was not talking about EEE. I was talking about the halting
    function. All you seem to be claiming above is that whatever EEE
    computes, it isn't the halting function. Everyone already agrees to that.

    André

    --
    To email remove 'invalid' & replace 'gm' with well known Google mail
    service.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Tue Mar 25 08:32:25 2025
    Am Mon, 24 Mar 2025 22:29:06 -0500 schrieb olcott:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable
    functions are mathematical objects.
    Computable functions implemented using models of computation would
    seem to be more concrete than pure math functions.
    Those are called computations or algorithms, not computable
    functions.
    https://en.wikipedia.org/wiki/Pure_function Is another way to look at
    computable functions implemented by some concrete model of
    computation.
    And not all mathematical functions are computable, such as the halting
    function.

    The halting problems asks whether there *is* an algorithm which can
    compute the halting function, but the halting function itself is a
    purely mathematical object which exists prior to, and independent of,
    any such algorithm (if one existed).
    None-the-less it only has specific elements of its domain as its
    entire basis. For Turing machines this always means a finite string
    that (for example) encodes a specific sequence of moves.
    False.  *All* turing machine are the domain of the halting function,
    and the existence of UTMs show that all turning machines can be
    described by a finite string.
    You just aren't paying enough attention. Turing machines are never in
    the domain of any computable function. <snip>
    Fine, their descriptions are, and their behaviour is computable -
    by running them.

    The math halting function is free to "abstract away" key details that
    change everything. That is why I have never been talking about the
    pure math and have always been referring to its implementation in a
    model of computation.
    What details?

    There are no details abstracted away.  The halting function is simply
    uncomputable.
    When the measure of the behavior specified by a finite string input DD
    is when correctly emulated by HHH then DD can't reach its own final halt state then not-halting is decidable.
    Circular reasoning. You'll have to prove HHH simulates correctly first.

    A halt decider cannot exist
    So again, you explicitly agree with the Linz proof and all other proofs
    of the halting function.

    because the halting problem is defined incorrectly
    There's nothing incorrect about wanting something that would solve the
    Goldbach conjecture and make unknowable truths knowable.  Your
    alternate definition won't provide that.
    There's no requirement that a function be computable.
    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Tue Mar 25 08:47:59 2025
    Am Mon, 24 Mar 2025 18:04:21 -0500 schrieb olcott:
    On 3/24/2025 5:49 PM, André G. Isaak wrote:
    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.
    Maybe when pure math objects. In every model of computation they seem
    to always have inputs.
    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.
    The crucial point is that the domains of computable functions are *not*
    restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such
    such restriction on computable functions.
    The vast majority of computable functions of interest do *not* have
    strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL
    NUMBERS (not strings) to yes/no values.)
    Since there is a bijection between natural numbers and strings of
    decimal digits your qualification seems vacuous.
    There is not a bijection between natural numbers and strings. There is
    a one-to-many mapping from natural numbers to strings, just as there is
    a one-to-many mapping from computations (i.e. turing machine/input
    string pairs, i.e. actual Turing machines directly running on their
    inputs) to strings.

    When III is emulated by pure emulator EEE for any finite number of steps
    of emulation according to the semantics of the x86 language it never
    reaches its own "ret" instruction final halt state THUS DOES NOT HALT.
    When III is directly executed calls an EEE instance that only emulates
    finite number of steps then this directly executed III always reaches
    its own "ret" instruction final halt state THUS HALTS.
    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance
    that doesn't abort, when it is being simulated?

    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Tue Mar 25 10:54:35 2025
    On 2025-03-24 16:44:52 +0000, olcott said:

    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string for
    DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD halts
    when executed directly.


    given an input of the function domain it can
    return the corresponding output. https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.

    A comutable function does not compute. A Turing machine can compute
    a value of a computable function.

    All computations are allowed. There are not other restrictions on
    computable functions that that it must be a function and thane it
    must be computable.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Tue Mar 25 08:54:24 2025
    Am Mon, 24 Mar 2025 17:43:14 -0500 schrieb olcott:
    On 3/24/2025 4:49 PM, André G. Isaak wrote:
    On 2025-03-24 14:11, olcott wrote:
    On 3/24/2025 12:35 PM, dbush wrote:
    On 3/24/2025 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:

    It is impossible for HHH compute the function from the direct >>>>>>>>> execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function
    WHy isn't DDD made into the correct finite string?i
    DDD is a semantically and syntactically correct finite stirng of >>>>>>> the x86 machine language.
    Which includes the machine code of DDD, the machine code of HHH,
    and the machine code of everything it calls down to the OS level.


    That seems to be your own fault.
    The problem has always been that you want to use the wrong string >>>>>>>> for DDD by excluding the code for HHH from it.
    DDD emulated by HHH directly causes recursive emulation because it >>>>>>> calls HHH(DDD) to emulate itself again. HHH complies until HHH
    determines that this cycle cannot possibly reach the final halt
    state of DDD.
    Which is another way of saying that HHH can't determine that DDD
    halts when executed directly.
    given an input of the function domain it can return the
    corresponding output.
    Computable functions are only allowed to compute the mapping from
    their input finite strings to an output.
    The HHH you implemented is computing *a* computable function, but
    it's not computing the halting function:
    The whole point of this post is to prove that no Turing machine ever
    reports on the behavior of the direct execution of another Turing
    machine.
    UTMs do.

    Given any algorithm (i.e. a fixed immutable sequence of instructions)
    X described as <X> with input Y:
    A solution to the halting problem is an algorithm H that computes the
    following mapping:
    (<X>,Y) maps to 1 if and only if X(Y) halts when executed directly
    Cannot possibly be a computable function because computable functions
    cannot possibly have directly executing Turing machines as their
    inputs.
    Whatever. It can still compute the direct execution from the description,
    which is exactly what the described machine would do.

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.
    Maybe when pure math objects. In every model of computation they seem to always have inputs.

    While the inputs to TMs are restricted to strings, there is no such
    such restriction on computable functions.
    The vast majority of computable functions of interest do *not* have
    strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL NUMBERS
    (not strings) to yes/no values.)
    Since there is a bijection between natural numbers and strings of
    decimal digits your qualification seems vacuous.

    You really need to learn the difference between a Halt decider and the
    halting function. They are distinct things.
    A halting function need not be a decider?
    No, *the* halting function is undecidable.

    In any case no computable function within any model of computation
    computes the mapping from the behavior of any other directly executing process to anything else.
    Simulators compute the mapping from a description to the directly
    executed behaviour. That is computable.

    *THIS MAKES THE FOLLOWING STATEMENT INCORRECT*
    On 3/24/2025 12:35 PM, dbush wrote:
    A solution to the halting problem is an algorithm H that computes the following mapping:
    (<X>,Y) maps to 1 if and only if X(Y)
    halts when executed directly
    (<X>,Y) maps to 0 if and only if X(Y)
    does not halt when executed directly
    A definition can be shown to be incorrect when it contradicts other definitions in the same system.
    And what does it contradict?

    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to All on Tue Mar 25 11:09:36 2025
    On 2025-03-24 22:49:34 +0000, André G. Isaak said:

    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.p


    Maybe when pure math objects. In every model of
    computation they seem to always have inputs.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.

    The crucial point is that the domains of computable functions are *not* restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such
    such restriction on computable functions.

    The vast majority of computable functions of interest do *not* have
    strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL NUMBERS
    (not strings) to yes/no values.)

    Since there is a bijection between natural numbers
    and strings of decimal digits your qualification
    seems vacuous.

    There is not a bijection between natural numbers and strings.

    There is a bijection between natural numbers and strings of any any finite
    or countable string. For every such alphabeth the set of strings is
    countable. Every countable set has a bijection with natural numbers.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Tue Mar 25 10:55:42 2025
    On 2025-03-24 20:11:12 +0000, olcott said:

    On 3/24/2025 12:35 PM, dbush wrote:
    On 3/24/2025 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string for >>>>>> DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD halts >>>> when executed directly.


    given an input of the function domain it can
    return the corresponding output.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.



    The HHH you implemented is computing *a* computable function, but it's
    not computing the halting function:

    The whole point of this post is to prove that
    no Turing machine ever reports on the behavior
    of the direct execution of another Turing machine.

    Why should that be proven?

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Tue Mar 25 08:57:43 2025
    Am Mon, 24 Mar 2025 17:11:38 -0500 schrieb olcott:
    On 3/24/2025 3:18 PM, dbush wrote:
    On 3/24/2025 4:11 PM, olcott wrote:
    On 3/24/2025 12:35 PM, dbush wrote:
    On 3/24/2025 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:

    That seems to be your own fault.
    The problem has always been that you want to use the wrong string >>>>>>>> for DDD by excluding the code for HHH from it.
    DDD emulated by HHH directly causes recursive emulation because it >>>>>>> calls HHH(DDD) to emulate itself again. HHH complies until HHH
    determines that this cycle cannot possibly reach the final halt
    state of DDD.
    Which is another way of saying that HHH can't determine that DDD
    halts when executed directly.
    given an input of the function domain it can return the
    corresponding output.
    Computable functions are only allowed to compute the mapping from
    their input finite strings to an output.
    The HHH you implemented is computing *a* computable function, but
    it's not computing the halting function:
    The whole point of this post is to prove that no Turing machine ever
    reports on the behavior of the direct execution of another Turing
    machine.
    Sure it can.  Any that takes a description of a turning machine that
    halt when executed directly is correct to return 1, regardless
    of the logic used to do so.
    It has no way of directly computing this. It can only compute the
    behavior that the finite string specifies.
    The description of a TM completely specifies whether that maching halts. UTMs/Simulators compute that behaviour from that string.

    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Tue Mar 25 10:13:25 2025
    Op 24.mrt.2025 om 21:11 schreef olcott:
    On 3/24/2025 12:35 PM, dbush wrote:
    On 3/24/2025 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string
    for DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD
    halts when executed directly.


    given an input of the function domain it can
    return the corresponding output.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.



    The HHH you implemented is computing *a* computable function, but it's
    not computing the halting function:


    The whole point of this post is to prove that
    no Turing machine ever reports on the behavior
    of the direct execution of another Turing machine.


    Given any algorithm (i.e. a fixed immutable sequence of instructions)
    X described as <X> with input Y:

    A solution to the halting problem is an algorithm H that computes the
    following mapping:

    (<X>,Y) maps to 1 if and only if X(Y) halts when executed directly

    Cannot possibly be a computable function because computable
    functions cannot possibly have directly executing Turing
    machines as their inputs.


    So we agree that the answer on the question:
    'Is there an algorithm that can determine for all possible inputs
    whether the input specifies a program that (according to the semantics
    of the machine language) halts when directly executed?'
    is 'no'.
    Correct?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Tue Mar 25 11:22:18 2025
    On 2025-03-25 03:29:06 +0000, olcott said:

    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable
    functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable functions. >>>>

    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented
    by some concrete model of computation.


    And not all mathematical functions are computable, such as the halting
    function.

    The halting problems asks whether there *is* an algorithm which can
    compute the halting function, but the halting function itself is a
    purely mathematical object which exists prior to, and independent of,
    any such algorithm (if one existed).


    None-the-less it only has specific elements of its domain
    as its entire basis. For Turing machines this always means
    a finite string that (for example) encodes a specific
    sequence of moves.

    False.  *All* turing machine are the domain of the halting function,
    and the existence of UTMs show that all turning machines can be
    described by a finite string.


    You just aren't paying enough attention. Turing machines
    are never in the domain of any computable function.
    <snip>

    There are computable functions that take Turing machines as arguments.
    For example, the number of states of a Turing machine.

    The computability of a function requires that the domain can be mapped
    to finite strings.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 07:19:59 2025
    On 3/24/25 9:33 PM, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:
    On 2025-03-24 17:42, olcott wrote:
    On 3/24/2025 6:05 PM, André G. Isaak wrote:
    On 2025-03-24 17:04, olcott wrote:


    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When III is emulated by pure emulator EEE for any finite
    number of steps of emulation according to the semantics
    of the x86 language it never reaches its own "ret"
    instruction final halt state THUS DOES NOT HALT.

    When III is directly executed calls an EEE instance
    that only emulates finite number of steps then this
    directly executed III always reaches its own "ret"
    instruction final halt state THUS HALTS.

    And that has what, exactly, to do with the post you are allegedly
    responding to?

    André



    THE INPUT FINITE STRING DOES SPECIFY RECURSIVE EMULATION.

    The behavior specified by the finite string input to a
    computable function implemented on a model of computation

    does differ from the direct execution of this same finite
    string because the direct execution avoids the pathological
    self-reference that causes the recursive emulation.

    THE INPUT FINITE STRING DOES SPECIFY RECURSIVE EMULATION.

    In the post you were responding to I pointed out that computable
    functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.


    But are just a subset of them. Since the whole problem you are talking
    about is whether a given mathematical function (The Halting Property)
    CAN be computed, that difference is important.

    The Mathematical Halting Property exists, as every program will either
    Halt or not (for a given input).

    The Halting Decider program does not, as it turns out that the Halting
    Property is not computable, yet you keep on trying to claim it is, but
    do so by saying it must mean something different, just showing you don't understand about word meanings and logic.

    For example pure math functions don't have any specific
    storage like a tape or machine registers.


    Because they don't need it.

    This also would seem to mean that they would require
    some actual input.

    MAthematical functions don't?

    It seems your problem is you don't understand what you are talking
    about, and can't understand abstract concepts.



    The above copypasta doesn't address this.

    I pointed out that the domain of a computable function needn't be a
    string. The above copypasta doesn't address this.


    When implemented using an actual model of computation
    some concrete form or input seems required.

    So? We can convert a program into a concrete representation of it that
    fully expresses the program.

    Just like you can't give a "number" to a physical model of computation,
    only a representation.


    I pointed out that there is no bijection natural numbers and strings,

    finite strings of decimal digits: [0123456789]

    So, you accept representations for numbers, why not for programs?


    but rather a one-to-many relation. The above copypasta doesn't address
    this.

    "12579" would seem to have a bijective mapping to
    a single natural number.


    I pointed out that the exact same sort of one-to-many relation exists
    between computations and strings. The above copypasta doesn't address
    this.


    I pointed out above that the finite string of x86
    machine code correctly emulated by EEE DOES
    NOT MAP TO THE BEHAVIOR OF ITS DIRECT EXECUTION.

    code of correctly
    emulated by EEE machine code does not map to its direct
    execution.


    No, because your above code listing can NOT be correctly emulated, as it doesn't include the target of the call.

    When you include it, then the input is different for each different EEE
    (or HHH) that is called.

    When you fix that issue, then the correct emulation will EXACTLY match
    the behaviro of its direct execution.

    All you are doing is proving that you don't know what correct emulation
    means, and have just always been lying about what yo are doing.

    Sorry, TRUTH shows that you don't know him, but are just a pathological
    liar, so stupid that you can't understand your stupidity.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 07:20:00 2025
    On 3/24/25 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable
    functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable functions.


    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented
    by some concrete model of computation.

    And your HHH and EEE appartently aren't, as you have them look at memory
    that isn't part of the input.

    Sorry, you are just proving that you are just a big fat liar that
    doesn't care about the meaning of the words he uses.


    The halting problems asks whether there *is* an algorithm which can
    compute the halting function, but the halting function itself is a
    purely mathematical object which exists prior to, and independent of,
    any such algorithm (if one existed).


    None-the-less it only has specific elements of its domain
    as its entire basis. For Turing machines this always means
    a finite string that (for example) encodes a specific
    sequence of moves.

    And thus, that finite string can represent any Turing Machine (and its
    input), and so we can ask if that machine will halt?


    For example pure math functions don't have any specific
    storage like a tape or machine registers.

    No they don't. Why would they? A mathematical function is simply a
    static mapping from elements of a domain to elements of a codomain.

    This also would seem to mean that they would require
    some actual input.


    The above copypasta doesn't address this.

    I pointed out that the domain of a computable function needn't be a
    string. The above copypasta doesn't address this.


    When implemented using an actual model of computation
    some concrete form or input seems required.

    I pointed out that there is no bijection natural numbers and strings,

    finite strings of decimal digits: [0123456789]

    but rather a one-to-many relation. The above copypasta doesn't
    address this.

    "12579" would seem to have a bijective mapping to
    a single natural number.

    The natural number 12579 maps equally to the (decimal) string
    '012579', '0012579',... so there is no bijection.


    The bijection is then to decimal digits without leading zeroes to
    Natural numbers.


    I pointed out that the exact same sort of one-to-many relation
    exists between computations and strings. The above copypasta doesn't
    address this.


    I pointed out above that the finite string of x86
    machine code correctly emulated by EEE DOES
    NOT MAP TO THE BEHAVIOR OF ITS DIRECT EXECUTION.

    But I was not talking about EEE. I was talking about the halting
    function. All you seem to be claiming above is that whatever EEE
    computes, it isn't the halting function. Everyone already agrees to that.

    André


    The math halting function is free to "abstract away" key
    details that change everything. That is why I have never
    been talking about the pure math and have always been
    referring to its implementation in a model of computation.

    NO it doesn't.


    A halt decider cannot exist because the halting problem is
    defined incorrectly ignoring key details that change
    everything.

    So you admit that you have just been lying for decades about finding one!


    To unequivocally see these key details we examine x86 code
    such that every control flow instruction is implemented
    within a directed graph of 100% specific state transitions.

    Right, and your DDD thus HALTS because HHH returns 0 to it, thus HHH is
    WRONG to do so.

    Your problem is you don't look at the directed graph defined by that
    structure, but by one built by your inconsistant assumption that the HHH
    that DDD calls will be different then the HHH that is looking at it,
    even though both have identical code and are supposed to be pure function.


    ---
    Copyright 2025 Olcott "Talent hits a target no one else can hit; Genius
    hits a target no one else can see." Arthur Schopenhauer

    And idiots shoot at targets that don't exist, hurting innocent bystanders.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Tue Mar 25 21:24:00 2025
    Am Tue, 25 Mar 2025 13:57:18 -0500 schrieb olcott:
    On 3/25/2025 1:37 PM, dbush wrote:
    On 3/25/2025 2:27 PM, olcott wrote:
    On 3/25/2025 12:24 PM, dbush wrote:
    On 3/25/2025 1:18 PM, olcott wrote:
    On 3/25/2025 12:04 PM, dbush wrote:
    On 3/25/2025 12:56 PM, olcott wrote:
    On 3/25/2025 11:46 AM, dbush wrote:
    On 3/25/2025 12:40 PM, olcott wrote:
    On 3/25/2025 10:17 AM, dbush wrote:
    On 3/25/2025 11:13 AM, olcott wrote:
    On 3/25/2025 10:02 AM, dbush wrote:
    On 3/25/2025 10:53 AM, olcott wrote:
    On 3/25/2025 9:45 AM, dbush wrote:
    On 3/24/2025 11:29 PM, olcott wrote:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote: >>>>>>>>>>>>>>>>>> On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    It is impossible for an actual Turing machine to be input to >>>>>>>>>>>>> any other TM.
    Therefore we encode it.

    But a description of a turing machine can be, for example in >>>>>>>>>>>> the form of source code or a binary.  And a turing machine by >>>>>>>>>>>> definition *always* behaves the same for a given input when >>>>>>>>>>>> executing directly.
    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION ALWAYS
    SPECIFIES BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.
    WTF, a TM is specified by its description.

    That is not the complete description.  The complete description >>>>>>>>>> consists of the code of III
    and the fact that EEE
    Is called by III makes the code of EEE part of the fixed input, >>>>>>>> as well as everything that EEE calls down to the OS level.
    Which is not relevant to whether or not III emulated by EEE
    reaches its own final halt state.
    Which is why III emulated by EEE is not relevant.
    Does III emulated by EEE reach its final halt state when III defines >>>>> a pathological relationship with its emulator?
    I don't care what some simulator says, I want to know whether the
    direct execution halts, and the simulator better give the same result.

    But that's not the question.  The question is whether or not an H
    exists that behaves as described below:
    Turing machines are only capable operating on input finite strings.
    And those finite strings can be a complete description of a turing
    machine
    The input to a Turing machine cannot possibly be the actual behavior of
    any executing process.
    A Turing machine can only port on the behavior that a finite string
    input specifies.
    And that is its direct execution.

    Turing machine computable functions cannot compute anything that their
    input doesn't specify.
    Translation: algorithms only compute what they're programed to compute.
    NO WRONG. Turing machine computable functions cannot compute any mapping
    from anything that their input DOES NOT SAY.
    Yes, exactly.

    THEIR INPUT CANNOT POSSIBLY SAY THE ACTUAL BEHAVIOR OF ANY EXECUTING
    PROCESS
    Wrong, that is exactly what the description of a TM says.

    And the algorithm your EEE is computing is not the mathematical halting
    function, which has proven to not be computable:
    When HHH rejects DD as specifying a computation that does not reach its
    final halt state HHH IS CORRECT.
    No, DD halts.

    THEIR INPUT NEVER SPECIFIES THE ACTUAL BEHAVIOR OF ANY OTHER TURING
    MACHINE
    How else would you specify a TM?

    What a particular turing machine is able to compute doesn't change
    whether or not the input string fully describes another turing machine
    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Tue Mar 25 21:29:11 2025
    Am Tue, 25 Mar 2025 08:01:14 -0500 schrieb olcott:
    On 3/25/2025 3:47 AM, joes wrote:

    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance that
    doesn't abort, when it is being simulated?

    The fact that the same states in the program-under-test keep repeating
    such that the program-under-test cannot possibly reach its own final
    halt state proves that program-under-test does not halt.
    They don't repeat, though, not in the same stack frame. And the test
    program is part of the program under test. Can you answer my question?

    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 21:24:52 2025
    On 3/25/25 9:01 AM, olcott wrote:
    On 3/25/2025 3:47 AM, joes wrote:
    Am Mon, 24 Mar 2025 18:04:21 -0500 schrieb olcott:
    On 3/24/2025 5:49 PM, André G. Isaak wrote:
    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.
    Maybe when pure math objects. In every model of computation they seem >>>>> to always have inputs.
    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.
    The crucial point is that the domains of computable functions are *not* >>>> restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such >>>>>> such restriction on computable functions.
    The vast majority of computable functions of interest do *not* have >>>>>> strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL
    NUMBERS (not strings) to yes/no values.)
    Since there is a bijection between natural numbers and strings of
    decimal digits your qualification seems vacuous.
    There is not a bijection between natural numbers and strings. There is >>>> a one-to-many mapping from natural numbers to strings, just as there is >>>> a one-to-many mapping from computations (i.e. turing machine/input
    string pairs, i.e. actual Turing machines directly running on their
    inputs) to strings.

    When III is emulated by pure emulator EEE for any finite number of steps >>> of emulation according to the semantics of the x86 language it never
    reaches its own "ret" instruction final halt state THUS DOES NOT HALT.
    When III is directly executed calls an EEE instance that only emulates
    finite number of steps then this directly executed III always reaches
    its own "ret" instruction final halt state THUS HALTS.

    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance
    that doesn't abort, when it is being simulated?


    The fact that the same states in the program-under-test
    keep repeating such that the program-under-test cannot
    possibly reach its own final halt state proves that
    program-under-test does not halt.


    What state in the PROGRAM repeated. The program goes into EEE and keeps
    on looping in EEE as it emulates the code of III then inton EEE as it
    emulates III then in to EEE as it emulates III.

    THe state of the program never "repeats" as its state keeps on growing
    with more levels of emulation.

    Now, it is true that if EEE is actually a correct emulator, this will go
    on forever, but the HHH that DDD calls can't do that and be a decider,
    and thus that HHH is not the same as EEE and thus we have a different input.

    HHH doing only a partial emulation, and then returning 0, creates a DDD,
    that when complete emulated (say by our EEE above) will see that DDD
    calls HHH which will after a bit return to DDD and DDD will halt.

    This emulation will begin IDENTICALLY to the trace generated by HHH, and
    then continue past that point, showing that HHH's emulation can NOT be
    seen as a proof of non-halting, since a halting emulation had that
    identical trace.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 21:16:45 2025
    On 3/25/25 11:11 AM, olcott wrote:
    On 3/25/2025 9:59 AM, dbush wrote:
    On 3/25/2025 9:14 AM, olcott wrote:
    On 3/25/2025 3:32 AM, joes wrote:
    Am Mon, 24 Mar 2025 22:29:06 -0500 schrieb olcott:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable >>>>>>>>>> functions are mathematical objects.
    Computable functions implemented using models of computation would >>>>>>>>> seem to be more concrete than pure math functions.
    Those are called computations or algorithms, not computable
    functions.
    https://en.wikipedia.org/wiki/Pure_function Is another way to
    look at
    computable functions implemented by some concrete model of
    computation.
    And not all mathematical functions are computable, such as the
    halting
    function.

    The halting problems asks whether there *is* an algorithm which can >>>>>>>> compute the halting function, but the halting function itself is a >>>>>>>> purely mathematical object which exists prior to, and
    independent of,
    any such algorithm (if one existed).
    None-the-less it only has specific elements of its domain as its >>>>>>> entire basis. For Turing machines this always means a finite string >>>>>>> that (for example) encodes a specific sequence of moves.
    False.  *All* turing machine are the domain of the halting function, >>>>>> and the existence of UTMs show that all turnBing machines can be
    described by a finite string.
    You just aren't paying enough attention. Turing machines are never in >>>>> the domain of any computable function. <snip>

    Fine, their descriptions are, and their behaviour is computable -
    by running them.


    Halt deciders

    Don't exist, because no H satisfies this requirement:


    Because no TM can ever take another actual TM as an input.

    Sure it can, via a representation.

    If you disallow using representations, then no program can add numbers
    or understand words, or do ANY task that isn't just a pure symbolic manipulation.

    Sorry, you are just showing your utter ignorance of what you talk about,
    and that you are soo stupid you can't see the contradictions in your words.



    Given any algorithm (i.e. a fixed immutable sequence of instructions)
    X described as <X> with input Y:

    A solution to the halting problem is an algorithm H that computes the
    following mapping:

    (<X>,Y) maps to 1 if and only if X(Y) halts when executed directly
    (<X>,Y) maps to 0 if and only if X(Y) does not halt when executed
    directly





    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 21:19:06 2025
    On 3/25/25 10:49 AM, olcott wrote:
    On 3/25/2025 4:22 AM, Mikko wrote:
    On 2025-03-25 03:29:06 +0000, olcott said:

    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable >>>>>>>> functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable
    functions.


    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented
    by some concrete model of computation.


    And not all mathematical functions are computable, such as the
    halting function.

    The halting problems asks whether there *is* an algorithm which
    can compute the halting function, but the halting function itself
    is a purely mathematical object which exists prior to, and
    independent of, any such algorithm (if one existed).


    None-the-less it only has specific elements of its domain
    as its entire basis. For Turing machines this always means
    a finite string that (for example) encodes a specific
    sequence of moves.

    False.  *All* turing machine are the domain of the halting function,
    and the existence of UTMs show that all turning machines can be
    described by a finite string.


    You just aren't paying enough attention. Turing machines
    are never in the domain of any computable function.
    <snip>

    There are computable functions that take Turing machines as arguments.
    For example, the number of states of a Turing machine.

    The computability of a function requires that the domain can be mapped
    to finite strings.


    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION SPECIFIES
    BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.

    Why? Since that *IS* the definition for a Halt Decider.


    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When any finite number of steps of III is emulated by
    EEE according to the semantics of the x86 language the
    emulated III never reaches its "ret" instruction final
    halt state and the directly executed III does halt.

    This conclusively proves that a machine description does
    not always specify the same behavior as the directly
    executed machine.


    Nope, it might say that for a POOP decider it doesn't, but partial
    emulation of other inputs means nothing in a discussion of Halt Deciders.

    Your problem is you just refuse to learn the meaning of the words you
    use, so you just turn yourself into a pathological liar with a total
    disregard for the actual truth,

    Sorry, you have sunk your repuation in that lake of fire, and will
    likely be joining it soon.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 21:29:21 2025
    On 3/25/25 6:49 PM, olcott wrote:
    On 3/25/2025 4:29 PM, joes wrote:
    Am Tue, 25 Mar 2025 08:01:14 -0500 schrieb olcott:
    On 3/25/2025 3:47 AM, joes wrote:

    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance that
    doesn't abort, when it is being simulated?

    The fact that the same states in the program-under-test keep repeating
    such that the program-under-test cannot possibly reach its own final
    halt state proves that program-under-test does not halt.

    They don't repeat, though, not in the same stack frame. And the test
    program is part of the program under test. Can you answer my question?


    Your question was incorrect.

    No, YOUR question is incorrect as regards a Halt Decider, as it is just
    a strawman.

    The question for a Halt Decider isn't what the decider can see in its
    own (partial) emulation, but what would be seen giving that identical
    COMPLETE input (thus must includeing the code for the called function)
    to a COMPLETE emulator.


    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    The first four instructions of the finite string
    of machine code at machine address 00002172 are
    repeated until EEE reaches its finite limit.



    I guess you are admitting you don't understand what a correct emulation
    is, especially per the defintion of the x86 langugage.

    The ONLY correct emulation of the call EEE instruction would be to
    continue the emulation at the address of EEE, that is 000015d2.

    IF that isn't part of the full input, then the input can not be
    correctly emulated, as it wasn't actually a program.

    If that is part of the full input, then changing it, will of course have
    the possiblity of changing the behavior, and since HHH and EEE are not
    the exact same program, this says nothing about the DDD that was given
    to HHH and which calls that same version of HHH.

    Sorry, you are just proving your utter stupidity.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 21:36:25 2025
    On 3/25/25 9:11 AM, olcott wrote:
    On 3/25/2025 3:54 AM, joes wrote:
    Am Mon, 24 Mar 2025 17:43:14 -0500 schrieb olcott:
    On 3/24/2025 4:49 PM, André G. Isaak wrote:
    On 2025-03-24 14:11, olcott wrote:
    On 3/24/2025 12:35 PM, dbush wrote:
    On 3/24/2025 12:44 PM, olcott wrote:
    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:

    It is impossible for HHH compute the function from the direct >>>>>>>>>>> execution of DDD because DDD is not the finite string input >>>>>>>>>>> basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function
    WHy isn't DDD made into the correct finite string?i
    DDD is a semantically and syntactically correct finite stirng of >>>>>>>>> the x86 machine language.
    Which includes the machine code of DDD, the machine code of HHH, >>>>>>>> and the machine code of everything it calls down to the OS level. >>>>>>>>

    That seems to be your own fault.
    The problem has always been that you want to use the wrong string >>>>>>>>>> for DDD by excluding the code for HHH from it.
    DDD emulated by HHH directly causes recursive emulation because it >>>>>>>>> calls HHH(DDD) to emulate itself again. HHH complies until HHH >>>>>>>>> determines that this cycle cannot possibly reach the final halt >>>>>>>>> state of DDD.
    Which is another way of saying that HHH can't determine that DDD >>>>>>>> halts when executed directly.
    given an input of the function domain it can return the
    corresponding output.
    Computable functions are only allowed to compute the mapping from >>>>>>> their input finite strings to an output.
    The HHH you implemented is computing *a* computable function, but
    it's not computing the halting function:
    The whole point of this post is to prove that no Turing machine ever >>>>> reports on the behavior of the direct execution of another Turing
    machine.
    UTMs do.


    They never do, they only report on the behavior that
    their input finite string specifies. When their input
    finite string defines a pathological relationship
    with its simulator then the specified behavior can
    differ from the behavior of the direct execution.

    Everyone here has been happily denying this verified
    fact disagreeing with the behavior that the semantics
    of the x86 language species. That is like disagreeing
    with arithmetic just to make sure to be disagreeable.


    Nope, YOU have been denying the basic facts of the theory of computing
    since you just don't know what you are talking about, and have made up
    all your definitions.

    Thus, anything you say about that theory, should be looked on as almost certainly a FRAUD based on LIES of wrong definitions.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Damon@21:1/5 to olcott on Tue Mar 25 21:35:01 2025
    On 3/25/25 6:45 PM, olcott wrote:
    On 3/25/2025 3:47 AM, joes wrote:
    Am Mon, 24 Mar 2025 18:04:21 -0500 schrieb olcott:
    On 3/24/2025 5:49 PM, André G. Isaak wrote:
    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.
    Maybe when pure math objects. In every model of computation they seem >>>>> to always have inputs.
    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.
    The crucial point is that the domains of computable functions are *not* >>>> restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such >>>>>> such restriction on computable functions.
    The vast majority of computable functions of interest do *not* have >>>>>> strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL
    NUMBERS (not strings) to yes/no values.)
    Since there is a bijection between natural numbers and strings of
    decimal digits your qualification seems vacuous.
    There is not a bijection between natural numbers and strings. There is >>>> a one-to-many mapping from natural numbers to strings, just as there is >>>> a one-to-many mapping from computations (i.e. turing machine/input
    string pairs, i.e. actual Turing machines directly running on their
    inputs) to strings.

    When III is emulated by pure emulator EEE for any finite number of steps >>> of emulation according to the semantics of the x86 language it never
    reaches its own "ret" instruction final halt state THUS DOES NOT HALT.
    When III is directly executed calls an EEE instance that only emulates
    finite number of steps then this directly executed III always reaches
    its own "ret" instruction final halt state THUS HALTS.

    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance
    that doesn't abort, when it is being simulated?


    There is no different instance of EEE that doesn't abort.
    They all stop emulating after a finite number of steps.
    When EEE emulates 4 billion steps of III, III never
    reaches its final halt state.


    So, you have in infininte number of EEEs, each given one of an infinite
    number of IIIs (since to emulate III, we need to include the EEE that it
    calls as the input, and each of those was different).

    NONE of these inputs match the DDD that calls HHH as HHH is different
    then any of the DDD.

    And, we have the fact that for any given EEE, called by a given III,
    ther exists another (in fact an infinite number of them) EEE that
    emulates enough longer that if given the input of the III that calls the shorter running EEE will emulate it to the final state.

    Of course, we need these two EEEs to be located in different locations
    of memory since they are different, and to be part of a C program, they
    will need to be given different names (like EEE1).

    If your theory of progarms can't handle relocating programs to other
    addresses, then you have a fairly worthless system.

    Sorry, your ship has sunk, taking your reputation to the bottom of that
    lake of fire, which you will be join shortly.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Wed Mar 26 09:08:46 2025
    On 2025-03-25 13:14:43 +0000, olcott said:

    On 3/25/2025 3:32 AM, joes wrote:
    Am Mon, 24 Mar 2025 22:29:06 -0500 schrieb olcott:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable >>>>>>>> functions are mathematical objects.
    Computable functions implemented using models of computation would >>>>>>> seem to be more concrete than pure math functions.
    Those are called computations or algorithms, not computable
    functions.
    https://en.wikipedia.org/wiki/Pure_function Is another way to look at >>>>> computable functions implemented by some concrete model of
    computation.
    And not all mathematical functions are computable, such as the halting >>>> function.

    The halting problems asks whether there *is* an algorithm which can >>>>>> compute the halting function, but the halting function itself is a >>>>>> purely mathematical object which exists prior to, and independent of, >>>>>> any such algorithm (if one existed).
    None-the-less it only has specific elements of its domain as its
    entire basis. For Turing machines this always means a finite string
    that (for example) encodes a specific sequence of moves.
    False.  *All* turing machine are the domain of the halting function,
    and the existence of UTMs show that all turning machines can be
    described by a finite string.
    You just aren't paying enough attention. Turing machines are never in
    the domain of any computable function. <snip>

    Fine, their descriptions are, and their behaviour is computable -
    by running them.

    Halt deciders only report on the behavior that
    their input finite string specifies.

    Quite obviously. A decider reports only one thing - otherwise it is not
    a decider. If that one thing is not whether the described computation
    halts
    then it is not a halt decider.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Wed Mar 26 09:29:03 2025
    On 2025-03-25 13:34:19 +0000, olcott said:

    On 3/25/2025 3:54 AM, Mikko wrote:
    On 2025-03-24 16:44:52 +0000, olcott said:

    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string for >>>>>> DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD halts >>>> when executed directly.


    given an input of the function domain it can
    return the corresponding output.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.

    A comutable function does not compute. A Turing machine can compute
    a value of a computable function.

    Whenever I have referred to a computable function
    I have always been referring to computable functions
    implemented within some model of computation that
    like Turing machines have finite strings as their
    only input.

    No, you have not. When you posted a link to the Wikipedia page
    https://en.wikipedia.org/wiki/Computable_function
    that means, as you didn't state otherwise, that you use the term
    with the same meaning as that page.

    All computations are allowed. There are not other restrictions on
    computable functions that that it must be a function and thane it
    must be computable.

    Computing who will win the next presidential election
    on the basis of the finite string "the" violates what
    computations are and how they work thus does not derive
    any undecidable decision problem.

    That is not a computable function of the available data.

    Likewise computing the behavior of the direct execution
    of a Turing Machine based on its machine description can
    be incorrect when this machine has defined a pathological
    relationship with its emulator.

    If every Turing machine gives an icorrect answer for at least one input
    then the function is not Turing computable. As far as we know there is
    no way to compute functions that are not Turing computable.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Mikko@21:1/5 to olcott on Wed Mar 26 09:15:23 2025
    On 2025-03-25 14:49:44 +0000, olcott said:

    On 3/25/2025 4:22 AM, Mikko wrote:
    On 2025-03-25 03:29:06 +0000, olcott said:

    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable >>>>>>>> functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable functions. >>>>>>

    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented
    by some concrete model of computation.


    And not all mathematical functions are computable, such as the halting >>>> function.

    The halting problems asks whether there *is* an algorithm which can >>>>>> compute the halting function, but the halting function itself is a >>>>>> purely mathematical object which exists prior to, and independent of, >>>>>> any such algorithm (if one existed).


    None-the-less it only has specific elements of its domain
    as its entire basis. For Turing machines this always means
    a finite string that (for example) encodes a specific
    sequence of moves.

    False.  *All* turing machine are the domain of the halting function,
    and the existence of UTMs show that all turning machines can be
    described by a finite string.


    You just aren't paying enough attention. Turing machines
    are never in the domain of any computable function.
    <snip>

    There are computable functions that take Turing machines as arguments.
    For example, the number of states of a Turing machine.

    The computability of a function requires that the domain can be mapped
    to finite strings.

    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION SPECIFIES
    BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.

    Nothing counter-factual there. From the meanings of the words follows
    that a machine description does not specify any other behaviour than
    the behaviour of the directly executed machine. A specification of
    any other behaviour is not a part of the description of the machine.

    --
    Mikko

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Mar 26 10:01:15 2025
    Op 25.mrt.2025 om 15:49 schreef olcott:
    On 3/25/2025 4:22 AM, Mikko wrote:
    On 2025-03-25 03:29:06 +0000, olcott said:

    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that computable >>>>>>>> functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation
    would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable
    functions.


    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented
    by some concrete model of computation.


    And not all mathematical functions are computable, such as the
    halting function.

    The halting problems asks whether there *is* an algorithm which
    can compute the halting function, but the halting function itself
    is a purely mathematical object which exists prior to, and
    independent of, any such algorithm (if one existed).


    None-the-less it only has specific elements of its domain
    as its entire basis. For Turing machines this always means
    a finite string that (for example) encodes a specific
    sequence of moves.

    False.  *All* turing machine are the domain of the halting function,
    and the existence of UTMs show that all turning machines can be
    described by a finite string.


    You just aren't paying enough attention. Turing machines
    are never in the domain of any computable function.
    <snip>

    There are computable functions that take Turing machines as arguments.
    For example, the number of states of a Turing machine.

    The computability of a function requires that the domain can be mapped
    to finite strings.


    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION SPECIFIES
    BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.

    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When any finite number of steps of III is emulated by
    EEE according to the semantics of the x86 language the
    emulated III never reaches its "ret" instruction final
    halt state and the directly executed III does halt.
    It is not very interesting to know whether a simulator is able to report
    that it did not reach the end of the simulation of a program that halts
    in direct execution.
    It is interesting to know:
    'Is there an algorithm that can determine for all possible inputs
    whether the input specifies a program that (according to the semantics
    of the machine language) halts when directly executed?'
    This question seems undecidable for Olcott.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Mar 26 10:15:11 2025
    Op 25.mrt.2025 om 14:34 schreef olcott:
    On 3/25/2025 3:54 AM, Mikko wrote:
    On 2025-03-24 16:44:52 +0000, olcott said:

    On 3/24/2025 10:14 AM, dbush wrote:
    On 3/24/2025 11:03 AM, olcott wrote:
    On 3/24/2025 6:23 AM, Richard Damon wrote:
    On 3/23/25 11:09 PM, olcott wrote:
    It is impossible for HHH compute the function from the direct
    execution of DDD because DDD is not the finite string input
    basis from which all computations must begin.
    https://en.wikipedia.org/wiki/Computable_function

    WHy isn't DDD made into the correct finite string?i


    DDD is a semantically and syntactically correct finite
    stirng of the x86 machine language.

    Which includes the machine code of DDD, the machine code of HHH, and
    the machine code of everything it calls down to the OS level.


    That seems to be your own fault.

    The problem has always been that you want to use the wrong string
    for DDD by excluding the code for HHH from it.


    DDD emulated by HHH directly causes recursive emulation
    because it calls HHH(DDD) to emulate itself again. HHH
    complies until HHH determines that this cycle cannot
    possibly reach the final halt state of DDD.


    Which is another way of saying that HHH can't determine that DDD
    halts when executed directly.


    given an input of the function domain it can
    return the corresponding output.
    https://en.wikipedia.org/wiki/Computable_function

    Computable functions are only allowed to compute the
    mapping from their input finite strings to an output.

    A comutable function does not compute. A Turing machine can compute
    a value of a computable function.


    Whenever I have referred to a computable function
    I have always been referring to computable functions
    implemented within some model of computation that
    like Turing machines have finite strings as their
    only input.

    All computations are allowed. There are not other restrictions on
    computable functions that that it must be a function and thane it
    must be computable.


    Computing who will win the next presidential election
    on the basis of the finite string "the" violates what
    computations are and how they work thus does not derive
    any undecidable decision problem.

    Likewise computing the behavior of the direct execution
    of a Turing Machine based on its machine description can
    be incorrect when this machine has defined a pathological
    relationship with its emulator.

    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When any finite number of steps of III is emulated by
    EEE according to the semantics of the x86 language the
    emulated III never reaches its "ret" instruction final
    halt state and the directly executed III does halt.


    It is not very interesting to know whether a simulator reports that it
    is unable to reach the end of the simulation of a program that halts in
    direct execution.
    It is interesting to know:
    'Is there an algorithm that can determine for all possible inputs
    whether the input specifies a program that (according to the semantics
    of the machine language) halts when directly executed?'
    This question seems undecidable for Olcott.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Mar 26 10:20:25 2025
    Op 25.mrt.2025 om 17:56 schreef olcott:
    On 3/25/2025 11:46 AM, dbush wrote:
    On 3/25/2025 12:40 PM, olcott wrote:
    On 3/25/2025 10:17 AM, dbush wrote:
    On 3/25/2025 11:13 AM, olcott wrote:
    On 3/25/2025 10:02 AM, dbush wrote:
    On 3/25/2025 10:53 AM, olcott wrote:
    On 3/25/2025 9:45 AM, dbush wrote:
    On 3/24/2025 11:29 PM, olcott wrote:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that >>>>>>>>>>>>>> computable functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation >>>>>>>>>>>>> would seem to be more concrete than pure math functions. >>>>>>>>>>>>
    Those are called computations or algorithms, not computable >>>>>>>>>>>> functions.


    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented >>>>>>>>>>> by some concrete model of computation.


    And not all mathematical functions are computable, such as the >>>>>>>>>> halting function.

    The halting problems asks whether there *is* an algorithm >>>>>>>>>>>> which can compute the halting function, but the halting >>>>>>>>>>>> function itself is a purely mathematical object which exists >>>>>>>>>>>> prior to, and independent of, any such algorithm (if one >>>>>>>>>>>> existed).


    None-the-less it only has specific elements of its domain >>>>>>>>>>> as its entire basis. For Turing machines this always means >>>>>>>>>>> a finite string that (for example) encodes a specific
    sequence of moves.

    False.  *All* turing machine are the domain of the halting >>>>>>>>>> function, and the existence of UTMs show that all turning
    machines can be described by a finite string.


    You just aren't paying enough attention. Turing machines
    are never in the domain of any computable function.
    <snip>


    False.  The mathematical function that counts the number of
    instructions in a turing machine is computable.


    It is impossible for an actual Turing machine to
    be input to any other TM.


    But a description of a turing machine can be, for example in the
    form of source code or a binary.  And a turing machine by
    definition *always* behaves the same for a given input when
    executing directly.

    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION ALWAYS
    SPECIFIES
    BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.

    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    That is not the complete description.  The complete description
    consists of the code of III

    and the fact that EEE

    Is called by III makes the code of EEE part of the fixed input, as
    well as everything that EEE calls down to the OS level.


    Which is not relevant to whether or not III emulated
    by EEE reaches its own final halt state.


    Which is not relevant to whether III halts.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Mar 26 10:28:02 2025
    Op 25.mrt.2025 om 23:45 schreef olcott:
    On 3/25/2025 3:47 AM, joes wrote:
    Am Mon, 24 Mar 2025 18:04:21 -0500 schrieb olcott:
    On 3/24/2025 5:49 PM, André G. Isaak wrote:
    On 2025-03-24 16:43, olcott wrote:

    Computable functions don't have inputs. They have domains. Turing
    machines have inputs.
    Maybe when pure math objects. In every model of computation they seem >>>>> to always have inputs.
    Computable functions *are* pure math objects. You seem to want to
    conflate them with C functions, but that is not the case.
    The crucial point is that the domains of computable functions are *not* >>>> restricted to strings, even if the inputs to Turing Machines are.

    While the inputs to TMs are restricted to strings, there is no such >>>>>> such restriction on computable functions.
    The vast majority of computable functions of interest do *not* have >>>>>> strings as their domains, yet they remain computable functions (a
    simple example would be the parity function which maps NATURAL
    NUMBERS (not strings) to yes/no values.)
    Since there is a bijection between natural numbers and strings of
    decimal digits your qualification seems vacuous.
    There is not a bijection between natural numbers and strings. There is >>>> a one-to-many mapping from natural numbers to strings, just as there is >>>> a one-to-many mapping from computations (i.e. turing machine/input
    string pairs, i.e. actual Turing machines directly running on their
    inputs) to strings.

    When III is emulated by pure emulator EEE for any finite number of steps >>> of emulation according to the semantics of the x86 language it never
    reaches its own "ret" instruction final halt state THUS DOES NOT HALT.
    When III is directly executed calls an EEE instance that only emulates
    finite number of steps then this directly executed III always reaches
    its own "ret" instruction final halt state THUS HALTS.

    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance
    that doesn't abort, when it is being simulated?


    There is no different instance of EEE that doesn't abort.
    They all stop emulating after a finite number of steps.
    When EEE emulates 4 billion steps of III, III never
    reaches its final halt state.


    Indeed a simulator simulating itself will never reach the end of the simulation.
    It is not very interesting to know whether a simulator reports that it
    is unable to reach the end of the simulation of a program that halts in
    direct execution.
    It is interesting to know:
    'Is there an algorithm that can determine for all possible inputs
    whether the input specifies a program that (according to the semantics
    of the machine language) halts when directly executed?'
    This question seems undecidable for Olcott.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Mar 26 10:18:10 2025
    Op 25.mrt.2025 om 16:13 schreef olcott:
    On 3/25/2025 10:02 AM, dbush wrote:
    On 3/25/2025 10:53 AM, olcott wrote:
    On 3/25/2025 9:45 AM, dbush wrote:
    On 3/24/2025 11:29 PM, olcott wrote:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote:
    On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote:

    In the post you were responding to I pointed out that
    computable functions are mathematical objects.

    https://en.wikipedia.org/wiki/Computable_function

    Computable functions implemented using models of computation >>>>>>>>> would seem to be more concrete than pure math functions.

    Those are called computations or algorithms, not computable
    functions.


    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented
    by some concrete model of computation.


    And not all mathematical functions are computable, such as the
    halting function.

    The halting problems asks whether there *is* an algorithm which >>>>>>>> can compute the halting function, but the halting function
    itself is a purely mathematical object which exists prior to,
    and independent of, any such algorithm (if one existed).


    None-the-less it only has specific elements of its domain
    as its entire basis. For Turing machines this always means
    a finite string that (for example) encodes a specific
    sequence of moves.

    False.  *All* turing machine are the domain of the halting
    function, and the existence of UTMs show that all turning machines >>>>>> can be described by a finite string.


    You just aren't paying enough attention. Turing machines
    are never in the domain of any computable function.
    <snip>


    False.  The mathematical function that counts the number of
    instructions in a turing machine is computable.


    It is impossible for an actual Turing machine to
    be input to any other TM.


    But a description of a turing machine can be, for example in the form
    of source code or a binary.  And a turing machine by definition
    *always* behaves the same for a given input when executing directly.

    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION ALWAYS
    SPECIFIES
    BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.

    _III()
    [00002172] 55         push ebp      ; housekeeping
    [00002173] 8bec       mov  ebp,esp  ; housekeeping
    [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    When any finite number of steps of III is emulated by
    EEE according to the semantics of the x86 language the
    emulated III never reaches its "ret" instruction final
    halt state and the directly executed III does halt.
    It is not very interesting to know whether a simulator reports that it
    is unable to reach the end of the simulation of a program that halts in
    direct execution.
    It is interesting to know:
    'Is there an algorithm that can determine for all possible inputs
    whether the input specifies a program that (according to the semantics
    of the machine language) halts when directly executed?'
    This question seems undecidable for Olcott.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Fred. Zwarts@21:1/5 to All on Wed Mar 26 10:24:46 2025
    Op 25.mrt.2025 om 19:57 schreef olcott:
    On 3/25/2025 1:37 PM, dbush wrote:
    On 3/25/2025 2:27 PM, olcott wrote:
    On 3/25/2025 12:24 PM, dbush wrote:
    On 3/25/2025 1:18 PM, olcott wrote:
    On 3/25/2025 12:04 PM, dbush wrote:
    On 3/25/2025 12:56 PM, olcott wrote:
    On 3/25/2025 11:46 AM, dbush wrote:
    On 3/25/2025 12:40 PM, olcott wrote:
    On 3/25/2025 10:17 AM, dbush wrote:
    On 3/25/2025 11:13 AM, olcott wrote:
    On 3/25/2025 10:02 AM, dbush wrote:
    On 3/25/2025 10:53 AM, olcott wrote:
    On 3/25/2025 9:45 AM, dbush wrote:
    On 3/24/2025 11:29 PM, olcott wrote:
    On 3/24/2025 10:12 PM, dbush wrote:
    On 3/24/2025 10:07 PM, olcott wrote:
    On 3/24/2025 8:46 PM, André G. Isaak wrote: >>>>>>>>>>>>>>>>>> On 2025-03-24 19:33, olcott wrote:
    On 3/24/2025 7:00 PM, André G. Isaak wrote: >>>>>>>>>>>>>>>>>>
    In the post you were responding to I pointed out >>>>>>>>>>>>>>>>>>>> that computable functions are mathematical objects. >>>>>>>>>>>>>>>>>>>
    https://en.wikipedia.org/wiki/Computable_function >>>>>>>>>>>>>>>>>>>
    Computable functions implemented using models of >>>>>>>>>>>>>>>>>>> computation
    would seem to be more concrete than pure math functions. >>>>>>>>>>>>>>>>>>
    Those are called computations or algorithms, not >>>>>>>>>>>>>>>>>> computable functions.


    https://en.wikipedia.org/wiki/Pure_function
    Is another way to look at computable functions implemented >>>>>>>>>>>>>>>>> by some concrete model of computation.


    And not all mathematical functions are computable, such >>>>>>>>>>>>>>>> as the halting function.

    The halting problems asks whether there *is* an >>>>>>>>>>>>>>>>>> algorithm which can compute the halting function, but >>>>>>>>>>>>>>>>>> the halting function itself is a purely mathematical >>>>>>>>>>>>>>>>>> object which exists prior to, and independent of, any >>>>>>>>>>>>>>>>>> such algorithm (if one existed).


    None-the-less it only has specific elements of its domain >>>>>>>>>>>>>>>>> as its entire basis. For Turing machines this always means >>>>>>>>>>>>>>>>> a finite string that (for example) encodes a specific >>>>>>>>>>>>>>>>> sequence of moves.

    False.  *All* turing machine are the domain of the >>>>>>>>>>>>>>>> halting function, and the existence of UTMs show that >>>>>>>>>>>>>>>> all turning machines can be described by a finite string. >>>>>>>>>>>>>>>>

    You just aren't paying enough attention. Turing machines >>>>>>>>>>>>>>> are never in the domain of any computable function. >>>>>>>>>>>>>>> <snip>


    False.  The mathematical function that counts the number >>>>>>>>>>>>>> of instructions in a turing machine is computable. >>>>>>>>>>>>>>

    It is impossible for an actual Turing machine to
    be input to any other TM.


    But a description of a turing machine can be, for example in >>>>>>>>>>>> the form of source code or a binary.  And a turing machine >>>>>>>>>>>> by definition *always* behaves the same for a given input >>>>>>>>>>>> when executing directly.

    IT IS COUNTER-FACTUAL THAT A MACHINE DESCRIPTION ALWAYS
    SPECIFIES
    BEHAVIOR IDENTICAL TO THE DIRECTLY EXECUTED MACHINE.

    _III()
    [00002172] 55         push ebp      ; housekeeping >>>>>>>>>>> [00002173] 8bec       mov  ebp,esp  ; housekeeping >>>>>>>>>>> [00002175] 6872210000 push 00002172 ; push III
    [0000217a] e853f4ffff call 000015d2 ; call EEE(III)
    [0000217f] 83c404     add  esp,+04
    [00002182] 5d         pop  ebp
    [00002183] c3         ret
    Size in bytes:(0018) [00002183]

    That is not the complete description.  The complete
    description consists of the code of III

    and the fact that EEE

    Is called by III makes the code of EEE part of the fixed input, >>>>>>>> as well as everything that EEE calls down to the OS level.


    Which is not relevant to whether or not III emulated
    by EEE reaches its own final halt state.


    Which is why III emulated by EEE is not relevant.


    When the question is:
    Does III emulated by EEE reach its final halt state
    when III defines a pathological relationship with its emulator?



    But that's not the question.  The question is whether or not an H
    exists that behaves as described below:


    Did you ever bother to notice the title of this thread?

    Turing machines are only capable operating on input
    finite strings.

    And those finite strings can be a complete description of a turing
    machine


    The input to a Turing machine cannot possibly be
    the actual behavior of any executing process.

    A Turing machine can only port on the behavior that a
    finite string input specifies.

    Turing machine computable functions cannot
    compute anything that their input doesn't specify.

    Translation: algorithms only compute what they're programed to compute.


    NO WRONG. Turing machine computable functions cannot
    compute any mapping from anything that their input DOES NOT SAY.
    THEIR INPUT CANNOT POSSIBLY SAY THE ACTUAL BEHAVIOR OF ANY
    EXECUTING PROCESS

    And the algorithm your EEE is computing is not the mathematical
    halting function, which has proven to not be computable:


    When HHH rejects DD as specifying a computation
    that does not reach its final halt state HHH IS CORRECT.

    It is correct when it reports that it failed to reach the end of the
    halting program.
    It is not very interesting to know whether a simulator reports that it
    is unable to reach the end of the simulation of a program that halts in
    direct execution.
    It is interesting to know:
    'Is there an algorithm that can determine for all possible inputs
    whether the input specifies a program that (according to the semantics
    of the machine language) halts when directly executed?'
    This question seems undecidable for Olcott.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From joes@21:1/5 to All on Wed Mar 26 09:53:08 2025
    Am Tue, 25 Mar 2025 17:49:06 -0500 schrieb olcott:
    On 3/25/2025 4:29 PM, joes wrote:
    Am Tue, 25 Mar 2025 08:01:14 -0500 schrieb olcott:
    On 3/25/2025 3:47 AM, joes wrote:

    A pure simulator can not limit the number of steps. Also III doesn't
    halt in, say, 3 steps. Why should III call a different instance that
    doesn't abort, when it is being simulated?

    The fact that the same states in the program-under-test keep repeating
    such that the program-under-test cannot possibly reach its own final
    halt state proves that program-under-test does not halt.

    They don't repeat, though, not in the same stack frame. And the test
    program is part of the program under test. Can you answer my question?

    Your question was incorrect.
    How so? You said III calls a non-aborting simulator instead of the one
    it is being simulated by. Those are not the same.

    The first four instructions of the finite string of machine code at
    machine address 00002172 are repeated until EEE reaches its finite
    limit.
    A simulator shouldn't be limited. And again, the instructions are not
    repeated in the same stack frame.

    --
    Am Sat, 20 Jul 2024 12:35:31 +0000 schrieb WM in sci.math:
    It is not guaranteed that n+1 exists for every n.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)