{"id":271,"date":"2010-08-28T02:42:50","date_gmt":"2010-08-27T21:42:50","guid":{"rendered":"http:\/\/www.papaworx.com\/Blog\/?p=271"},"modified":"2010-09-12T17:26:35","modified_gmt":"2010-09-12T12:26:35","slug":"chomsky-vs-turing","status":"publish","type":"post","link":"https:\/\/www.papaworx.com\/Blog\/2010\/08\/28\/chomsky-vs-turing\/","title":{"rendered":"Chomsky vs. Turing"},"content":{"rendered":"<p>Solving\u00a0a computational problem in advanced statistics, I recently experienced an epiphany that led me from Alan Turing to Noam Chomsky.<\/p>\n<p>Alan Turing (1912 &#8211; 1954) is considered the father of modern computer science. Around 1936 he proposed a theoretical computing machine that could solve general classes of computing problems. The first such machines were purely conceptual. They consisted of a data storage medium from which data could be read sequentially, and a multi-state engine that\u00a0would predictably change state depending on the data read. During his war time work as a code breaker in Bletchley Park,\u00a0Turing gradually turned these theoretical ideas into actual data processing machines. Initially, the logic of Turing machines was hard-wired. But both Turing and John von Neumann extended the concept to stored logic computing machines, where the computing logic itself was considered data: a program.<\/p>\n<p>For the past 70 years, computer science has largely followed the Turing paradigm &#8211; a conceptual engine that changes its state depending on data entered. This state transition is typically\u00a0represented in programming languages by &#8220;if&#8230;then&#8230;&#8221; switches. A variety of\u00a0programming techniques were developed to tame the ever\u00a0sprouting\u00a0vegetation of &#8220;if&#8230;then&#8230;&#8221; constructs, with various degrees of success.<\/p>\n<p>Another scientific father figure &#8211; Noam Chomsky, a theoretical linguist\u00a0&#8211; developed his model of generative grammar in the 1950s. He probably wasn&#8217;t thinking of computers at all, when he came up with the concept of &#8220;transformational syntax&#8221;. Where Turing was concerned with computation, Chomsky&#8217;s focus was on language. I will define language here to suit my purpose: &#8220;a\u00a0linear sequence of symbols, drawn repeatedly\u00a0from a finite symbol set to consistently express and communicate\u00a0a potentially\u00a0unlimited number of\u00a0meanings&#8221;.<\/p>\n<p>A colleague had asked me to help him solve a statistical problem, which his fancy toolbox of statistical software could not\u00a0handle. The problem was clearly defined, his need was acute and I\u00a0designed a program to\u00a0meet his specific need all in the conventional Turingian paradigm. He liked the program and wanted to apply it to a set of related problems. As sets are prone to do, this one too kept expanding and expanding. I added more and more branches into my state change logic. It becam almost impossible to keep track of the logical landscape. I was ready to toss in the proverbial towel.<\/p>\n<p>That was, when it hit me:\u00a0the description of his psychological experiments formed a language. Even though the descriptive terms of individual facets would span the alphabet,\u00a0each facet could be classified\u00a0according to\u00a0a tree with 10 final branches. Suddenly, the problem had become almost trivial. The spaghetti salad of &#8220;if&#8230;then&#8230;&#8221;\u00a0constructs changed into a\u00a0four step algorithm: (i) the original problem formulation\u00a0is encoded according to facet classes; (ii) the encoded problem formulation\u00a0is transformed according to well defined\u00a0syntactic rules; (iii) the results of the transformations\u00a0form a finite set of problem signatures; (iv) for a given problem signature, a corresponding formula calculates the desired results. Now, my colleague&#8217;s desires for expanding the problem set even further rarely meets with more than a yawn.<\/p>\n<p>Software designers might find it useful, to look for an implied language in a given problem formulation and employ syntactic transformation to arrive at an economical solution..<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Solving\u00a0a computational problem in advanced statistics, I recently experienced an epiphany that led me from Alan Turing to Noam Chomsky. Alan Turing (1912 &#8211; 1954) is considered the father of modern computer science. Around 1936 he proposed a theoretical computing &hellip; <a href=\"https:\/\/www.papaworx.com\/Blog\/2010\/08\/28\/chomsky-vs-turing\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"","footnotes":""},"categories":[4],"tags":[36,39,37,38,35],"_links":{"self":[{"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/posts\/271"}],"collection":[{"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/comments?post=271"}],"version-history":[{"count":14,"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/posts\/271\/revisions"}],"predecessor-version":[{"id":284,"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/posts\/271\/revisions\/284"}],"wp:attachment":[{"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/media?parent=271"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/categories?post=271"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.papaworx.com\/Blog\/wp-json\/wp\/v2\/tags?post=271"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}