<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 2016-02-26 18:29, Anders Sandberg
      wrote:<br>
    </div>
    <blockquote cite="mid:56D0DFD1.4030008@aleph.se" type="cite">
      <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
      <div class="moz-cite-prefix">On 2016-02-26 16:40, John Clark
        wrote:<br>
      </div>
      <blockquote
cite="mid:CAJPayv2tGYcAcjqLv+=NP6J7RW1P_W-LqMu6-DRNQdtyOHV+8g@mail.gmail.com"
        type="cite">
        <meta http-equiv="Content-Type" content="text/html;
          charset=UTF-8">
        <div dir="ltr"><br>
          <div class="gmail_extra">
            <div class="gmail_quote">
              <div>
                <div class="gmail_default"
                  style="font-family:arial,helvetica,sans-serif"><font
                    size="4">​No I don't mean that, I mean running
                    around in a circle and making no progress but having
                    no way to know for sure that you're running around
                    in a circle and making no progress. Turing proved
                    there is in general no way to know if you're in a
                    infinite loop or not.</font></div>
              </div>
            </div>
          </div>
        </div>
      </blockquote>
      <br>
      No, he did not. You are confusing the halting theorem (there is no
      algorithm that</blockquote>
    <blockquote cite="mid:56D0DFD1.4030008@aleph.se" type="cite">can
      determine if a program given to it will halt) with detecting an
      infinite loop.</blockquote>
    <br>
    <span class="im"></span>
    <div>For finite programs, it's the same problem. Either a program
      halts or it loops forever.</div>
    <span class="im">
      <div> </div>
      <blockquote class="gmail_quote" style="margin:0 0 0
        .8ex;border-left:1px #ccc solid;padding-left:1ex">
        <div bgcolor="#FFFFFF" text="#000000"> Note that a program X can
          be extended to a program X' (or run by an interpreter) that </div>
      </blockquote>
      <blockquote class="gmail_quote" style="margin:0 0 0
        .8ex;border-left:1px #ccc solid;padding-left:1ex">
        <div bgcolor="#FFFFFF" text="#000000">maintains a list of past
          states and check if X returns to a previous state. It will
          accurately </div>
      </blockquote>
      <blockquote class="gmail_quote" style="margin:0 0 0
        .8ex;border-left:1px #ccc solid;padding-left:1ex">
        <div bgcolor="#FFFFFF" text="#000000">detect its infinite
          looping when it occurs.<br>
        </div>
      </blockquote>
      <div><br>
      </div>
    </span>
    <div>You can loop forever without ever returning to a previous
      state, though:</div>
    <div><br>
    </div>
    <div>10 LET UNBOUNDED INTEGER i = 0;</div>
    <div>20 i = i + 1;</div>
    <div>30 GOTO 20;</div>
    <div><br>
    </div>
    <div>Your proposed loop detector would never detect this simple
      infinite loop.</div>
    <pre class="moz-signature" cols="72">-- 
__________
 |im Tyler <a class="moz-txt-link-freetext" href="http://timtyler.org/">http://timtyler.org/</a>

</pre>
  </body>
</html>