Path: csiph.com!usenet.pasdenom.info!news.albasani.net!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed4.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.000 X-Spam-Evidence: '*H*': 1.00; '*S*': 0.00; 'programmer': 0.03; 'charset:iso-8859-7': 0.04; 'argument': 0.05; 'encoding': 0.05; 'context': 0.07; 'referring': 0.07; 'think,': 0.07; 'tries': 0.07; '(aka': 0.09; 'differing': 0.09; 'implements': 0.09; 'mixed': 0.09; 'models.': 0.09; 'pretend': 0.09; 'rewrite': 0.09; 'runs': 0.10; 'cc:addr:python-list': 0.11; 'translation': 0.12; '"run': 0.16; '(it': 0.16; '(note': 0.16; 'ah,': 0.16; 'calculus,': 0.16; 'cc:name:python list': 0.16; "computer's": 0.16; 'dismiss': 0.16; 'equivalence': 0.16; 'finite': 0.16; 'formally': 0.16; 'hidden,': 0.16; 'implies': 0.16; 'justified': 0.16; 'lambda': 0.16; 'machine?': 0.16; 'mean,': 0.16; 'programmer,': 0.16; 'rarely': 0.16; 'rigorous': 0.16; 'scientist': 0.16; 'self-serving': 0.16; 'substituted': 0.16; 'surprising': 0.16; 'theorist,': 0.16; 'url:)': 0.16; 'language': 0.16; 'wrote:': 0.18; 'stack': 0.19; 'seems': 0.21; '(the': 0.22; 'machine': 0.22; 'memory': 0.22; 'cc:addr:python.org': 0.22; 'example.': 0.24; 'integer': 0.24; 'interpret': 0.24; 'mathematical': 0.24; 'math': 0.24; "haven't": 0.24; 'cc:2**0': 0.24; "i've": 0.25; 'define': 0.26; 'equivalent': 0.26; 'purposes': 0.26; 'least': 0.26; '(for': 0.26; 'primary': 0.26; 'gets': 0.27; 'header:In-Reply-To:1': 0.27; 'idea': 0.28; 'wondering': 0.29; 'possibility': 0.29; 'message- id:@mail.gmail.com': 0.30; "i'm": 0.30; 'code': 0.31; 'getting': 0.31; "skip:' 10": 0.31; 'that.': 0.31; 'url:wiki': 0.31; 'usually': 0.31; 'accomplished': 0.31; 'another.': 0.31; 'argue': 0.31; 'assumes': 0.31; 'dialog': 0.31; 'really,': 0.31; 'anyone': 0.31; 'another': 0.32; 'quite': 0.32; 'table': 0.34; 'sense': 0.34; 'maybe': 0.34; 'subject:the': 0.34; 'problem.': 0.35; 'something': 0.35; 'case,': 0.35; 'definition': 0.35; 'etc': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'there': 0.35; 'consist': 0.36; 'machine.': 0.36; 'scheme': 0.36; 'science.': 0.36; 'doing': 0.36; 'useful': 0.36; 'possible': 0.36; 'too': 0.37; 'operating': 0.37; 'two': 0.37; 'easily': 0.37; 'being': 0.38; 'implement': 0.38; 'issue': 0.38; 'little': 0.38; 'range': 0.61; 'skip:* 10': 0.61; 'simple': 0.61; 'you.': 0.62; "you've": 0.63; 'term': 0.63; 'kind': 0.63; 'such': 0.63; 'field': 0.63; 'our': 0.64; 'for:': 0.64; 'more': 0.64; 'school': 0.64; 'different': 0.65; 'to:addr:gmail.com': 0.65; 'between': 0.67; 'anything.': 0.68; "today's": 0.70; 'therefore': 0.72; 'other.': 0.75; 'confusing': 0.84; 'different.': 0.84; 'dismissed': 0.84; 'it"': 0.84; 'provable': 0.84; 'proves': 0.84; 'remained': 0.84; 'subtly': 0.84; 'territory': 0.84; 'tms': 0.84; 'calculus': 0.91; 'good,': 0.91; 'thesis': 0.91; 'washington': 0.93; '2013': 0.98 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:content-transfer-encoding; bh=Haz4dVhk8kxWyq/jcvcLaoefWdrZHxAMr36ym4DweuI=; b=AP/vb5qZK4hL3okuDVUdsHgPJx4fwd765RjUO2P9AtrDU6neDZ46b8pHVCzVwCqdl8 3ZoegUeVTyFzXaBUe87rVC0FIFLoeN9Y081YitOp4IRu4rTg5qVyqnvZ+qhmQhMMQ4mI 9+vkTGftyKrnga5kWb8u9ds+3NLdxEbYCAQuZ/Wh+PdDnUAHfL9Rmgxc2lCNf/hSM5+x h0PypbAk60B1wtydlqF1JMjrnKzZ/LZBNQStuVAZWS2b9nSkd1GYOszGPLWL2v/z8Zc3 dWjRI9Mt2N8/1MbddMxKWKRsVfRYct42Z2W08ZlDWBOze9oijfRv7LI5EEzTYtFYj5y2 V3cQ== MIME-Version: 1.0 X-Received: by 10.180.76.48 with SMTP id h16mr21873790wiw.32.1381209551661; Mon, 07 Oct 2013 22:19:11 -0700 (PDT) In-Reply-To: <48454d8d-19be-49e4-a63e-9718067e6417@googlegroups.com> References: <87had0axxy.fsf@dpt-info.u-strasbg.fr> <524C80B6.3010204@unistra.fr> <87li292wnt.fsf@dpt-info.u-strasbg.fr> <878uy52ea0.fsf@dpt-info.u-strasbg.fr> <5252F610.9040403@rece.vub.ac.be> <525348d7$0$29984$c3e8da3$5496439d@news.astraweb.com> <48454d8d-19be-49e4-a63e-9718067e6417@googlegroups.com> Date: Mon, 7 Oct 2013 22:19:11 -0700 Subject: Re: Formal-ity and the Church-Turing thesis From: Mark Janssen To: rusi Content-Type: text/plain; charset=ISO-8859-7 Content-Transfer-Encoding: quoted-printable Cc: Python List X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 109 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1381209553 news.xs4all.nl 15971 [2001:888:2000:d::a6]:48455 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:56347 > On Tuesday, October 8, 2013 5:54:10 AM UTC+5:30, zipher wrote: >> Now, one can easily argue that I've gone too far to say "no one has >> understood it" (obviously), so it's very little tongue-in-cheek, but >> really, when one tries to pretend that one model of computation can be >> substituted for another (arguing *for* the Church-Turing thesis), they >> are getting into troubling territory (it is only a thesis, >> remember).... > > The CT thesis is scientific and provable in one sense and vague/philosoph= ical in another. > The Science: Turing computability and lambda-computability are equivalent= . > The proofs just consist of writing interpreters for one in terms of the o= ther. Ah, good, a fellow theoretician. Now it's nice that you use language that makes it seem quite clear, but understand that there's a hidden, subconscious, *cultural* encoding to your *statement*. The use of the term "equivalent", for example. Equivalent for the programmer, or for the machine? (etc., et cetera), and further: "writing interpreters for one in terms of the other", but again, this will change depending on your pragmatic requirements. To the theorist, you've accomplished something, but then that is a self-serving kind of accomplishment. To the programmer, operating under different requirements, you haven't accomplished anything. I don't have an infinite stack to implement lambda calculus, but I can treat my computer's memory as a TM and *practically* infinite and only rarely hit against the limits of physicality. This is just being "respectful"... ;^) (For the purposes of discussion, if I make a word in CamelCase, I am referring to a page on the WikiWikiWeb with the same name: http://c2.com/cgi/wiki?WikiWikiWeb.) > The philosophy: *ALL* computational models are turing equivalent (and the= refore lambda-equivalent) or weaker. > The Idea (note not proof) is that for equivalence one can write pair-inte= rpreters like above. For the 'weaker' case, (eg DFA and TMs) one proves tha= t TMs can interpret DFAs and disproves the possibility of the other directi= on. > > This must remain an idea (aka thesis) and not a proof because one cannot = conceive of all possible computational models. Why not? I can "conceive" of all possible integer numbers even if I never "pictured" them. Is there not an inductive way to conceive of and define computation? I mean, I observe that the field seems to define several ModelsOfComputation. Intuitively I see two primary domains > It is hard science however for all the models that anyone has so far come= up with. And what of "interactive computation"? > As for: > >> I challenge you to get down to the machine code in scheme and formally >> describe how it's doing both. > > I can only say how ironic it sounds to someone who is familiar with the h= istory of our field: > Turing was not a computer scientist (the term did not exist then) but a m= athematician. And his major contribution was to create a form of argument = so much more rigorous than what erstwhile mathematicians were used to that = he was justified in calling that math as a machine. Hmm, I'm wondering if my use of the word "formally" is confusing you. In mathematics, this word has a subtly differing meaning, I think, than in computer science. Turing was "justified in calling that math as a machine" because he was using a definition (the translation table + finite dictionary) such that it remained perfectly deterministic. And here, again, one can easily gets mixed up using the same lexicon across two different domains: that of math and that of CS. I advise you to look at the dialog at ConfusedComputerScience. > The irony is that today's generation assumes that 'some-machine' implies = its something like 'Intel-machine'. > To get out of this confusion ask yourself: Is it finite or infinite? But this only gets us out of the confusion for the mathematicians. For the programmer and perhaps even the computer scientist (the one's coming from physics), it is something different. > If the TM were finite it would be a DFA But this is not a useful formalism. Any particular Program implements a DFA, even as it runs on a TM. The issue of whether than TM is finite or not can be dismissed because a simple calculation can usually suffice, or at least establish a range "usefulness" so as not to "run out of memory". > If the Intel-machine (and like) were infinite they would need to exist in= a different universe. Ha, yeah. Let us dismiss with that. > And so when you understand that TMs are just a kind of mathematical rewri= te system (as is =EB calculus as are context free grammars as is school ari= thmetic etc etc) you will not find the equivalence so surprising It's not that it's surprising, it's that it's *practically* a problem. The translation between one PL and another which assumes a different model of computation can get intractible. Maybe that makes sense.... MarkJ Tacoma, Washington