<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Thermal Noise</title>
	<atom:link href="http://thermalnoise.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://thermalnoise.wordpress.com</link>
	<description>The Adventures Of A Unix Programmer</description>
	<lastBuildDate>Wed, 21 Dec 2011 05:29:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='thermalnoise.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Thermal Noise</title>
		<link>http://thermalnoise.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://thermalnoise.wordpress.com/osd.xml" title="Thermal Noise" />
	<atom:link rel='hub' href='http://thermalnoise.wordpress.com/?pushpress=hub'/>
		<item>
		<title>Events !</title>
		<link>http://thermalnoise.wordpress.com/2010/08/23/events/</link>
		<comments>http://thermalnoise.wordpress.com/2010/08/23/events/#comments</comments>
		<pubDate>Mon, 23 Aug 2010 14:02:26 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=531</guid>
		<description><![CDATA[I have hacked around with node.js over the past month. One of the hardest things to get right with a new platform / language / framework / api is the balance between exposing powerful abstractions and keeping the interface clean and minimal. This is something Unix manges to do really well as opposed to Java [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=531&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">I have hacked around with <a href="http://nodejs.org/">node.js</a> over the past month. One of the hardest things to get right with a new platform / language / framework / api is the balance between exposing powerful abstractions and keeping the interface clean and minimal. This is something Unix manges to do really well as opposed to Java or Perl. Node makes a decent stab at both.<br />
<span id="more-531"></span></p>
<p style="text-align:justify;">Writing network servers in node.js seems insanely easy and powerful and I get to scale perfectly on a single core for free. Integration with the upcoming WebWorkers API might make the multicore story more seamless. But its a liberating feeling to not care about the quirks of <a href="http://software.schmorp.de/pkg/libeio.html">libeio</a> and <a href="http://software.schmorp.de/pkg/libev.html">libev</a> and C when all I want is to serve dynamic content over HTTP. There are already very node-like bindings for Redis, CouchDB and Cassandra &#8211; the three NoSQL systems I care about. There is also a very well thought out WebSocket library (socket-io.node) that has bindings for Flash, XHR, iFrames and WS with a uniform interface. And finally, async DNS = Sheer awesomeness !</p>
<p style="text-align:justify;">The main pain for me comes from the fact that I have to write code in Javascript &#8211; the horrendous monstrosity of a language. I tried <a href="http://jashkenas.github.com/coffee-script/">CoffeScript</a> &#8211; A fantastic and brave translator to cleanup the ugliness. But that is not good enough for my brain that is being conditioned by Haskell. Also, nesting layers and layers of closures makes code hard to follow.</p>
<p style="text-align:justify;">I liked a whole bunch of ideas exposed by node.js. Since I have been idling away on my vacation without much internet access, I started sketching out concepts for my-ideal-programming-language. Going from EBNF grammar specification to having a working parser took only a few days thanks to <a href="http://pyparsing.wikispaces.com/">PyParsing</a>. Walking the syntax tree and generating usable code took only a few hours thanks to <a href="http://code.google.com/p/llvm-py/">llvm-py</a>. I am curently thinking of a way to implement Scheme-style <a href="http://en.wikipedia.org/wiki/Call-with-current-continuation">call/cc</a> plus making the language more &#8220;functional&#8221; without looking alien to imperative programmers.</p>
<p style="text-align:justify;">Maybe I will get around to all these another day. But for now, I look forward to something more exciting: Getting married to someone very special and starting a new life <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<br />Filed under: <a href='http://thermalnoise.wordpress.com/category/computer-science/'>Computer Science</a>, <a href='http://thermalnoise.wordpress.com/category/programming/'>Programming</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/531/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/531/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/531/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/531/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/531/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/531/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/531/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/531/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=531&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2010/08/23/events/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>1262325600</title>
		<link>http://thermalnoise.wordpress.com/2010/01/01/1262325600/</link>
		<comments>http://thermalnoise.wordpress.com/2010/01/01/1262325600/#comments</comments>
		<pubDate>Fri, 01 Jan 2010 02:52:25 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Haskell]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=497</guid>
		<description><![CDATA[Happy New Year ! Its been a fantastic few weeks of Haskell so far. I had hoped to write about it more frequently, but that hasn&#8217;t happened. In terms of theory, discovering the magic of Curry-Howard Isomorphism has been a great experience. The idea that the program is the proof when you have a sufficiently [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=497&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Happy New Year !</p>
<p style="text-align:justify;">Its been a fantastic few weeks of Haskell so far. I had hoped to write about it more frequently, but that hasn&#8217;t happened.</p>
<p style="text-align:justify;"><span id="more-497"></span>In terms of theory, discovering the magic of <a href="http://en.wikipedia.org/wiki/Curry%E2%80%93Howard_correspondence">Curry-Howard Isomorphism</a> has been a great experience. The idea that the program <strong>is </strong>the proof when you have a sufficiently strong type system combined with side-effect free, lazily evaluated, functional programming is very seductive. Of course there is no point programming without side effects. But the idea is to use Monads for IO-like operations and keep side-effect inducing code away from purely functional code.</p>
<p style="text-align:justify;">As far as practice goes, i find it ridiculously hard to design and think in Haskell. Having a day job that involves imperative code in C++ and Python doesn&#8217;t help at all when you want to switch to FP after 8pm.</p>
<p style="text-align:justify;">Complicated things can be written in a simple and profoundly beautiful way:</p>
<p><pre class="brush: groovy; wrap-lines: false;">
-- Generate the first 100 primes
module Main where

primes :: [Integer]
primes = eratosthenes[2..]
  where
    eratosthenes(p:xs) = p : eratosthenes[x|x &lt;- xs, mod x p &gt; 0]

main = do
  putStrLn $ &quot;Primes = &quot; ++ show(take 100 primes)
</pre></p>
<p>While simple things might be surprisingly hard because you take recursion for granted:</p>
<p><pre class="brush: groovy; wrap-lines: false;">
-- Sum the first 1 million integers
module Main where

main = do
  putStrLn $ &quot;Sum = &quot; ++ show(sum [1..1000000])
</pre></p>
<p><pre class="brush: plain;">
[ananth@turing]:~/code/haskell $ ./a.out
Stack space overflow: current size 8388608 bytes.
Use `+RTS -Ksize' to increase it.
</pre></p>
<p>The bottomline: Haskell is a demanding mistress. You need to devote a lot of energy to it. Especially if you are new to FP. Writing performance critical production code is probably going to take me a year from now. But that is what new years are for.</p>
<p>As for Books, I found these two to be best suited to my style of alternate days of theory and practice:</p>
<p><a href="http://www.realworldhaskell.org/">Real World Haskell</a><br />
<a href="http://www.cs.utah.edu/~hal/htut/">Yet Another Haskell Tutorial</a></p>
<p>And Finally, Remember Earthlings:<br />
<strong>ALL THESE WORLDS ARE YOURS EXCEPT EUROPA. ATTEMPT NO LANDINGS THERE. <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </strong></p>
<br />Posted in Computer Science, Haskell, Programming  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/497/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=497&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2010/01/01/1262325600/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>Reading List and Rewiring</title>
		<link>http://thermalnoise.wordpress.com/2009/10/15/reading-list-and-rewiring/</link>
		<comments>http://thermalnoise.wordpress.com/2009/10/15/reading-list-and-rewiring/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 08:24:19 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[DEK]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Mathematics]]></category>
		<category><![CDATA[Rants]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=489</guid>
		<description><![CDATA[I am in the middle of rethinking my personal research and to that end debating about how much of my current reading list I should stick to. Here is what I have planned for the next couple of months: Surreal Numbers by Donald Knuth: A mathematical novelette that the Don used as an introduction to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=489&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">I am in the middle of rethinking my personal research and to that end debating about how much of my current reading list I should stick to. Here is what I have planned for the next couple of months:</p>
<p style="text-align:justify;"><span id="more-489"></span><a href="http://bit.ly/9DOy0">Surreal Numbers</a> by Donald Knuth: A mathematical novelette that the Don used as an introduction to John Conway&#8217;s fascinating concept of Surreal Numbers.</p>
<p style="text-align:justify;"><a href="http://bit.ly/1QhbQQ">On Numbers and Games</a> by John Conway: The Game Theoretic concepts whose solutions led Conway to discover Surreal Numbers. I have been told this is an extraordinary book full of insight.</p>
<p style="text-align:justify;"><a href="http://bit.ly/13RjM6">Sphere Packing, Lewis Carroll and Reversi</a> by Martin Gardner: The usual collection of Martin Gardner&#8217;s columns from the Scientific American. I chanced upon the book in a random bookstore here in Seattle and couldn&#8217;t resist getting it after reading the chapter on Polyominoes.</p>
<p style="text-align:justify;"><a href="http://en.wikipedia.org/wiki/Strange_loop">I am a Strange Loop</a> by Douglas Hofstadter: Stopped reading this half way through because I found Hofstadter&#8217;s explanations redundant and his tone patronizing. This is nowhere close to <a href="http://en.wikipedia.org/wiki/G%C3%B6del,_Escher,_Bach">Godel, Escher and Bach</a>. But it had some fascinating ideas nevertheless and is probably worth completing.</p>
<p style="text-align:justify;">The reason for the rewiring being that my free time research has drifted so so so far away from what i studied in college, what i used to do for a living and what i do for a living, that I have a hard time keeping up with all of them. While I still find operating systems and programming interesting, I figured it might be a good idea to learn some Haskell and investigate some Linux and Plan 9 internals. I am finding it tough to convince myself about it though: Transfinite Ordinals are infinitely more interesting (note and excuse the pun) than the fact that a bunch of people <a href="http://bit.ly/4D4g2">cannot agree on what O_DIRECT means</a>.</p>
<br />Posted in Books, Computer Science, DEK, Google, Mathematics, Rants  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/489/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/489/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/489/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=489&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/10/15/reading-list-and-rewiring/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>Haskell ?</title>
		<link>http://thermalnoise.wordpress.com/2009/10/11/haskell/</link>
		<comments>http://thermalnoise.wordpress.com/2009/10/11/haskell/#comments</comments>
		<pubDate>Sun, 11 Oct 2009 04:34:47 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=484</guid>
		<description><![CDATA[I have been looking at various options for learning a new secondary programming language (Primary still being &#8220;C&#8221;) in the past few weeks. The main intent is having a lot fun, exploring new concepts and maybe switch to it in the very distant future. Python was a LOT of fun, powerful, partly gives me a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=484&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">I have been looking at various options for learning a new secondary programming language (Primary still being &#8220;C&#8221;) in the past few weeks. The main intent is having a lot fun, exploring new concepts and maybe switch to it in the very distant future. Python was a LOT of fun, powerful, partly gives me a day job and so on, but I haven&#8217;t been able to do anything profoundly new with it in the last few months. I have looked at Erlang, Haskell and Scala so far (Functional Programming and Concurrency were big motivators).</p>
<p style="text-align:justify;"><span id="more-484"></span></p>
<p style="text-align:justify;">Scala is at the bottom of my list because the documentation and the community seem to be interested in attracting &#8220;Java Programmers&#8221;. Good luck trying to do that with a FPL and an arbitrarily different syntax. The JVM is a tempting option but being in a community of Java programmers is not.</p>
<p style="text-align:justify;">Erlang is a powerful and practical language. Its very good at concurrency even if message passing is a one trick pony. I was very annoyed by its syntax though &#8211; Did anyone think of refactoring as a legitimate use case ?</p>
<p style="text-align:justify;">Haskell is slightly academic but quickly evolving into a practical language. The syntax is just beautiful. It reads like a mathematical poem and that is a crucial factor for me. Writing high-perf programs seems to require magical knowledge. But I am completely willing to invest time in something that is a pleasure to work with. Also, it has multiple choices for concurrent programming, including <a href="http://research.microsoft.com/en-us/um/people/simonpj/papers/stm/index.htm">Software Transactional Memory</a>.</p>
<p style="text-align:justify;">The vague associations in my brain are: Scala &lt;=&gt; Java, Erlang &lt;=&gt; Perl, Haskell &lt;=&gt; Python. Haskell seems to be the emerging choice, but that option is not set in stone yet. Clojure and Ocaml are definitely out of the question. I already know a little bit of Scheme and LISP and they aren&#8217;t very exciting for me. What other languages should I be looking at ? Do people who read this have useful insights to share ?</p>
<br />Posted in Computer Science, Programming  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/484/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/484/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/484/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=484&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/10/11/haskell/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>You thought Skynet was Fiction ?</title>
		<link>http://thermalnoise.wordpress.com/2009/08/17/you-thought-skynet-was-fiction/</link>
		<comments>http://thermalnoise.wordpress.com/2009/08/17/you-thought-skynet-was-fiction/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 02:01:06 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=469</guid>
		<description><![CDATA[It might not be a theory of consciousness involving microtubules and pink butterflies &#8211; But I recently chanced upon Godel Machines which might very well be a way to make your own version of Skynet at home. Jürgen Schmidhuber has a fascinating way of thinking. From a theory of art and beauty explained in terms [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=469&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">It might not be a <a href="http://thermalnoise.wordpress.com/2008/05/15/the-science-of-consciousness/">theory of consciousness involving microtubules and pink butterflies</a> &#8211; But I recently chanced upon Godel Machines which might very well be a way to make your own version of <a href="http://en.wikipedia.org/wiki/Skynet_%28Terminator%29">Skynet</a> at home.</p>
<p style="text-align:justify;"><span id="more-469"></span><a href="http://en.wikipedia.org/wiki/J%C3%BCrgen_Schmidhuber">Jürgen Schmidhuber</a> has a fascinating way of thinking. From a <a href="http://www.idsia.ch/~juergen/locoart/locoart.html">theory of art and beauty</a> explained in terms of Kolmogorov complexity to creating efficient algorithms for Levin Search, he works in those unknown corners of Algorithmic Information Theory. And quite recently, he <a href="http://arxiv.org/abs/cs.LO/0309048">stated a formal theory</a> on a self-modifying algorithm that *provably* makes progress towards global optima. And the entities that carry out this form of computation are appropriately called <a href="http://www.idsia.ch/~juergen/goedelmachine.html">Godel Machines</a>.</p>
<p style="text-align:justify;">The reason I stay away from Machine Learning is because of the crude domain specific approximations, the lack of rigor in proving bounds on errors and runtime and a sloppy approach to problem solving in general by the ML community. Most approximation algorithms are just as good as random algorithms for universal classes of input. Given an unlimited computing power and an inversion problem to solve, enumerating all possible Turing machines will eventually lead to a solution. And using a Godel Machine to deterministically guide the search towards a solution while provably making progress and never regressing seems to be a much better way to do it.</p>
<p style="text-align:justify;">The Sun provides us with more than enough energy to do computation on the planet. If we can <a href="http://www.guardian.co.uk/science/blog/2009/jul/24/bacteria-computer">engineer bacteria</a> to find Hamiltonian Paths in Graphs, I wonder if computational efficiency is measured using the right metrics and if the choice of random optimization makes sense over Universal Search or Godel Machine like constructs in the distant future.</p>
<br />Posted in Computer Science  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/469/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=469&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/08/17/you-thought-skynet-was-fiction/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>ASMs and Random Things</title>
		<link>http://thermalnoise.wordpress.com/2009/06/09/asms-and-random-things/</link>
		<comments>http://thermalnoise.wordpress.com/2009/06/09/asms-and-random-things/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 02:40:00 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[DEK]]></category>
		<category><![CDATA[Humor]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=457</guid>
		<description><![CDATA[Yuri Gurevich from Microsoft Research [1] gave a very erudite and somewhat interesting Google Tech Talk on the Church-Turing thesis today. The reward for patiently listening to a poor video quality H.323 session across the Atlantic at midnight was the discovery of something totally new: Abstract State Machines. Update (The Video is Up): I have [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=457&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;"><a href="http://en.wikipedia.org/wiki/Yuri_Gurevich">Yuri Gurevich</a> from Microsoft Research [1] gave a very erudite and somewhat interesting Google Tech Talk on the Church-Turing thesis today. The reward for patiently listening to a poor video quality H.323 session across the Atlantic at midnight was the discovery of something totally new: <a href="http://en.wikipedia.org/wiki/Abstract_state_machines">Abstract State Machines</a>.</p>
<p style="text-align:justify;"><em>Update (The Video is Up):</em></p>
<p style="text-align:justify;"><strong><span style="text-align:center; display: block;"><a href="http://thermalnoise.wordpress.com/2009/06/09/asms-and-random-things/"><img src="http://img.youtube.com/vi/7XfA5EhH7Bc/2.jpg" alt="" /></a></span><br />
</strong>
</p>
<p style="text-align:justify;"><span id="more-457"></span></p>
<p style="text-align:justify;">I have trouble understanding ASMs as a fundamental model for computation like Lambda Calculus or Post-Turing Machines. But apparently &#8220;States&#8221; and &#8220;State Transitions&#8221; are good enough for universality. The advantage over the Standard Models is supposed to be the expresiveness and better mapping to high level structures and algorithms. This makes them very suitable for Formal Models , Verification and Validation. The video of the talk should be out soon and I will post a link when that happens. But the two most interesting personal takeaways from the talk were totally unrelated to ASMs:</p>
<p style="text-align:justify;">- Kolmogorov&#8217;s physical view of computation, entropy and information is completely fascinating. I should really find a readable text on Algorithmic Information Theory.</p>
<p style="text-align:justify;">- Donald Knuth once remarked on Artificial Intelligence: There are two great unsolved problems in AI &#8211; What is A ? and What is I ?</p>
<p style="text-align:justify;">Even if I didn&#8217;t make out much else from the talk, Don&#8217;s snide humor was totally worth an hour <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align:justify;">[1] Yes, we do let people from Redmond into Googleplex &#8211; <a href="http://www.theatlantic.com/doc/200712/google">Stan</a> needs to be fed once in a while.</p>
<br />Posted in Computer Science, DEK, Humor  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/457/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/457/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/457/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=457&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/06/09/asms-and-random-things/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>Pony Fail</title>
		<link>http://thermalnoise.wordpress.com/2009/05/21/pony-fail/</link>
		<comments>http://thermalnoise.wordpress.com/2009/05/21/pony-fail/#comments</comments>
		<pubDate>Thu, 21 May 2009 07:34:40 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[Sun]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=450</guid>
		<description><![CDATA[Read this on Jonathan&#8217;s blog: http://blogs.sun.com/jonathan/entry/will_java_be_the_world Its a great idea, no doubt. Just 11 years too late for Windows 98 &#8211; Long after people abandoned writing lousy desktop applications with ugly AWT or less ugly Swing. This time around Sun has a new secret weapon: JavaFX. But why would developers abandon Flash, AIR, Silverlight, OpenLaszlo, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=450&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Read this on Jonathan&#8217;s blog: <a href="http://bit.ly/s6Ccy">http://blogs.sun.com/jonathan/entry/will_java_be_the_world</a></p>
<p style="text-align:justify;">Its a great idea, no doubt. Just 11 years too late for Windows 98 &#8211; Long after people abandoned writing lousy desktop applications with ugly AWT or less ugly Swing. This time around Sun has a new secret weapon: JavaFX. But why would developers abandon Flash, AIR, Silverlight, OpenLaszlo, XUL and jump to a new platform ?</p>
<p style="text-align:justify;"><span id="more-450"></span></p>
<p style="text-align:justify;">0) The language is <a href="http://jfx.wikia.com/wiki/Code_Examples">horribly weird</a> and doesn&#8217;t fit into the brains conditioned by ActionScript. F# and Ocaml appear benign by comparison.</p>
<p style="text-align:justify;">1) Its not even multi-platform yet.</p>
<p style="text-align:justify;">2) Dude, where is my IDE ? Not Netbeans. Something like that shiny &#8220;Adobe Flash&#8221; thing.</p>
<p style="text-align:justify;">3) If the IDE doesn&#8217;t exist because this is targetted at &#8220;Enterprise Customers&#8221;, then where the fsck are the UnitTests ?</p>
<p style="text-align:justify;">And somebody thought that developers will ignore these fixable pain points and jump right into JavaFX  ? Esepcially when Oracle is all set to take over Sun&#8217;s business and give lots of love and care to desktop applications ?</p>
<p style="text-align:justify;">But the icing on top of most cakes made at Sun is the business plan. Mr. Schwartz writes:</p>
<p style="text-align:justify;">&#8220;Candidate applications will be submitted via a simple web site, evaluated by Sun for safety and content, then presented under free or fee terms to the broad Java audience via our update mechanism. Over time, developers will bid for position on our storefront, and the relationships won&#8217;t be exclusive (as they have been for search).&#8221;</p>
<p style="text-align:justify;">Really ? When was the last time you paid for a desktop application ? Impulse purchases on mobile phones by bored American Teenagers is a different market. It is a market where a *massive* quantity of high quality closed and open-source apps don&#8217;t exist to compete with you.</p>
<p style="text-align:justify;">And &#8220;bidding&#8221; for storefront positions ? Thats like bidding for Search Result Rankings. There is no price-point equilibrium that would work favorably for both Apple and Mr.T to promote Mr.T&#8217;s Ringtone to No.1 on the IPhone Store. Thats simply not how the Free Market works &#8211; you cannot fool all the people all the time. That is why an unscrupulous company like Apple has to use &#8220;honest&#8221; metrics such as moving averages of downloads and ratings to determine rankings for Apps.</p>
<p style="text-align:justify;">If neither consumers nor producers pay money for this App Store, where is the business ? Sun&#8217;s top brass doesn&#8217;t even know how to make profits out of selling &#8220;physical&#8221; commodities like servers. I take all this hand-waving about Desktop AppStores with a few tonnes of Salt.</p>
<p style="text-align:justify;">Just as the US. Congress rapped Detroit CEOs on the knee for leading Ford, GM and Chrysler to doom, somebody should question hi-tech CEOs for wasting billions in capital and sending the output of thousands of the brightest engineers on the planet to /dev/null.</p>
<br />Posted in Rants, Sun  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/450/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/450/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/450/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=450&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/05/21/pony-fail/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>True IPL TRP Stats</title>
		<link>http://thermalnoise.wordpress.com/2009/04/27/true-ipl-trp-stats/</link>
		<comments>http://thermalnoise.wordpress.com/2009/04/27/true-ipl-trp-stats/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 02:17:18 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Mathematics]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=445</guid>
		<description><![CDATA[Doug Hofstadter might find it amusing. But I find it incredibly annoying that when I want to read news online, I see news about news or media reporting about media or celebrity gossip about media celebrities. Talk about self-serving institutions. Being very interested in Statistics, all this recent Trash-Talk about Television ratings for the Indian [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=445&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Doug Hofstadter might find it amusing. But I find it incredibly annoying that when I want to read news online, I see news about news or media reporting about media or celebrity gossip about media celebrities. Talk about <a href="http://books.google.com/books?id=Xv9cXHL9f18C&amp;printsec=frontcover">self-serving institutions</a>. Being very interested in Statistics, all this recent Trash-Talk about Television ratings for the Indian Premier League got me interested in the methodology used for measuring TRP ratings.</p>
<p><span id="more-445"></span>There are apparently just two main companies that engage in the business of measuring TRP ratings:</p>
<p>1. Television Audience Measurement: <a href="http://www.tamindia.com/tamindia/">http://www.tamindia.com/tamindia/</a></p>
<p>2. Audience Measurement and Analytics: <a href="http://www.audiencemap.com/">http://www.audiencemap.com/</a></p>
<p>Here is a detailed rundown on either: <a href="http://www.chennaitvnews.com/2008/09/tam-tam-i-am-topper.html">http://www.chennaitvnews.com/2008/09/tam-tam-i-am-topper.html</a> (To my big surprise, they actually have devices installed in people&#8217;s homes to sample usage)</p>
<p style="text-align:justify;">Whats incredible is that, in a country rampant with corruption where Price Waterhouse Coopers played Dogberry to Satyam, we actually have a multi-billion dollar TV-Ads Industry that rides on the data provided by two sources with possibly highly skewed interests. Online advertising has a very nice solution with Stable Equilibrium in the form of <a href="http://en.wikipedia.org/wiki/Vickrey_auction">Second Price Auctions</a>. But in a market with no regulatory authority, I don&#8217;t think there is even a theoretical model where the TRP Auditors have a high incentive to be truthful. Lying their assess off seems like a dominant strategy and I suspect that is what happens all the time. (Please leave a note if you know of prior research in Game Theory that applies here).</p>
<p style="text-align:justify;">So what is a fair (if noisy) way to measure the impact of the IPL ? Here is a thought: The NIXI &#8211; India&#8217;s only Internet Exchange Point where all ISPs do Peering for local traffic has very pretty MRTG graphs that shows aggregate throughput across all the routers in the exchange point.</p>
<p style="text-align:justify;"><a href="http://thermalnoise.files.wordpress.com/2009/04/nixi-graph.png"><img class="aligncenter size-full wp-image-446" title="NIXI Throughput Graph" src="http://thermalnoise.files.wordpress.com/2009/04/nixi-graph.png?w=406" alt="NIXI Throughput Graph"   /></a></p>
<p style="text-align:center;"><a href="http://nixi.in/index.php?option=com_content&amp;task=view&amp;id=52&amp;Itemid=79">http://nixi.in/index.php?option=com_content&amp;task=view&amp;id=52&amp;Itemid=79</a></p>
<p style="text-align:justify;">And unless I am very mistaken, the time on the graphs is off by 12 hours and the 700 Mbps drop at 8 p.m (a.m on the graph), is when people stop watching <a href="http://www.youtube.com/watch?v=S0lb50nc_EQ">Skateboarding Dogs</a> and tune into the IPL. Be afraid of Geeks, TRP auditors &#8211; <a href="http://xkcd.com/523/">we haz graphs</a>.</p>
<br />Posted in Computer Science, General, Mathematics  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/445/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/445/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/445/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/445/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/445/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/445/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/445/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/445/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=445&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/04/27/true-ipl-trp-stats/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>

		<media:content url="http://thermalnoise.files.wordpress.com/2009/04/nixi-graph.png" medium="image">
			<media:title type="html">NIXI Throughput Graph</media:title>
		</media:content>
	</item>
		<item>
		<title>Turing: Complete, Godel: Incomplete</title>
		<link>http://thermalnoise.wordpress.com/2009/04/19/turing-complete-godel-incomplete/</link>
		<comments>http://thermalnoise.wordpress.com/2009/04/19/turing-complete-godel-incomplete/#comments</comments>
		<pubDate>Sun, 19 Apr 2009 01:52:25 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Mathematics]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=431</guid>
		<description><![CDATA[Far too much of my time in recent years has been spent by an all consuming obsession to understand Turing&#8217;s original proof as outlined in &#8220;On Computable Numbers with an application to the Entscheidungsproblem&#8221;. Much like Alice in Wonderland in pre-teen years and Super Mario Bros. of teenage yore, I suspect there was very little [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=431&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Far too much of my time in recent years has been spent by an all consuming obsession to understand Turing&#8217;s original proof as outlined in &#8220;On Computable Numbers with an application to the Entscheidungsproblem&#8221;. Much like Alice in Wonderland in pre-teen years and Super Mario Bros. of teenage yore, I suspect there was very little value in spending time thusly. But there is light at the end of the tunnel and for some vague definition of &#8220;complete&#8221;, I call my study of Turing&#8217;s paper done for the time being.</p>
<p style="text-align:justify;"><span id="more-431"></span>If you are happy with reading other people&#8217;s description of the proof and don&#8217;t intend to inflict pain upon yourself or like to have a life, try <a href="http://books.google.com/books?id=TMLgEIOGhBMC&amp;printsec=frontcover">Martin Davis</a> or <a href="http://books.google.com/books?id=EoTUHwAACAAJ">Charles Petzold</a>. For the rest, I am outlining the list of topics that were useful in understanding the proof and beyond:</p>
<p style="text-align:left;">- A passing knowledge of German and weird Gothic Fonts <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align:left;">- Diophantine Equations, Hilbert&#8217;s 10th Problem, Entscheidungsproblem</p>
<p style="text-align:justify;">- Euclidean Geometry, Constructions and Euclidean Numbers</p>
<p style="text-align:left;">- Naive Set Theory, Cardinality of Infinite Sets, Continuum Hypothesis, Dedekind&#8217;s Theorem, Transfinite Numbers</p>
<p style="text-align:left;">- Type Theory, Russell&#8217;s Paradox</p>
<p style="text-align:left;">- ZF Set Theory, Axiom of Choice</p>
<p style="text-align:left;">- Cantor&#8217;s Diagonalization Argument, Godel Numbering</p>
<p style="text-align:left;">- Overview of the proofs of Kurt Godel, Alonzo Church, Stephen Kleene, Julia Robinson, Yuri Matiyasevich</p>
<p style="text-align:left;">- Integers, Reals, Irrationals, Transcendentals</p>
<p style="text-align:left;">- Crux of Turing&#8217;s Proof: Computable Numbers, Definable Numbers, Turing Machines, Circle Free Machines, Skeleton Tables, Enumerability of Computable Sequences, Description Number, Satisfactory Numbers, Standard Description and  Universal Machines, Diagonalization applied to Description Numbers, Inability to construct Turing Machines for Circle-Free determination, Hilbert Functional Calculus a.k.a First-Order Logic and Automatic Theorem Proving using Turing Machines, Computable Functions, Universal Machine expressed via First-Order Logic, Equivalance of Propositional Provability and Circle-Free condition. Q.E.D.</p>
<p style="text-align:justify;">Many of the above subjects require a lifetime&#8217;s devotion themselves and I was merely a tourist through that fascinating mathematical landscape. The initial part of the study was heavily dependent on Google, ArXiv and Wikipedia. But about a year ago, I moved to a country where Amazon.com delivers books and that made life much easier.</p>
<p style="text-align:justify;">Much of the study overlaps with my next growing obsession, &#8220;On Formally Undecidable Propositions of Principia Mathematica and Related Systems&#8221;: Godel must be completed !</p>
<p style="text-align:justify;"><a href="http://twitter.com/ananthshrinivas">Pardon all the puns</a> <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<br />Posted in Computer Science, Mathematics  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/431/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/431/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=431&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/04/19/turing-complete-godel-incomplete/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
		<item>
		<title>Gulliver and the Markov Chain</title>
		<link>http://thermalnoise.wordpress.com/2009/03/17/gulliver-and-the-markov-chain/</link>
		<comments>http://thermalnoise.wordpress.com/2009/03/17/gulliver-and-the-markov-chain/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 02:13:54 +0000</pubDate>
		<dc:creator>ananthshrinivas</dc:creator>
				<category><![CDATA[Books]]></category>
		<category><![CDATA[Computer Science]]></category>
		<category><![CDATA[Dublin]]></category>
		<category><![CDATA[Mathematics]]></category>

		<guid isPermaLink="false">http://thermalnoise.wordpress.com/?p=423</guid>
		<description><![CDATA[Long long ago, before Claude Shannon modeled the distribution of English Words as a Markov process, before Larry and Sergey modeled the Random Surfer as a Markov Chain on the Graph of the Internet, before SciGen made Markov Chains the legend of Slashdot, before even Monte-Carlo and Metropolis-Hastings, there was Jonathan Swift. Martin Gardner&#8217;s &#8220;Logic [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=423&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:justify;">Long long ago, before Claude Shannon modeled the distribution of English Words as a Markov process, before Larry and Sergey modeled the Random Surfer as a Markov Chain on the Graph of the Internet, before <a href="http://pdos.csail.mit.edu/scigen/">SciGen</a> made Markov Chains the legend of Slashdot, before even Monte-Carlo and Metropolis-Hastings, there was <a href="http://en.wikipedia.org/wiki/Jonathan_Swift">Jonathan Swift</a>.</p>
<p style="text-align:justify;"><span id="more-423"></span>Martin Gardner&#8217;s <em>&#8220;Logic Machines and Diagrams&#8221;</em> is a highly recommended book. Especially for those who are interested in the early history of computing from a symbolic logic processing perspective as opposed to the history of the numeric processing computer. The book opens with the curious character of Ramon Llull. If you ever studied AI from Russell &amp; Norvig&#8217;s legendary AIMA and remember the <a href="http://www.cs.berkeley.edu/~russell/aima-cover-591KB.gif">cover image</a> &#8211; Among Lewis Caroll, Turing, Frege, Babbage and Aristotle you can find this messy drawing in the left hand corner that belongs to Mr. Llull.</p>
<p style="text-align:justify;">Ramon Llull was a curious character. He believed in logic and he believed in religion. (Much like <a href="http://en.wikipedia.org/wiki/Robert_J._Aumann">Aumann</a> or <a href="http://en.wikipedia.org/wiki/Saul_Kripke">Kripke</a> for contemporary examples). He believed that he could encode the principles of Christianity into a consistent formal system and use it as a tool to derive propositions, detect contradictions and convince the Crusading Muslims about the nature of God and Truth. He got killed for talking batshit and pissing people off before he got around to doing any of this but there was something interesting he did manage to concieve &#8211; The Lullian Circle &#8211; Seen in the cover of the aforementioned AIMA.</p>
<p style="text-align:justify;">The <a href="http://images.google.com/images?q=lullian+circle">Lullian Circle</a> is a series of concentric disks with markings along the circumference. The markings represent words or phrases. By rotating and aligning them you generate a combinatorial number of sentences. For each of them, an Index is referenced as the answer which either asserts the truth value of the statement or offers a proposition for the question. Most of Lull&#8217;s works did not have Socratic appeal and was pseudo-scientific in nature. But the Lullian circle apparently inspired Leibniz in his syllogistic pursuits.</p>
<p style="text-align:justify;">This is where Jonathan Swift comes in. In <a href="http://www.jaffebros.com/lee/gulliver/bk3/chap3-5.html">Book 3</a>, Lemuel Gulliver visits the Grand Academy of Lagado, where he sees &#8220;The Engine&#8221; &#8211; A 20 x 20 grid of cubes inscribed with words on their sides. Each of the 20 rows and 20 columns are rotated by levers. The Professor calls upon his students to rotate the lever and randomly stops them. Whenever they encounter a sequence of 3 or 4 words that could be reasonably fit into a real sentence, they transcribe it and produce &#8220;great works of art and science without genius or study&#8221; as the parody goes.</p>
<p style="text-align:justify;">According to Gardner, this is Swift pulling a fast one at the expense of Llull. Not only that, but we also have one of the earliest recorded instances of a Markov Chain in action. Instead of stochastically extracting words from a distribution, the students of Lagado generate random words and see if they fit a distribution. And they beat SciGen to it by a few hundred years.</p>
<p style="text-align:justify;">Happy St. Patrick&#8217;s Day to everyone in Dublin [1] <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align:justify;">[1] &#8211; As coincidences happen, <a href="http://www.stpatrickscathedral.ie/hist7.htm">Swift is interred</a> in St. Patrick&#8217;s Cathedral here.</p>
<br />Posted in Books, Computer Science, Dublin, Mathematics  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/thermalnoise.wordpress.com/423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/thermalnoise.wordpress.com/423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/thermalnoise.wordpress.com/423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/thermalnoise.wordpress.com/423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/thermalnoise.wordpress.com/423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/thermalnoise.wordpress.com/423/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/thermalnoise.wordpress.com/423/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/thermalnoise.wordpress.com/423/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=thermalnoise.wordpress.com&amp;blog=198085&amp;post=423&amp;subd=thermalnoise&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://thermalnoise.wordpress.com/2009/03/17/gulliver-and-the-markov-chain/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/69f0bb562f7db4f76e9cb03999454cbf?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">ananthshrinivas</media:title>
		</media:content>
	</item>
	</channel>
</rss>
