- Detecting infinite recursion - 2 Updates
Bonita Montero <Bonita.Montero@gmail.com>: Mar 07 04:38PM +0100 Detecting and handling infinite recursion is easy: __try { ... } __except( GetExceptionCode() == EXCEPTION_STACK_OVERFLOW ? EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH ) { ... } Hrhr. |
olcott <NoOne@NoWhere.com>: Mar 07 09:55AM -0600 On 3/7/2021 9:38 AM, Bonita Montero wrote: > ... > } > Hrhr. I am creating a halt decider that correctly decides the conventional halting problem counter examples on the basis of examining the x86 machine language execution trace of the H_Hat() invocations of Halts(). The halt decider decides that they are infinitely recursive, aborts its simulation of H_Hat() and decides not halting. Halts() has as its foundation a complete fully functional x86 emulator that has "been on the market" for 25 years. void H_Hat(u32 P) { u32 Input_Halts = Halts(P, P); if (Input_Halts) HERE: goto HERE; } int main() { u32 Input_Would_Halt = Halts((u32)H_Hat, (u32)H_Hat); Output("Input_Would_Halt = ", Input_Would_Halt); } http://www.liarparadox.org/Eliminating_pathological_self_reference_error_from_the_halting_problem.pdf -- Copyright 2021 Pete Olcott "Great spirits have always encountered violent opposition from mediocre minds." Einstein |
You received this digest because you're subscribed to updates for this group. You can change your settings on the group membership page. To unsubscribe from this group and stop receiving emails from it send an email to comp.lang.c+++unsubscribe@googlegroups.com. |
No comments:
Post a Comment