<?xml version="1.0" encoding="iso-8859-1"?><!-- generator="b2evolution/2.4.1" -->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Desunt Cetera</title>
		<link>http://www.desuntcetera.com/blogs/index.php</link>
		<description></description>
		<language>en-US</language>
		<docs>http://blogs.law.harvard.edu/tech/rss</docs>
		<admin:generatorAgent rdf:resource="http://b2evolution.net/?v=2.4.1"/>
		<ttl>60</ttl>
				<item>
			<title>Blog moved</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=46&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Mon, 05 May 2008 15:35:28 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Metaphysics</category>			<guid isPermaLink="false">46@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;I&amp;#8217;ve become dissatisfied with b2Evolution as a blog platform. So I decided to follow the heard and move to wordpress. The blog is now located at &lt;a href=&quot;http://desuntcetera.com/blog&quot;&gt;http://desuntcetera.com/blog&lt;/a&gt; and the new feed url (if anyone is actually using it&amp;#8230;) is &lt;a href=&quot;http://desuntcetera.com/blog/feed/&quot;&gt;http://desuntcetera.com/blog/feed/&lt;/a&gt;.&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=46&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>I&#8217;ve become dissatisfied with b2Evolution as a blog platform. So I decided to follow the heard and move to wordpress. The blog is now located at <a href="http://desuntcetera.com/blog">http://desuntcetera.com/blog</a> and the new feed url (if anyone is actually using it&#8230;) is <a href="http://desuntcetera.com/blog/feed/">http://desuntcetera.com/blog/feed/</a>.</p><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=46&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=46&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>On Evolution: Biological and Computational</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=45&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Sat, 05 Apr 2008 03:24:44 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Computer Science</category>
<category domain="main">Evolution</category>			<guid isPermaLink="false">45@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;The genetic algorithm is one method of solving problems in computer science. Although it comes in many flavors, for the purposes of this article I&amp;#8217;ll focus on a simple example.&lt;/p&gt;

&lt;p&gt;Imagine you have a multiple choice test with 20 questions. Each question can be answered by choosing one of four choices. A compete answer to the test consists of a string of 20 characters, each of which is chosen from the set {A, B, C, D}. The solution to the test is an answer string where every answer is correct.&lt;/p&gt;

&lt;p&gt;A valid, but not necessarily correct, answer string would look like this:&lt;/p&gt;

&lt;p&gt;ABDCBDABDBCABDCCBABD&lt;/p&gt;

&lt;p&gt;How many possible answer strings are there? Well, each position in the string can take on 4 different values, and there are 20 of them, so there are 4^20 = 1,099,511,627,776 possible ways to answer the test. That&amp;#8217;s &amp;#8220;just&amp;#8221; over 1 trillion (over by 99 billion, that is). To give you a sense of perspective, that&amp;#8217;s about as many seconds as there are in 35,000 years. Yeah, that&amp;#8217;s a lot.&lt;/p&gt;



&lt;p&gt;Imagine you have access to an oracle to whom you can submit a solution string. He will look at your string, and tell you how many answers you got right, but he wont tell you which ones are right, just the raw score. Based on this information, how many answer strings do you think you would have to look at to find the right answer?&lt;/p&gt;

&lt;p&gt;If you are just pulling random strings out of thin air, its entirely possible to choose the right one instantly. But that&amp;#8217;s not likely to happen. When choosing a string at random, each string has a 1 in 1,099,511,627,776 chance of being chosen. If there is only one correct solution, you have a 1 in 1,099,511,627,776 chance of choosing the correct string on the first go, a 1 in 1,099,511,627,775 chance on the second (since you&amp;#8217;ve already eliminated one string), and so on. You would have to examine billions of strings before your chance of choosing the correct string at random starts to even approach the chance that you will win the lottery. You would have to examine 99% of of the strings before the chance that a string picked at random from the remaining set is the correct one approach &amp;#8220;normal&amp;#8221; odds of 1 in a million.&lt;/p&gt;

&lt;p&gt;&amp;#8220;What does this have to do with computation?&amp;#8221; you may ask. If, instead of choosing strings at random, we used a genetic algorithm, we can drastically reduce the number of strings that have to be checked to find the correct solution.&lt;/p&gt;

&lt;p&gt;Feel free to skip this section if you don&amp;#8217;t want the gory details.&lt;/p&gt;

&lt;p&gt;Here is how I created a genetic algorithm to find the solution to a given test. I created an initial random population of 20,000 random strings. And by &amp;#8220;random&quot;, I mean just that: each string was chosen by randomly picking which letter would go at which spot in the string. Each of these strings was checked against the correct solution string for the number of answers it got right. This number became the fitness value of the string. The 1,000 most highly fit strings were carried over into the next generation unchanged. The remaining spots in the population were filled via two methods: mutation, and crossover.&lt;/p&gt;

&lt;p&gt;For any one mutation, there are two possibilities. A string is selected from the population, on the basis of its fitness, i.e. more fit strings have a higher chance of being chosen than less fit strings, but every string has a chance to be chosen. The first possibility is that a random point in the string is chosen, and the letter at that point is randomly changed to one of the four possibilities. This gives a 1 in 4 chance that the mutation wouldn&amp;#8217;t change anything at all. The second possibility is that a range in the string is selected and reversed. This also has the possibility of leaving the string intact, if the randomly selected range is only one character long. Either way, the resulting string was added to the new population.&lt;/p&gt;

&lt;p&gt;For crossover, two strings are chosen from the population, and again the chance of being selected is weighted by fitness. A random point in the strings is chosen at which to preform crossover. The two strings are split at these points, and two new strings generated by combining the ends of the parts.&lt;/p&gt;

&lt;p&gt;The fitness of the new population of strings is evaluated, and the process repeated until a correct solution was found.&lt;/p&gt;

&lt;p&gt;Here are the results of the experiment.&lt;/p&gt;

&lt;p&gt;What is the smallest number of generations this method took to find the correct string? When I ran the experiment, the shortest time was 12 generations. That means examining 12,000 strings, out of a possible 1,099,511,627,776, or, just 0.0000000001% (1.09139364 x 10^-9 to be exact) of the total possible strings. Obviously, this is more than slightly better than chance. The most generations it took was 22, a total of 22,000 strings. The average number of generations was 16. In the starting populations, the average fitness was generally 8, with 13 being the highest individual fitness I ever saw.&lt;/p&gt;

&lt;p&gt;It is interesting to note that the operations performed on the strings are not guaranteed to produce a more fit string. Very often the change makes the resulting string less fit than its parents. But in general, the average fitness of the whole population goes up, even though most mutations are not beneficial. This is because when a beneficial mutation occurs, it tends to rapidly spread through the population. The new, more fit string has a better chance of mating than the other strings. This string&amp;#8217;s offspring tend to inherit its higher fitness, so they have a better chance of reproducing than the offspring of other strings. In short order, all of the strings will be descended from the successful mutated string.&lt;/p&gt;

&lt;p&gt;The take home point is that even without any knowledge of why a particular string fares better than another, the simple act of making random changes to fit strings gives rise to more fit strings, and converges on the most fit string in a surprisingly short time.&lt;/p&gt;

&lt;p&gt;Now, this is not to say that evolution in the natural world works exactly as I have implemented it here. But it does serve to show that IF you have a means of varying the organisms in an environment and ALSO some way of making some of them survive and others die off that&amp;#8217;s related to the traits possessed by individuals, THEN those traits which cause the individuals to survive will spread throughout the population.&lt;/p&gt;

&lt;p&gt;Some people argue that evolution cannot give rise to new information, as culling members of an existing population serves to reduce genetic diversity. While it is true that culling members reduces genetic diversity, and by extension (in some sense) information, their claim that this rules out evolution is wrong. It&amp;#8217;s the mutation that introduces new information into the gene pool. Natural selection serves to cull out information that is detrimental to survival.&lt;/p&gt;

&lt;p&gt;Some people accept &amp;#8220;micro&amp;#8221; evolution, but not &amp;#8220;macro&amp;#8221; evolution. I&amp;#8217;ve dealt with this in a &lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=31&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;previous post&lt;/a&gt;, so I&amp;#8217;ll just point out here that, if two populations of the same species end up in different areas, where different traits are required for survival, then evolution dictates that they diverge into separate species. This is caused by two factors: the selection criteria for survival will probably be different in the different areas, and geographic separation means that any new traits introduced by mutation will not spread to the other population.&lt;/p&gt;

&lt;p&gt;To summarize, in order for evolution to occur, the ONLY things needed are 1. variation in a population of individuals and 2. some individuals more fit to their environment than others. If these two properties are present, evolution WILL happen. Not just may, or might, but WILL. If you admit that species change over time, no matter how minor the changes, and that members of a species survive or die depending on individual traits, you must accept that evolution takes place. Furthermore, you must accept that speciation will happen when populations are split into different geographic areas with different environments. To do otherwise should result in your head exploding from the cognitive dissonance of holding two contradictory ideas at the same time.&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=45&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>The genetic algorithm is one method of solving problems in computer science. Although it comes in many flavors, for the purposes of this article I&#8217;ll focus on a simple example.</p>

<p>Imagine you have a multiple choice test with 20 questions. Each question can be answered by choosing one of four choices. A compete answer to the test consists of a string of 20 characters, each of which is chosen from the set {A, B, C, D}. The solution to the test is an answer string where every answer is correct.</p>

<p>A valid, but not necessarily correct, answer string would look like this:</p>

<p>ABDCBDABDBCABDCCBABD</p>

<p>How many possible answer strings are there? Well, each position in the string can take on 4 different values, and there are 20 of them, so there are 4^20 = 1,099,511,627,776 possible ways to answer the test. That&#8217;s &#8220;just&#8221; over 1 trillion (over by 99 billion, that is). To give you a sense of perspective, that&#8217;s about as many seconds as there are in 35,000 years. Yeah, that&#8217;s a lot.</p>



<p>Imagine you have access to an oracle to whom you can submit a solution string. He will look at your string, and tell you how many answers you got right, but he wont tell you which ones are right, just the raw score. Based on this information, how many answer strings do you think you would have to look at to find the right answer?</p>

<p>If you are just pulling random strings out of thin air, its entirely possible to choose the right one instantly. But that&#8217;s not likely to happen. When choosing a string at random, each string has a 1 in 1,099,511,627,776 chance of being chosen. If there is only one correct solution, you have a 1 in 1,099,511,627,776 chance of choosing the correct string on the first go, a 1 in 1,099,511,627,775 chance on the second (since you&#8217;ve already eliminated one string), and so on. You would have to examine billions of strings before your chance of choosing the correct string at random starts to even approach the chance that you will win the lottery. You would have to examine 99% of of the strings before the chance that a string picked at random from the remaining set is the correct one approach &#8220;normal&#8221; odds of 1 in a million.</p>

<p>&#8220;What does this have to do with computation?&#8221; you may ask. If, instead of choosing strings at random, we used a genetic algorithm, we can drastically reduce the number of strings that have to be checked to find the correct solution.</p>

<p>Feel free to skip this section if you don&#8217;t want the gory details.</p>

<p>Here is how I created a genetic algorithm to find the solution to a given test. I created an initial random population of 20,000 random strings. And by &#8220;random", I mean just that: each string was chosen by randomly picking which letter would go at which spot in the string. Each of these strings was checked against the correct solution string for the number of answers it got right. This number became the fitness value of the string. The 1,000 most highly fit strings were carried over into the next generation unchanged. The remaining spots in the population were filled via two methods: mutation, and crossover.</p>

<p>For any one mutation, there are two possibilities. A string is selected from the population, on the basis of its fitness, i.e. more fit strings have a higher chance of being chosen than less fit strings, but every string has a chance to be chosen. The first possibility is that a random point in the string is chosen, and the letter at that point is randomly changed to one of the four possibilities. This gives a 1 in 4 chance that the mutation wouldn&#8217;t change anything at all. The second possibility is that a range in the string is selected and reversed. This also has the possibility of leaving the string intact, if the randomly selected range is only one character long. Either way, the resulting string was added to the new population.</p>

<p>For crossover, two strings are chosen from the population, and again the chance of being selected is weighted by fitness. A random point in the strings is chosen at which to preform crossover. The two strings are split at these points, and two new strings generated by combining the ends of the parts.</p>

<p>The fitness of the new population of strings is evaluated, and the process repeated until a correct solution was found.</p>

<p>Here are the results of the experiment.</p>

<p>What is the smallest number of generations this method took to find the correct string? When I ran the experiment, the shortest time was 12 generations. That means examining 12,000 strings, out of a possible 1,099,511,627,776, or, just 0.0000000001% (1.09139364 x 10^-9 to be exact) of the total possible strings. Obviously, this is more than slightly better than chance. The most generations it took was 22, a total of 22,000 strings. The average number of generations was 16. In the starting populations, the average fitness was generally 8, with 13 being the highest individual fitness I ever saw.</p>

<p>It is interesting to note that the operations performed on the strings are not guaranteed to produce a more fit string. Very often the change makes the resulting string less fit than its parents. But in general, the average fitness of the whole population goes up, even though most mutations are not beneficial. This is because when a beneficial mutation occurs, it tends to rapidly spread through the population. The new, more fit string has a better chance of mating than the other strings. This string&#8217;s offspring tend to inherit its higher fitness, so they have a better chance of reproducing than the offspring of other strings. In short order, all of the strings will be descended from the successful mutated string.</p>

<p>The take home point is that even without any knowledge of why a particular string fares better than another, the simple act of making random changes to fit strings gives rise to more fit strings, and converges on the most fit string in a surprisingly short time.</p>

<p>Now, this is not to say that evolution in the natural world works exactly as I have implemented it here. But it does serve to show that IF you have a means of varying the organisms in an environment and ALSO some way of making some of them survive and others die off that&#8217;s related to the traits possessed by individuals, THEN those traits which cause the individuals to survive will spread throughout the population.</p>

<p>Some people argue that evolution cannot give rise to new information, as culling members of an existing population serves to reduce genetic diversity. While it is true that culling members reduces genetic diversity, and by extension (in some sense) information, their claim that this rules out evolution is wrong. It&#8217;s the mutation that introduces new information into the gene pool. Natural selection serves to cull out information that is detrimental to survival.</p>

<p>Some people accept &#8220;micro&#8221; evolution, but not &#8220;macro&#8221; evolution. I&#8217;ve dealt with this in a <a href="http://www.desuntcetera.com/blogs/index.php?p=31&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">previous post</a>, so I&#8217;ll just point out here that, if two populations of the same species end up in different areas, where different traits are required for survival, then evolution dictates that they diverge into separate species. This is caused by two factors: the selection criteria for survival will probably be different in the different areas, and geographic separation means that any new traits introduced by mutation will not spread to the other population.</p>

<p>To summarize, in order for evolution to occur, the ONLY things needed are 1. variation in a population of individuals and 2. some individuals more fit to their environment than others. If these two properties are present, evolution WILL happen. Not just may, or might, but WILL. If you admit that species change over time, no matter how minor the changes, and that members of a species survive or die depending on individual traits, you must accept that evolution takes place. Furthermore, you must accept that speciation will happen when populations are split into different geographic areas with different environments. To do otherwise should result in your head exploding from the cognitive dissonance of holding two contradictory ideas at the same time.</p><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=45&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=45&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>What Tomato Sauce Can Tell Us About Attraction</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=44&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Sun, 30 Mar 2008 01:04:43 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Musings</category>
<category domain="alt">Evolution</category>			<guid isPermaLink="false">44@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;My wife turned up &lt;a href=&quot;http://shakespearessister.blogspot.com/2008/03/in-which-i-ramble-about-attraction.html&quot;&gt;this post&lt;/a&gt;, in which a blogger goes on a bit of a rant in regards to attractiveness and weight. I&amp;#8217;d like to throw my two cents into the pot and comment on two specific things she touches on briefly.&lt;/p&gt;



&lt;p&gt;One of the comments she reproduces in her post says:&lt;/p&gt;

&lt;p&gt;&lt;code class=&quot;codespan&quot;&gt;Society has not conditioned us, evolution has. Men are attracted to women that represent the best chance of bearing their young and caring for them. This means young and physically fit.... This is not opinion, it is fact.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;The idiocy and wrongness of this comment astound me. Evolution actually selected for chunky woman. Who do you think took better care of an infant: a woman who had the fat reserves to produce a continuous supply of milk even if she wasn&amp;#8217;t eating regularly herself, or a woman who had no fat reserves at all, and wasn&amp;#8217;t able to produce milk on days when the hunters didn&amp;#8217;t bring home any food? Furthermore, there is a reason woman&amp;#8217;s hips, and hence their gait, differ from men&amp;#8217;s. Evolution selected for wide hips that allowed for easy birth. Those women who died in childbirth, and took their babies with them, obviously didn&amp;#8217;t get to contribute to the gene pool. In fact, its only because of modern science that this selection effect doesn&amp;#8217;t continue. The human infants head is rather large compared to the birth canal. Until very recently, as in the last 100 years, a woman was more likely to die in child birth than any other circumstance.&lt;/p&gt;

&lt;p&gt;I&amp;#8217;m sure the person who posted this comment imagined in his head that a physically fit woman, when attacked, could grab her infant and run with it, leaving a fatter woman behind to get eaten. But its been a long time since humans have been a prey animal for any large predator, and that has been the case for thousands of years. When you exist in the context of a hunter gatherer society, being &amp;#8220;physically fit&amp;#8221; is no longer a pre-requisite for survival. On the other hand, easy child birth is damn useful, as is being able to survive lean times on fat reserves.&lt;/p&gt;

&lt;p&gt;The other point I want to touch on is exemplified by this comment:&lt;/p&gt;

&lt;p&gt;&lt;code class=&quot;codespan&quot;&gt;Are you really that naive? seriously. You KNOW what guys want, look around! They want that hot, sexy, body, a gal to make them look good too. MOST men do not prefer an overweight woman.&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Its that last clause, that &amp;#8220;MOST men do not prefer an overweight woman.&amp;#8221; Well, duh. Most men don&amp;#8217;t. And most men don&amp;#8217;t prefer an underweight woman, for example &lt;a href=&quot;http://images.google.com/images?um=1&amp;amp;hl=en&amp;amp;client=firefox-a&amp;amp;rls=org.mozilla:en-US:official&amp;amp;sa=X&amp;amp;oi=spell&amp;amp;resnum=0&amp;amp;ct=result&amp;amp;cd=1&amp;amp;q=victoria+beckham&amp;amp;spell=1&quot;&gt;Victoria Beckham&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Its like this. Overweight and underweight implicitly refer to an average weight that you are over/under in relation to. If MOST men preferred overweight woman, the average weight of woman in the population would shift towards the heavier side (over a few generations), and they would cease to be over weight. They would be the new average weight. Similarly, if most men preferred underweight woman, the average weight would shift towards the thinner side (again, over generations), and they would cease to be underweight. Obviously, this is a process that happens over generations (as I said), and it is possible that at this moment in time, we are shifting to a thinner standard. But only time will tell if that&amp;#8217;s the case, and if so, we are moving away from a historical preference that held sway as recently as 100 years ago.&lt;/p&gt;

&lt;p&gt;Here is an experiment that could be carried out. Take the weight of every woman in a region, and find the average. Take a photo of every woman in the same region, and ask the men of the region to rate the attractiveness of each. Find the average attractiveness of each woman. How do you think the average weight and the average attractiveness will be related to each other? I contend that the closer to the average weight a woman is, the higher her averaged attractiveness. Any other outcome would be surprising, and in need of an explanation. The reason they should closely correlate is that, contrary to some peoples opinion, weight is heavily influenced by genetics. As such, the most attractive weight has an evolutionary advantage in terms of reproduction, hence it should be represented in the population at a higher rate than other weights.&lt;/p&gt;

&lt;p&gt;Now, obviously this is vastly simplified, as other factors do play into the genetics. For example, having blue eyes are a recessive trait. If one parent has brown eyes, and one blue, chances are that the offspring will have brown eyes. Something similar may happen with weight, i.e. the &amp;#8220;thin&amp;#8221; gene is dominate, and the &amp;#8220;fat&amp;#8221; gene is recessive. But the point remains: The average person in a society should be averagely attractive. Hence, the average weight should be the most commonly considered to be an attractive weight.&lt;/p&gt;

&lt;p&gt;The fact is, sexual selection is a stupidly powerful force, and sometimes selects for things that most certainly DO NOT help the individual survive. Sexual selection only affects your chance to reproduce. Does anyone really think that the peacocks giant ass-feathers make it harder for its predators to find the males of the species? And there is a damn good reason the females don&amp;#8217;t have them. The males just have to live long enough to have sex. The females have to live long enough to rear young. If you think of this in relation to humans&amp;#8230; well,sexually selecting for females that are prone to die in childbirth seems like a recipe for disaster. Maybe modern medicine can make up for it. I don&amp;#8217;t know.&lt;/p&gt;

&lt;p&gt;I do know, however, that if only thin people reproduced, which would be the case if &amp;#8220;most&amp;#8221; men wanted a mate that looked like Victoria Beckham and wouldn&amp;#8217;t settle for anything less, then most woman would look like her. If most woman wanted an Adonis and wouldn&amp;#8217;t settle for anything less&amp;#8230; well, then that&amp;#8217;s what most men would look like. But that&amp;#8217;s not what we see when we look at the world, hence we can infer that the &amp;#8220;hypotheses&amp;#8221; in the above comment is wrong.&lt;/p&gt;

&lt;p&gt;None of this is to say that I think evolutionary psychology is a real scientific field. But people who argue as the commenter above did fail by their own standards. &lt;/p&gt;

&lt;p&gt;Now this post has largely talked about some sort of &amp;#8220;average&amp;#8221; attractiveness. But the fact is, this is a crock of shit, and I&amp;#8217;ve only used it to illustrate that claims like the above just don&amp;#8217;t make sense. Attractiveness is not a hierarchy, with a well ordering. It exists on a horizontal spectrum, and we clump at various places along the spectrum, just like we do with tomato sauce. If everybody was attracted to the same thing, we should expect to find porn to be pretty homogeneous. This is most certainly not the case, as can be verified if you are brave enough to google for &amp;#8220;free porn&amp;#8221; and survey the results.&lt;/p&gt;

&lt;p&gt;The laws of science are a harsh mistress, those people have been looking for the perfect Pepsi, they are wrong, and should be looking for &lt;a href=&quot;http://www.ted.com/index.php/talks/view/id/20&quot;&gt; the perfect &lt;i&gt;Pepsis&lt;/i&gt;&lt;/a&gt;.&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=44&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>My wife turned up <a href="http://shakespearessister.blogspot.com/2008/03/in-which-i-ramble-about-attraction.html">this post</a>, in which a blogger goes on a bit of a rant in regards to attractiveness and weight. I&#8217;d like to throw my two cents into the pot and comment on two specific things she touches on briefly.</p>



<p>One of the comments she reproduces in her post says:</p>

<p><code class="codespan">Society has not conditioned us, evolution has. Men are attracted to women that represent the best chance of bearing their young and caring for them. This means young and physically fit.... This is not opinion, it is fact.</code></p>

<p>The idiocy and wrongness of this comment astound me. Evolution actually selected for chunky woman. Who do you think took better care of an infant: a woman who had the fat reserves to produce a continuous supply of milk even if she wasn&#8217;t eating regularly herself, or a woman who had no fat reserves at all, and wasn&#8217;t able to produce milk on days when the hunters didn&#8217;t bring home any food? Furthermore, there is a reason woman&#8217;s hips, and hence their gait, differ from men&#8217;s. Evolution selected for wide hips that allowed for easy birth. Those women who died in childbirth, and took their babies with them, obviously didn&#8217;t get to contribute to the gene pool. In fact, its only because of modern science that this selection effect doesn&#8217;t continue. The human infants head is rather large compared to the birth canal. Until very recently, as in the last 100 years, a woman was more likely to die in child birth than any other circumstance.</p>

<p>I&#8217;m sure the person who posted this comment imagined in his head that a physically fit woman, when attacked, could grab her infant and run with it, leaving a fatter woman behind to get eaten. But its been a long time since humans have been a prey animal for any large predator, and that has been the case for thousands of years. When you exist in the context of a hunter gatherer society, being &#8220;physically fit&#8221; is no longer a pre-requisite for survival. On the other hand, easy child birth is damn useful, as is being able to survive lean times on fat reserves.</p>

<p>The other point I want to touch on is exemplified by this comment:</p>

<p><code class="codespan">Are you really that naive? seriously. You KNOW what guys want, look around! They want that hot, sexy, body, a gal to make them look good too. MOST men do not prefer an overweight woman.</code></p>

<p>Its that last clause, that &#8220;MOST men do not prefer an overweight woman.&#8221; Well, duh. Most men don&#8217;t. And most men don&#8217;t prefer an underweight woman, for example <a href="http://images.google.com/images?um=1&amp;hl=en&amp;client=firefox-a&amp;rls=org.mozilla:en-US:official&amp;sa=X&amp;oi=spell&amp;resnum=0&amp;ct=result&amp;cd=1&amp;q=victoria+beckham&amp;spell=1">Victoria Beckham</a>.</p>

<p>Its like this. Overweight and underweight implicitly refer to an average weight that you are over/under in relation to. If MOST men preferred overweight woman, the average weight of woman in the population would shift towards the heavier side (over a few generations), and they would cease to be over weight. They would be the new average weight. Similarly, if most men preferred underweight woman, the average weight would shift towards the thinner side (again, over generations), and they would cease to be underweight. Obviously, this is a process that happens over generations (as I said), and it is possible that at this moment in time, we are shifting to a thinner standard. But only time will tell if that&#8217;s the case, and if so, we are moving away from a historical preference that held sway as recently as 100 years ago.</p>

<p>Here is an experiment that could be carried out. Take the weight of every woman in a region, and find the average. Take a photo of every woman in the same region, and ask the men of the region to rate the attractiveness of each. Find the average attractiveness of each woman. How do you think the average weight and the average attractiveness will be related to each other? I contend that the closer to the average weight a woman is, the higher her averaged attractiveness. Any other outcome would be surprising, and in need of an explanation. The reason they should closely correlate is that, contrary to some peoples opinion, weight is heavily influenced by genetics. As such, the most attractive weight has an evolutionary advantage in terms of reproduction, hence it should be represented in the population at a higher rate than other weights.</p>

<p>Now, obviously this is vastly simplified, as other factors do play into the genetics. For example, having blue eyes are a recessive trait. If one parent has brown eyes, and one blue, chances are that the offspring will have brown eyes. Something similar may happen with weight, i.e. the &#8220;thin&#8221; gene is dominate, and the &#8220;fat&#8221; gene is recessive. But the point remains: The average person in a society should be averagely attractive. Hence, the average weight should be the most commonly considered to be an attractive weight.</p>

<p>The fact is, sexual selection is a stupidly powerful force, and sometimes selects for things that most certainly DO NOT help the individual survive. Sexual selection only affects your chance to reproduce. Does anyone really think that the peacocks giant ass-feathers make it harder for its predators to find the males of the species? And there is a damn good reason the females don&#8217;t have them. The males just have to live long enough to have sex. The females have to live long enough to rear young. If you think of this in relation to humans&#8230; well,sexually selecting for females that are prone to die in childbirth seems like a recipe for disaster. Maybe modern medicine can make up for it. I don&#8217;t know.</p>

<p>I do know, however, that if only thin people reproduced, which would be the case if &#8220;most&#8221; men wanted a mate that looked like Victoria Beckham and wouldn&#8217;t settle for anything less, then most woman would look like her. If most woman wanted an Adonis and wouldn&#8217;t settle for anything less&#8230; well, then that&#8217;s what most men would look like. But that&#8217;s not what we see when we look at the world, hence we can infer that the &#8220;hypotheses&#8221; in the above comment is wrong.</p>

<p>None of this is to say that I think evolutionary psychology is a real scientific field. But people who argue as the commenter above did fail by their own standards. </p>

<p>Now this post has largely talked about some sort of &#8220;average&#8221; attractiveness. But the fact is, this is a crock of shit, and I&#8217;ve only used it to illustrate that claims like the above just don&#8217;t make sense. Attractiveness is not a hierarchy, with a well ordering. It exists on a horizontal spectrum, and we clump at various places along the spectrum, just like we do with tomato sauce. If everybody was attracted to the same thing, we should expect to find porn to be pretty homogeneous. This is most certainly not the case, as can be verified if you are brave enough to google for &#8220;free porn&#8221; and survey the results.</p>

<p>The laws of science are a harsh mistress, those people have been looking for the perfect Pepsi, they are wrong, and should be looking for <a href="http://www.ted.com/index.php/talks/view/id/20"> the perfect <i>Pepsis</i></a>.</p><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=44&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=44&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>This is what happens when people have inappropriate conceptions about animal behavior</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=43&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Tue, 05 Feb 2008 15:24:50 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Musings</category>			<guid isPermaLink="false">43@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Note: I originally wrote this article almost a month ago, before the incident involving the teenagers and the tiger at the San Francisco Zoo. After that incident, I decided to hold off posting this until the matter calmed down a bit. Now that reddit isn&amp;#8217;t being spammed with constant updates on the incident, I feel its safe to throw my two cents into the conversation, though I will not address this particular incidentspecifically.&lt;/p&gt;

&lt;p&gt;As explained in &lt;a href=&quot;http://www.dailymail.co.uk/pages/live/articles/news/worldnews.html?in_article_id=503529&amp;amp;in_page_id=1811&quot;&gt;this article (Warning: graphic picture)&lt;/a&gt;, a man was mauled to death by two tigers when he climbed over a protective barrier, and stuck his arm through the bars of the cage to take a close up picture with his cell phone. To paraphrase a comment from bash.org, they should put something in the cage to deter people from getting near it. Perhaps a fierce animal that would attack anyone that got too close?&lt;/p&gt;



&lt;p&gt;A sad point to this story is that his wife and kid saw the whole thing. But one just had to wonder&amp;#8230; What the hell did he think was going to happen?!? Did he expect to just snap a few pictures while the tigers sat there? Maybe that they would do a little dance for him? I wish this were an isolated incident, but it is not.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Binky_(polar_bear)&quot;&gt;Binky the polar bear&lt;/a&gt; was kept at the Anchorage zoo in Alaska, and become famous for mauling tourists. One incident involved an Australian women climbing over two fences in order to get to the bars of the cage to take a close up shot. Binky stuck his head through the bars of the cage and grabbed her leg. More recently, different woman, different zoo, different polar bear, same result. I am unable to find a more detailed version of the news story at the moment, but if i recall correctly the women made statements like &amp;#8220;I didn&amp;#8217;t think it would move so fast,&amp;#8221; and &amp;#8220;I didn&amp;#8217;t think they would keep a dangerous animal in a zoo.&amp;#8221;&lt;/p&gt;

&lt;p&gt;Its that last statement in particular that leaves me scratching my head.&lt;/p&gt;

&lt;p&gt;Have you ever walked down the street and encountered someone with a dog who assures you that &amp;#8220;Snugly poo doesn&amp;#8217;t bite!&quot;? This is a dangerous attitude for an animal owner to have. What it seems to boil down to is that a lot of people think that there are two types of dogs: dogs that bite, and dogs that don&amp;#8217;t. You just gotta make sure that you got the non-biting kind, and everything will be good. But if he EVER bites, dump his ass as quick as you can, cause he is crazy and vicious and unpredictable.&lt;/p&gt;

&lt;p&gt;The simple fact of the matter is that EVERY dog is capable of biting, and in fact WILL bite, given the proper circumstances. Deluding yourself into thinking that your dog wouldn&amp;#8217;t bite you, no matter what you do to it, is lulling yourself into a false and dangerous sense of security.&lt;/p&gt;

&lt;p&gt;Viki Hearne, in one of her numerous books, offers the interesting anecdote that the number of accidents involving animals (domestic and other wise) went up immediately after the rise of the automobile. She speculates that, pre-automobile, horses where the primary mode of transportation, and hence were everywhere. You couldn&amp;#8217;t help but get to know how to behave around a horse, and to know that even the most mild horse will bite and kick if provoked. These days, it is entirely possible to go through life with essentially no interaction with an animal. This has left us in a position where most people in the urban areas of the west simply do not know how act around animals. For example, they do stupid things like stick there arms into animal enclosures at the zoo.&lt;/p&gt;

&lt;p&gt;But it has implications for the animals as well. A lot of people honestly seem to believe that any dog that bites must be killed, regardless of circumstances. A few years ago, I saw a news article about several teenage boys who were attacked by a dog. The full story is that the dog was in a fenced in yard. The kids started throwing rocks at it, and hit it several times. It jumped the fence and bit several of them. The dog was put down as being dangerous and vicious.&lt;/p&gt;

&lt;p&gt;I cannot conceive of what kind of twisted logic leads you to the conclusion that a dog that was provoked into attacking in self defense is vicious or dangerous. Doesn&amp;#8217;t it defeat the point of having a guard dog, if the dog is too chicken shit to defend itself? Doesn&amp;#8217;t it also defeat the point of having a guard dog if the dog isn&amp;#8217;t allowed to, you know&amp;#8230; guard?&lt;/p&gt;

&lt;p&gt;An even more bizarre example of animal ignorance occurred a little over a year ago. I cannot find a link to the article, but what happened is that a park ranger had to stop a women who was posing her 4 year old son in front of a wild grizzly bear so she could take a cute picture. The whole idea of it just leaves me speechless, so I don&amp;#8217;t even know what to say about it.&lt;/p&gt;

&lt;p&gt;Unfortunately, the victims of peoples animal ignorance aren&amp;#8217;t always themselves. &lt;a href=&quot;http://www.cbc.ca/canada/story/2003/11/03/doginquest031103.html&quot;&gt;This article&lt;/a&gt;, for example, is about a 4 year old boy who was killed by several rottweilers. The father of the boy left him alone while he and several friends went into the basement to do electrical work. There was one dog in the house with the boy, and 2 more outside. The dogs belonged to a friend staying with them. It seems the toddler went out side looking for his farther, and ended up being killed by the dogs.&lt;/p&gt;

&lt;p&gt;Several things immediately spring to mind here. First of all, who the hell leaves a 4 year old kid alone with one big dog, let alone three? For that matter, who leaves a 4 year old kid alone at all? Why were the dogs loose and unsupervised when a kid was around? The inquest the article mentions is going to &amp;#8220;make recommendations about how to prevent a similar tragedy.&amp;#8221; Here&amp;#8217;s one: realize that dogs of any size and breed are inherently dangerous animals. Don&amp;#8217;t leave them loose and unsupervised.&lt;/p&gt;

&lt;p&gt;Needless to say, the dogs were destroyed. But why? Essentially, for being dogs. Untrained, unsupervised, poorly owned dogs with bad owners, but essentially just being dogs.&lt;/p&gt;

&lt;p&gt;The bottom line to this that animals are dangerous for a very simple reason: they have brains. They can decide to do something. They can offer novel behavior in response to stimulus. The dog that you&amp;#8217;ve smacked every day for years can decide he is sick of it, and fight back.&lt;/p&gt;

&lt;p&gt;Guns are dangerous too, but in a very different way. To quote Portal, the Weighted Companion Cube will never try to harm you. Neither will your gun. But the only reason we can make these claims is because the damn things are inanimate, and hence cannot &amp;#8220;try&amp;#8221; to do anything. If you want something soft and cuddly and totally safe, get a stuffed animal and leave the real ones alone. But if you get a real animal, remember: it has teeth, claws, and a brain. If it decides it wants to hurt you, it can and will, and anyone who tells you that it would never do such a thing is either lying or profoundly ignorant.&lt;/p&gt;

&lt;p&gt;You hear about mauling in regards to dogs more often than any other animal, but that just a result of the fact that most of us have a much, much higher chance of interacting with dogs than any other animal. The maulings at the zoo show that this isn&amp;#8217;t a problem with a particular animal, or a particular species. Its a conceptual problem people have in regard to animals in general.&lt;/p&gt;

&lt;p&gt;Unfortunetly, the conceptual problems aren&amp;#8217;t limited only to underestimating the safety of some animals. Certain breeds of dogs are portrayed as extremly dangerous. But when you sit down and crunch the numbers, you find out that &lt;a href=&quot;http://www.rottweiler.net/forums/346101-post1.html&quot;&gt;dogs bite, but balloons and slippers are more dangerous.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;UPDATE&lt;/p&gt;

&lt;p&gt;Since I originally wrote this article, I saw a documentary on the Discovery Channel about Timothy Treadwell called &amp;#8220;Grizzly Man.&amp;#8221; The shear stupidity of this man astounds me, and I feel that basically anything and everything I want to convey in this article can be gleaned from watching this documentary.&lt;/p&gt;

&lt;p&gt;Timothy spent 13 seasons living among the bears in Katmai National Park in Alaska (USA). At the end of his last season, he and his girlfriend were killed and eaten by a bear. Watching the documentary, which is made up of footage he shot himself interspersed with interviews with friends and family, you see him repeatably getting dangerously close to wild bears. In addition to the close proximity, he clearly has a dangerously anthropomorphic conception of the animals behaviors.&lt;/p&gt;

&lt;p&gt;Listing here all the dangerously stupid things he did would drastically increase the size of this post, so I will leave it to interested parties to watch it. Suffice it to say that in Timothy Treadwell, we have a micosom of the fundamental misconceptions many people in our society have in regard to animals. &lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=43&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Note: I originally wrote this article almost a month ago, before the incident involving the teenagers and the tiger at the San Francisco Zoo. After that incident, I decided to hold off posting this until the matter calmed down a bit. Now that reddit isn&#8217;t being spammed with constant updates on the incident, I feel its safe to throw my two cents into the conversation, though I will not address this particular incidentspecifically.</p>

<p>As explained in <a href="http://www.dailymail.co.uk/pages/live/articles/news/worldnews.html?in_article_id=503529&amp;in_page_id=1811">this article (Warning: graphic picture)</a>, a man was mauled to death by two tigers when he climbed over a protective barrier, and stuck his arm through the bars of the cage to take a close up picture with his cell phone. To paraphrase a comment from bash.org, they should put something in the cage to deter people from getting near it. Perhaps a fierce animal that would attack anyone that got too close?</p>



<p>A sad point to this story is that his wife and kid saw the whole thing. But one just had to wonder&#8230; What the hell did he think was going to happen?!? Did he expect to just snap a few pictures while the tigers sat there? Maybe that they would do a little dance for him? I wish this were an isolated incident, but it is not.</p>

<p><a href="http://en.wikipedia.org/wiki/Binky_(polar_bear)">Binky the polar bear</a> was kept at the Anchorage zoo in Alaska, and become famous for mauling tourists. One incident involved an Australian women climbing over two fences in order to get to the bars of the cage to take a close up shot. Binky stuck his head through the bars of the cage and grabbed her leg. More recently, different woman, different zoo, different polar bear, same result. I am unable to find a more detailed version of the news story at the moment, but if i recall correctly the women made statements like &#8220;I didn&#8217;t think it would move so fast,&#8221; and &#8220;I didn&#8217;t think they would keep a dangerous animal in a zoo.&#8221;</p>

<p>Its that last statement in particular that leaves me scratching my head.</p>

<p>Have you ever walked down the street and encountered someone with a dog who assures you that &#8220;Snugly poo doesn&#8217;t bite!"? This is a dangerous attitude for an animal owner to have. What it seems to boil down to is that a lot of people think that there are two types of dogs: dogs that bite, and dogs that don&#8217;t. You just gotta make sure that you got the non-biting kind, and everything will be good. But if he EVER bites, dump his ass as quick as you can, cause he is crazy and vicious and unpredictable.</p>

<p>The simple fact of the matter is that EVERY dog is capable of biting, and in fact WILL bite, given the proper circumstances. Deluding yourself into thinking that your dog wouldn&#8217;t bite you, no matter what you do to it, is lulling yourself into a false and dangerous sense of security.</p>

<p>Viki Hearne, in one of her numerous books, offers the interesting anecdote that the number of accidents involving animals (domestic and other wise) went up immediately after the rise of the automobile. She speculates that, pre-automobile, horses where the primary mode of transportation, and hence were everywhere. You couldn&#8217;t help but get to know how to behave around a horse, and to know that even the most mild horse will bite and kick if provoked. These days, it is entirely possible to go through life with essentially no interaction with an animal. This has left us in a position where most people in the urban areas of the west simply do not know how act around animals. For example, they do stupid things like stick there arms into animal enclosures at the zoo.</p>

<p>But it has implications for the animals as well. A lot of people honestly seem to believe that any dog that bites must be killed, regardless of circumstances. A few years ago, I saw a news article about several teenage boys who were attacked by a dog. The full story is that the dog was in a fenced in yard. The kids started throwing rocks at it, and hit it several times. It jumped the fence and bit several of them. The dog was put down as being dangerous and vicious.</p>

<p>I cannot conceive of what kind of twisted logic leads you to the conclusion that a dog that was provoked into attacking in self defense is vicious or dangerous. Doesn&#8217;t it defeat the point of having a guard dog, if the dog is too chicken shit to defend itself? Doesn&#8217;t it also defeat the point of having a guard dog if the dog isn&#8217;t allowed to, you know&#8230; guard?</p>

<p>An even more bizarre example of animal ignorance occurred a little over a year ago. I cannot find a link to the article, but what happened is that a park ranger had to stop a women who was posing her 4 year old son in front of a wild grizzly bear so she could take a cute picture. The whole idea of it just leaves me speechless, so I don&#8217;t even know what to say about it.</p>

<p>Unfortunately, the victims of peoples animal ignorance aren&#8217;t always themselves. <a href="http://www.cbc.ca/canada/story/2003/11/03/doginquest031103.html">This article</a>, for example, is about a 4 year old boy who was killed by several rottweilers. The father of the boy left him alone while he and several friends went into the basement to do electrical work. There was one dog in the house with the boy, and 2 more outside. The dogs belonged to a friend staying with them. It seems the toddler went out side looking for his farther, and ended up being killed by the dogs.</p>

<p>Several things immediately spring to mind here. First of all, who the hell leaves a 4 year old kid alone with one big dog, let alone three? For that matter, who leaves a 4 year old kid alone at all? Why were the dogs loose and unsupervised when a kid was around? The inquest the article mentions is going to &#8220;make recommendations about how to prevent a similar tragedy.&#8221; Here&#8217;s one: realize that dogs of any size and breed are inherently dangerous animals. Don&#8217;t leave them loose and unsupervised.</p>

<p>Needless to say, the dogs were destroyed. But why? Essentially, for being dogs. Untrained, unsupervised, poorly owned dogs with bad owners, but essentially just being dogs.</p>

<p>The bottom line to this that animals are dangerous for a very simple reason: they have brains. They can decide to do something. They can offer novel behavior in response to stimulus. The dog that you&#8217;ve smacked every day for years can decide he is sick of it, and fight back.</p>

<p>Guns are dangerous too, but in a very different way. To quote Portal, the Weighted Companion Cube will never try to harm you. Neither will your gun. But the only reason we can make these claims is because the damn things are inanimate, and hence cannot &#8220;try&#8221; to do anything. If you want something soft and cuddly and totally safe, get a stuffed animal and leave the real ones alone. But if you get a real animal, remember: it has teeth, claws, and a brain. If it decides it wants to hurt you, it can and will, and anyone who tells you that it would never do such a thing is either lying or profoundly ignorant.</p>

<p>You hear about mauling in regards to dogs more often than any other animal, but that just a result of the fact that most of us have a much, much higher chance of interacting with dogs than any other animal. The maulings at the zoo show that this isn&#8217;t a problem with a particular animal, or a particular species. Its a conceptual problem people have in regard to animals in general.</p>

<p>Unfortunetly, the conceptual problems aren&#8217;t limited only to underestimating the safety of some animals. Certain breeds of dogs are portrayed as extremly dangerous. But when you sit down and crunch the numbers, you find out that <a href="http://www.rottweiler.net/forums/346101-post1.html">dogs bite, but balloons and slippers are more dangerous.</a></p>

<p>UPDATE</p>

<p>Since I originally wrote this article, I saw a documentary on the Discovery Channel about Timothy Treadwell called &#8220;Grizzly Man.&#8221; The shear stupidity of this man astounds me, and I feel that basically anything and everything I want to convey in this article can be gleaned from watching this documentary.</p>

<p>Timothy spent 13 seasons living among the bears in Katmai National Park in Alaska (USA). At the end of his last season, he and his girlfriend were killed and eaten by a bear. Watching the documentary, which is made up of footage he shot himself interspersed with interviews with friends and family, you see him repeatably getting dangerously close to wild bears. In addition to the close proximity, he clearly has a dangerously anthropomorphic conception of the animals behaviors.</p>

<p>Listing here all the dangerously stupid things he did would drastically increase the size of this post, so I will leave it to interested parties to watch it. Suffice it to say that in Timothy Treadwell, we have a micosom of the fundamental misconceptions many people in our society have in regard to animals. </p><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=43&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=43&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>The Problem With Reddit/Digg/Social News Sites</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=42&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Tue, 18 Dec 2007 17:34:10 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Musings</category>			<guid isPermaLink="false">42@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;I&amp;#8217;ve been thinking about a post like this for a while, but what finally pushed me over the edge is this: &lt;a href=&quot;http://politics.reddit.com/info/63bs1/comments&quot;&gt;There Is A Reddit Bot War Going On Right Now. Here&amp;#8217;s Proof.&lt;/a&gt; The link goes to a reddit comment about a bot war over Ron Paul happening on reddit. Apparently, some people have set up bots to up-vote anything with Ron Paul in the title. Others have retaliated by setting up bots that down vote on the same criteria. I&amp;#8217;m sorry, but what the fuck?!?&lt;/p&gt;



&lt;p&gt;Over the last few weeks, a lot of articles have been submitted to reddit with titles like &amp;#8220;Stop posting Ron Paul stories! We don&amp;#8217;t care!&amp;#8221; or &amp;#8220;The top 10 articles are on Ron Paul! Lay off it!&quot;. Aside from the obvious stupidity of posting something that says you-all (damn the English lack of a 2nd person plural!) don&amp;#8217;t care about topic X when topic X is consistently at the top of the hot page, it seems to me that anyone who would post such an article has fundamentally misunderstood what the hell is going on with Reddit, Digg and all the other social news sites.&lt;/p&gt;

&lt;p&gt;The sites are not there to provide you with all and only stories you will find interesting. By their very definitions, the &amp;#8220;hot&amp;#8221; page and the &amp;#8220;top stories&amp;#8221; page are going to be filled with the trash that appeals to greatest number of people using the site. In other words, it will be full of what ever appeals to the least common denominator. The more you dislike the contents of the front page, the farther from the &amp;#8220;average&amp;#8221; user you are. As an example, I&amp;#8217;ve posted several of my posts to this blog on reddit. Here are some of the stats:&lt;/p&gt;

&lt;p&gt;Up    Down        Title&lt;br /&gt;
1        0        The Game Of Go&lt;br /&gt;
3        1        The Turing Test and Philosophical Zombies&lt;br /&gt;
6        1        Micro/Macro Evolution and the Paradox of the Heap&lt;/p&gt;

&lt;p&gt;Obviously, it would&amp;#8217;ve been great for them to reach the hot page so I could bask in the glory. But these results are pretty much exactly what I expected. I understand that the subject matter of this blog, and by extension my interests, are not all that universally appealing. If one of these posts was an &amp;#8220;I can has cheezburger&amp;#8221; picture, I&amp;#8217;m sure it would&amp;#8217;ve done a whole hell of a lot better than any dry exposition of an obscure philosophical position. That&amp;#8217;s just how this works. No one feels strongly about these subjects either way, so they went nowhere.&lt;/p&gt;

&lt;p&gt;In the early prehistory of reddit, I loved it. It was populated by tech minded people and had many interesting articles on programming and science. But as it became more popular, the composition of the audience changed, and the content of the articles submitted and up-voted changed with it. Several months ago, the top stories page were clogged with links to stupid pictures and funny news stories. Now they are clogged with articles dueling about how great/horrid Ron Paul is. Frankly, I think this sucks. But I&amp;#8217;m not in the least surprised and have no intention of posting a story to reddit to bemoan this fact, or turn this post into bitching about it.&lt;/p&gt;

&lt;p&gt;Here&amp;#8217;s a tip for you: If you want a list of only articles you will find amusing and interesting, go to reader.google.com and sign up for a bunch of RSS feeds from blogs you like. It&amp;#8217;s that simple. The social news sites will never be anything other than collections of stupid crap that appeals to the most people, and expecting it to be otherwise is fundamentally naive. For them to be anything but that would require&lt;br /&gt;
   &lt;br /&gt;
    1. A stipulation that this site is only for articles about X&lt;br /&gt;
    2. A dedicated user base that will down vote into oblivion anything that ISN&amp;#8217;T about X&lt;br /&gt;
    3. Editors that deliberately delete articles not about X&lt;/p&gt;

&lt;p&gt;But notice, now, that to do this we must abandon several of the features that make reddit and digg popular. By limiting yourself to a particular subject, your user base will be limited, and hence the number of sources for potential articles will be smaller. By depending on users to downvote out stories that don&amp;#8217;t meet the criteria, you are expecting the users to AGREE on how to apply the criteria. By having editors sort through the submissions, you introduce a delay before articles are visible (unless you wish to do ex-post-facto deletions), and also depend on your editors to apply the criteria correctly. Looming in the background in this scenario, if you choose to fore-go editors, is the potential for a cadre of rogue users to start submitting and up-voting off-topic stories that essentially turn the site into reddit/digg.&lt;/p&gt;

&lt;p&gt;Now, I can understand the up-vote brigade. If you feel passionately about something, you want to spread the word (this is the biggest problem I have with evangelical religions). But what the hell are the down-vote brigades doing? The only possible explanation that I can come up with is that they are essentially trying to exert tyrannical control over the hot page of reddit. I understand being sick of seeing things with X in the title, but when you start deliberately burying anything on the subject, you start skirting dangerously close to appointing yourself to the position of public censor.&lt;/p&gt;

&lt;p&gt;Yes, I am arguing that the the up-vote brigade and the down-vote brigade are not symmetrical positions and that one is definitely more morally questionable than the other. In fact, this very position is embedded in the notion of free speech. You are free to NOT click on the links with Ron Paul in the title. But to deny those people who do want to see those stories the opportunity to do so&amp;#8230; Well. Lets just say its a bad idea in real life, and I fail to see why it&amp;#8217;s not a bad idea online.&lt;/p&gt;

&lt;p&gt;So, to sum up:&lt;/p&gt;

&lt;p&gt;1. On any social new site, the most popular stories will be the ones that appeal to the most people&lt;br /&gt;
2. It&amp;#8217;s stupid to complain that there are too many popular stories about X&lt;br /&gt;
3. Arbitrarily down-voting anything with X in the title skirts close to a morally repugnant position&lt;br /&gt;
4. If you want custom-tailored content, roll your own with RSS&lt;/p&gt;
&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=42&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>I&#8217;ve been thinking about a post like this for a while, but what finally pushed me over the edge is this: <a href="http://politics.reddit.com/info/63bs1/comments">There Is A Reddit Bot War Going On Right Now. Here&#8217;s Proof.</a> The link goes to a reddit comment about a bot war over Ron Paul happening on reddit. Apparently, some people have set up bots to up-vote anything with Ron Paul in the title. Others have retaliated by setting up bots that down vote on the same criteria. I&#8217;m sorry, but what the fuck?!?</p>



<p>Over the last few weeks, a lot of articles have been submitted to reddit with titles like &#8220;Stop posting Ron Paul stories! We don&#8217;t care!&#8221; or &#8220;The top 10 articles are on Ron Paul! Lay off it!". Aside from the obvious stupidity of posting something that says you-all (damn the English lack of a 2nd person plural!) don&#8217;t care about topic X when topic X is consistently at the top of the hot page, it seems to me that anyone who would post such an article has fundamentally misunderstood what the hell is going on with Reddit, Digg and all the other social news sites.</p>

<p>The sites are not there to provide you with all and only stories you will find interesting. By their very definitions, the &#8220;hot&#8221; page and the &#8220;top stories&#8221; page are going to be filled with the trash that appeals to greatest number of people using the site. In other words, it will be full of what ever appeals to the least common denominator. The more you dislike the contents of the front page, the farther from the &#8220;average&#8221; user you are. As an example, I&#8217;ve posted several of my posts to this blog on reddit. Here are some of the stats:</p>

<p>Up    Down        Title<br />
1        0        The Game Of Go<br />
3        1        The Turing Test and Philosophical Zombies<br />
6        1        Micro/Macro Evolution and the Paradox of the Heap</p>

<p>Obviously, it would&#8217;ve been great for them to reach the hot page so I could bask in the glory. But these results are pretty much exactly what I expected. I understand that the subject matter of this blog, and by extension my interests, are not all that universally appealing. If one of these posts was an &#8220;I can has cheezburger&#8221; picture, I&#8217;m sure it would&#8217;ve done a whole hell of a lot better than any dry exposition of an obscure philosophical position. That&#8217;s just how this works. No one feels strongly about these subjects either way, so they went nowhere.</p>

<p>In the early prehistory of reddit, I loved it. It was populated by tech minded people and had many interesting articles on programming and science. But as it became more popular, the composition of the audience changed, and the content of the articles submitted and up-voted changed with it. Several months ago, the top stories page were clogged with links to stupid pictures and funny news stories. Now they are clogged with articles dueling about how great/horrid Ron Paul is. Frankly, I think this sucks. But I&#8217;m not in the least surprised and have no intention of posting a story to reddit to bemoan this fact, or turn this post into bitching about it.</p>

<p>Here&#8217;s a tip for you: If you want a list of only articles you will find amusing and interesting, go to reader.google.com and sign up for a bunch of RSS feeds from blogs you like. It&#8217;s that simple. The social news sites will never be anything other than collections of stupid crap that appeals to the most people, and expecting it to be otherwise is fundamentally naive. For them to be anything but that would require<br />
   <br />
    1. A stipulation that this site is only for articles about X<br />
    2. A dedicated user base that will down vote into oblivion anything that ISN&#8217;T about X<br />
    3. Editors that deliberately delete articles not about X</p>

<p>But notice, now, that to do this we must abandon several of the features that make reddit and digg popular. By limiting yourself to a particular subject, your user base will be limited, and hence the number of sources for potential articles will be smaller. By depending on users to downvote out stories that don&#8217;t meet the criteria, you are expecting the users to AGREE on how to apply the criteria. By having editors sort through the submissions, you introduce a delay before articles are visible (unless you wish to do ex-post-facto deletions), and also depend on your editors to apply the criteria correctly. Looming in the background in this scenario, if you choose to fore-go editors, is the potential for a cadre of rogue users to start submitting and up-voting off-topic stories that essentially turn the site into reddit/digg.</p>

<p>Now, I can understand the up-vote brigade. If you feel passionately about something, you want to spread the word (this is the biggest problem I have with evangelical religions). But what the hell are the down-vote brigades doing? The only possible explanation that I can come up with is that they are essentially trying to exert tyrannical control over the hot page of reddit. I understand being sick of seeing things with X in the title, but when you start deliberately burying anything on the subject, you start skirting dangerously close to appointing yourself to the position of public censor.</p>

<p>Yes, I am arguing that the the up-vote brigade and the down-vote brigade are not symmetrical positions and that one is definitely more morally questionable than the other. In fact, this very position is embedded in the notion of free speech. You are free to NOT click on the links with Ron Paul in the title. But to deny those people who do want to see those stories the opportunity to do so&#8230; Well. Lets just say its a bad idea in real life, and I fail to see why it&#8217;s not a bad idea online.</p>

<p>So, to sum up:</p>

<p>1. On any social new site, the most popular stories will be the ones that appeal to the most people<br />
2. It&#8217;s stupid to complain that there are too many popular stories about X<br />
3. Arbitrarily down-voting anything with X in the title skirts close to a morally repugnant position<br />
4. If you want custom-tailored content, roll your own with RSS</p>
<div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=42&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=42&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Time Travel, Paradoxes and Computation</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=41&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Mon, 19 Nov 2007 16:15:59 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Metaphysics</category>
<category domain="alt">Musings</category>
<category domain="alt">Computer Science</category>
<category domain="alt">Philosophy</category>			<guid isPermaLink="false">41@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Time travel has been a trope of Science Fiction since its inception as a genre. Perhaps the most famous is H. G. Wells &amp;#8220;The Time Machine,&amp;#8221; which gives us brief glimpses of the future at several points. The idea is certainly seductive. Who wouldn&amp;#8217;t want to be able to whiz off to the future to view the progress humanity has made, or travel to the past and witness historic events?&lt;/p&gt;

&lt;p&gt;But whether or not time travel is possible is still an open debate among physicists. In this post I want to discuss some of the paradoxes that would seem to result if time travel is possible, as well as an interesting algorithm for solving NP problems using a time machine.&lt;/p&gt;



&lt;p&gt;Some reject the possibility of time travel out of hand. Their arguments rest on the fact that time travel seems to engender several paradoxes.&lt;/p&gt;

&lt;p&gt;The most well known paradox is referred to as the &amp;#8220;Grandfather Paradox,&amp;#8221; which involves an individual who travels back in time and changes history in such a way that negates his own existence, from which it follows that he could never have existed to change history in the first place. It is called the grandfather paradox because it usualy involves our intrepid traveler (whom we shall from here on call Fred) killing his own grandfather before his father is born, thus breaking the sequence of events that lead to Fred&amp;#8217;s birth, which is necessary for him to go back in time to kill his ancestor.&lt;/p&gt;

&lt;p&gt;While on the face of it, this paradox might seem to indicate that time travel is impossible, it only does so if one is willing to postulate that the time traveller has a sort of radical free will whilst in the &amp;#8220;past&quot;, i.e. that nothing conspires to prevent Fred from doing his deed. Of course, the only way to leverage this claim is to suppose that for some reason Fred, while having every intention and means to kill his grandfather, fails to do so. Perhaps he is run over by a car before he can do so. Or perhaps the rifle he is using jams when the trigger is pulled. The obvious problem with this line of reasoning is that we seem to be postulating a number of metaphysical assumptions that seem dubious at best.&lt;/p&gt;

&lt;p&gt;Interestingly enough, a scientist calculated the probability that a mass sent back in time could engender a paradoxical situation. He found that though there are many trajectories a mass could take, the probability that the mass would take a trajectory that resulted in a paradox was zero. This led him to postulate what is now known as the &lt;a href=&quot;http://en.wikipedia.org/wiki/Novikov_self-consistency_principle&quot;&gt;Novikov Self-consistency Principle&lt;/a&gt;. If correct, this would put the grandfather paradox argument to rest for good, but leave us with the even thornier problem of a reality that seems to &amp;#8220;know&amp;#8221; that certain events must not be allowed to happen.&lt;/p&gt;

&lt;p&gt;Another paradox is called the &lt;a href=&quot;http://en.wikipedia.org/wiki/Ontological_paradox&quot;&gt;Ontological Paradox&lt;/a&gt;. This paradox revolves around the creation of objects and information. Consider this example: I go to the book store and buy the complete works of Shakespeare. I travel back in time to find a young Shakespeare who has  not yet written any plays. I give him the complete works, along with a detailed chronology telling him when to &amp;#8220;produce&amp;#8221; each work. The question then becomes, who wrote Shakespeare&amp;#8217;s plays?&lt;/p&gt;

&lt;p&gt;The information in the plays has become a closed causal loop. They had to have been preformed in the past to be written down and known in the future. But they had to be written down in the future in order to be transmitted to the past. The information contained in the plays causes itself to exist, without having been created.&lt;/p&gt;

&lt;p&gt;An even stranger version of this paradox involves the time machine itself. Let us say I resolve to create a time machine. I spend months working on it but find some problems insurmountable. One day, an older gentleman appears on my door. He gives me detail schematics for a time machine, as well as a large sum of money to finance its development. I build the machine according to his plans, and using it I get rich playing the stock market. Many years in the future, I travel back in time to visit my younger self, to whom I give the plans for the time machine, as well as the money to build it.&lt;/p&gt;

&lt;p&gt;Once again, in this story we have information that has a confused causal history, which makes a loop in time with no discernible start point.&lt;/p&gt;

&lt;p&gt;The ability to transmit information into the past would have serious ramifications for computer science and mathematics. With this ability, it is trivial to develop an algorithm that instantly provides the answer to any NP question. Here is how the algorithm works.&lt;/p&gt;

&lt;p&gt;For 1 minute, listen for an answer transmitted from the future.&lt;br /&gt;
If an answer is received, check to see if it is correct.&lt;br /&gt;
If the answer is correct, transmit it to the past, output the answer and halt.&lt;br /&gt;
If the answer is incorrect, choose a random answer, and transmit it back in time.&lt;/p&gt;

&lt;p&gt;The way this algorithm is structured, the computer (from our point of view) must immediately produce a correct answer, with essentially no computational effort.&lt;/p&gt;

&lt;p&gt;It would also be possible to prove that any given proposition has or lacks a finite length proof.  Let us suppose we wish to test if some proposition has a non-infinite proof. Proof checking algorithms exist, and are reasonably efficient. So imagine this algorithm:&lt;/p&gt;

&lt;p&gt;Wait for a proof from the future.&lt;br /&gt;
If no proof is received, generate a random proof and transmit it to the past.&lt;br /&gt;
If a proof is received, check to see if the proof has already been verified.&lt;br /&gt;
If the proof was verified, transmit it the past, output it and halt.&lt;br /&gt;
If the proof was not verified, check the proof for validity.&lt;br /&gt;
If the proof is a valid proof of the proposition, transmit the proof to the past with the validity bit set.&lt;br /&gt;
If the proof is not a valid proof of the proposition, generate a new random proof and transmit to the past.&lt;/p&gt;

&lt;p&gt;There are practical limits to the length of a proof. These limits are fixed by the amount of time it takes to verify the proof, and how large a proof a human can hold in his head. Surely there are proofs out that that are so long as to be basically incomprehensible. We have proof checking algorithms, but if it takes them 1 trillion years to verify a proof, they are not much use to us. A time machine would throw these limits out the window, by making time a reusable commodity. The machine would take 1 trillion years to verify the proof, but we wouldn&amp;#8217;t have to wait those years. From our point of view, the correct answer pops out of the machine as soon as we turn it on.&lt;/p&gt;

&lt;p&gt;These two algorithms are examples of &lt;a href=&quot;http://www.frc.ri.cmu.edu/users/hpm/project.archive/general.articles/1991/TempComp.html&quot;&gt;Time Loop Logic, or Temporal Computing&lt;/a&gt;. Note that in both these algorithms, the potential for a paradox exists. If the answer we receive from the future is not the correct one, we transmit a different answer to the past. This is a paradox. But if the self consistency principal is correct, paradoxes cannot happen. So the initial answer we receive from the future must be the correct one.&lt;/p&gt;

&lt;p&gt;Perhaps the thorniest problem with those who believe in the possibility of time travel is an analogue of Fermis&amp;#8217; paradox: If there are time travelers, where are they?&lt;/p&gt;

&lt;p&gt;Surely in the course of history there must be events that many people would desire to see. The birth of Jesus (or any other major religious figure) for example. And yet we do not have accounts of millions of strangers flooding Bethlehem. This fact would seem to indicate that time travel is never discovered. Or, at least, if it is discovered, it is so far in the future that people no longer care about this time period.&lt;/p&gt;

&lt;p&gt;To seek proof of the existence of time travelers, in May of 2005, a student organization at MIT hosted a &lt;a href=&quot;http://en.wikipedia.org/wiki/Traditions_and_student_activities_at_MIT#Time_Traveler_Convention&quot;&gt;time travelers convention&lt;/a&gt;. Their intention was to broadcast a particular space time location at which time travelers can show up and make themselves known. As mentioned in the article, &amp;#8220;The space-time coordinates continue to be publicized prominently and indefinitely, so that future time travelers will be aware and have the opportunity to have attended.&amp;#8221; Setting aside the amusement factor of the confusing tense of that sentence, the idea itself seems sound.&lt;/p&gt;

&lt;p&gt;Of course, there are people who claim to be time travelers, such as &lt;a href=&quot;http://en.wikipedia.org/wiki/John_Titor&quot;&gt;John Titor&lt;/a&gt;. Unfortunately, their claims have never stood up to verification. Perhaps if time travelers do exist, they follow a temporal analogue of the environmentalists &amp;#8220;Take only pictures, leave only footprints.&amp;#8221; After all, it would not be any fun if your vacation to the distant past altered the future you came from from an idyllic paradise to a hell on earth, would it?&lt;/p&gt;

&lt;p&gt;In closing, I would like to point out that an anthropic explanation of why time travel is impossible also exists. This line of reasoning states that any universe in which history is mutable is inherently unstable. If we could go back and tinker with the past, eventually one of two situations would occur: Either a history would result in which humans never developed, or a history results where humans do develop but never discover time travel. The first situation is stable because, obviously, we wouldn&amp;#8217;t exist to do the tinkering. The second is stable because we would lack the means to tinker.&lt;/p&gt;

&lt;p&gt;The second situation has troubling metaphysical implications, however. It postulates that by a simple historical accident, we never discover a technology that we could in fact discover.&lt;/p&gt;

&lt;p&gt;If you are interested in pursuing these further, I would suggest obtaining a copy of &lt;a href=&quot;http://www.amazon.com/Philosophy-Time-Oxford-Readings/dp/0198239998/ref=si3_rdr_bb_product&quot;&gt;The Philosophy Of Time&lt;/a&gt;, and in particular the chapter titled &amp;#8220;The Paradoxes of Time Travel&amp;#8221; by David Lewis.&lt;/p&gt;

&lt;p&gt;If anyone from the future is reading this, feel free to contact me with verifiable information to back up your claim of being from the future. I do not require much. The winning lottery numbers for the next several years would do nicely. Or perhaps sport scores, or horse race results&amp;#8230;.&lt;/p&gt;
&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=41&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Time travel has been a trope of Science Fiction since its inception as a genre. Perhaps the most famous is H. G. Wells &#8220;The Time Machine,&#8221; which gives us brief glimpses of the future at several points. The idea is certainly seductive. Who wouldn&#8217;t want to be able to whiz off to the future to view the progress humanity has made, or travel to the past and witness historic events?</p>

<p>But whether or not time travel is possible is still an open debate among physicists. In this post I want to discuss some of the paradoxes that would seem to result if time travel is possible, as well as an interesting algorithm for solving NP problems using a time machine.</p>



<p>Some reject the possibility of time travel out of hand. Their arguments rest on the fact that time travel seems to engender several paradoxes.</p>

<p>The most well known paradox is referred to as the &#8220;Grandfather Paradox,&#8221; which involves an individual who travels back in time and changes history in such a way that negates his own existence, from which it follows that he could never have existed to change history in the first place. It is called the grandfather paradox because it usualy involves our intrepid traveler (whom we shall from here on call Fred) killing his own grandfather before his father is born, thus breaking the sequence of events that lead to Fred&#8217;s birth, which is necessary for him to go back in time to kill his ancestor.</p>

<p>While on the face of it, this paradox might seem to indicate that time travel is impossible, it only does so if one is willing to postulate that the time traveller has a sort of radical free will whilst in the &#8220;past", i.e. that nothing conspires to prevent Fred from doing his deed. Of course, the only way to leverage this claim is to suppose that for some reason Fred, while having every intention and means to kill his grandfather, fails to do so. Perhaps he is run over by a car before he can do so. Or perhaps the rifle he is using jams when the trigger is pulled. The obvious problem with this line of reasoning is that we seem to be postulating a number of metaphysical assumptions that seem dubious at best.</p>

<p>Interestingly enough, a scientist calculated the probability that a mass sent back in time could engender a paradoxical situation. He found that though there are many trajectories a mass could take, the probability that the mass would take a trajectory that resulted in a paradox was zero. This led him to postulate what is now known as the <a href="http://en.wikipedia.org/wiki/Novikov_self-consistency_principle">Novikov Self-consistency Principle</a>. If correct, this would put the grandfather paradox argument to rest for good, but leave us with the even thornier problem of a reality that seems to &#8220;know&#8221; that certain events must not be allowed to happen.</p>

<p>Another paradox is called the <a href="http://en.wikipedia.org/wiki/Ontological_paradox">Ontological Paradox</a>. This paradox revolves around the creation of objects and information. Consider this example: I go to the book store and buy the complete works of Shakespeare. I travel back in time to find a young Shakespeare who has  not yet written any plays. I give him the complete works, along with a detailed chronology telling him when to &#8220;produce&#8221; each work. The question then becomes, who wrote Shakespeare&#8217;s plays?</p>

<p>The information in the plays has become a closed causal loop. They had to have been preformed in the past to be written down and known in the future. But they had to be written down in the future in order to be transmitted to the past. The information contained in the plays causes itself to exist, without having been created.</p>

<p>An even stranger version of this paradox involves the time machine itself. Let us say I resolve to create a time machine. I spend months working on it but find some problems insurmountable. One day, an older gentleman appears on my door. He gives me detail schematics for a time machine, as well as a large sum of money to finance its development. I build the machine according to his plans, and using it I get rich playing the stock market. Many years in the future, I travel back in time to visit my younger self, to whom I give the plans for the time machine, as well as the money to build it.</p>

<p>Once again, in this story we have information that has a confused causal history, which makes a loop in time with no discernible start point.</p>

<p>The ability to transmit information into the past would have serious ramifications for computer science and mathematics. With this ability, it is trivial to develop an algorithm that instantly provides the answer to any NP question. Here is how the algorithm works.</p>

<p>For 1 minute, listen for an answer transmitted from the future.<br />
If an answer is received, check to see if it is correct.<br />
If the answer is correct, transmit it to the past, output the answer and halt.<br />
If the answer is incorrect, choose a random answer, and transmit it back in time.</p>

<p>The way this algorithm is structured, the computer (from our point of view) must immediately produce a correct answer, with essentially no computational effort.</p>

<p>It would also be possible to prove that any given proposition has or lacks a finite length proof.  Let us suppose we wish to test if some proposition has a non-infinite proof. Proof checking algorithms exist, and are reasonably efficient. So imagine this algorithm:</p>

<p>Wait for a proof from the future.<br />
If no proof is received, generate a random proof and transmit it to the past.<br />
If a proof is received, check to see if the proof has already been verified.<br />
If the proof was verified, transmit it the past, output it and halt.<br />
If the proof was not verified, check the proof for validity.<br />
If the proof is a valid proof of the proposition, transmit the proof to the past with the validity bit set.<br />
If the proof is not a valid proof of the proposition, generate a new random proof and transmit to the past.</p>

<p>There are practical limits to the length of a proof. These limits are fixed by the amount of time it takes to verify the proof, and how large a proof a human can hold in his head. Surely there are proofs out that that are so long as to be basically incomprehensible. We have proof checking algorithms, but if it takes them 1 trillion years to verify a proof, they are not much use to us. A time machine would throw these limits out the window, by making time a reusable commodity. The machine would take 1 trillion years to verify the proof, but we wouldn&#8217;t have to wait those years. From our point of view, the correct answer pops out of the machine as soon as we turn it on.</p>

<p>These two algorithms are examples of <a href="http://www.frc.ri.cmu.edu/users/hpm/project.archive/general.articles/1991/TempComp.html">Time Loop Logic, or Temporal Computing</a>. Note that in both these algorithms, the potential for a paradox exists. If the answer we receive from the future is not the correct one, we transmit a different answer to the past. This is a paradox. But if the self consistency principal is correct, paradoxes cannot happen. So the initial answer we receive from the future must be the correct one.</p>

<p>Perhaps the thorniest problem with those who believe in the possibility of time travel is an analogue of Fermis&#8217; paradox: If there are time travelers, where are they?</p>

<p>Surely in the course of history there must be events that many people would desire to see. The birth of Jesus (or any other major religious figure) for example. And yet we do not have accounts of millions of strangers flooding Bethlehem. This fact would seem to indicate that time travel is never discovered. Or, at least, if it is discovered, it is so far in the future that people no longer care about this time period.</p>

<p>To seek proof of the existence of time travelers, in May of 2005, a student organization at MIT hosted a <a href="http://en.wikipedia.org/wiki/Traditions_and_student_activities_at_MIT#Time_Traveler_Convention">time travelers convention</a>. Their intention was to broadcast a particular space time location at which time travelers can show up and make themselves known. As mentioned in the article, &#8220;The space-time coordinates continue to be publicized prominently and indefinitely, so that future time travelers will be aware and have the opportunity to have attended.&#8221; Setting aside the amusement factor of the confusing tense of that sentence, the idea itself seems sound.</p>

<p>Of course, there are people who claim to be time travelers, such as <a href="http://en.wikipedia.org/wiki/John_Titor">John Titor</a>. Unfortunately, their claims have never stood up to verification. Perhaps if time travelers do exist, they follow a temporal analogue of the environmentalists &#8220;Take only pictures, leave only footprints.&#8221; After all, it would not be any fun if your vacation to the distant past altered the future you came from from an idyllic paradise to a hell on earth, would it?</p>

<p>In closing, I would like to point out that an anthropic explanation of why time travel is impossible also exists. This line of reasoning states that any universe in which history is mutable is inherently unstable. If we could go back and tinker with the past, eventually one of two situations would occur: Either a history would result in which humans never developed, or a history results where humans do develop but never discover time travel. The first situation is stable because, obviously, we wouldn&#8217;t exist to do the tinkering. The second is stable because we would lack the means to tinker.</p>

<p>The second situation has troubling metaphysical implications, however. It postulates that by a simple historical accident, we never discover a technology that we could in fact discover.</p>

<p>If you are interested in pursuing these further, I would suggest obtaining a copy of <a href="http://www.amazon.com/Philosophy-Time-Oxford-Readings/dp/0198239998/ref=si3_rdr_bb_product">The Philosophy Of Time</a>, and in particular the chapter titled &#8220;The Paradoxes of Time Travel&#8221; by David Lewis.</p>

<p>If anyone from the future is reading this, feel free to contact me with verifiable information to back up your claim of being from the future. I do not require much. The winning lottery numbers for the next several years would do nicely. Or perhaps sport scores, or horse race results&#8230;.</p>
<div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=41&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=41&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>I'm not dead!</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=38&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Wed, 14 Nov 2007 18:12:44 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Musings</category>			<guid isPermaLink="false">38@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Sorry for the lack of activity. I got married one moth ago as of yesterday. Things have finally settled back down, and I am working on several posts. The first should be ready in a day or two.&lt;/p&gt;
&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=38&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Sorry for the lack of activity. I got married one moth ago as of yesterday. Things have finally settled back down, and I am working on several posts. The first should be ready in a day or two.</p>
<div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=38&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=38&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>The Game of Go</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=37&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Thu, 11 Oct 2007 19:20:01 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Musings</category>
<category domain="main">Go</category>			<guid isPermaLink="false">37@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Go and Chess are generally considered to be the paradigm of strategy games and pure intellectual pursuit. But not many people have heard of Go in the western world, at least not compared to Chess. Anyone that likes chess is doing themselves a grave disservice by not at least trying out Go. I learned how to play Go approximately 6 years ago, but only played sporadically until approximately 2 years ago, when i started to play any chance i could. These days, i try to play at least 4 or 5 games a week, and have seen my strength rise dramatically as a result. Frustrated by a lack of people to play against, this is a small attempt of mine to introduce the game to people, in the hopes of increasing its popularity.&lt;/p&gt;



&lt;p&gt;Go is a strategy game from Asia. It is played on a 19 x 19 grid. Two players, one playing black the other white, take turns placing stones on one of the initially empty 361 intersections of the grid. The object of the game is to surround more territory then your opponent. Territory is considered surrounded by a player if there is no sequence of adjacent points in a region which connects to an opponent&amp;#8217;s stones. Once placed on the board, stones do not move, and are only removed if all 4 adjacent intersections are occupied by enemy stones. Empty points around a stone are called its liberties, and two adjacent stones of the same color share their liberties. With the addition of a rule, called the Ko rule, which forbids the repetition of a previous board state, these are the only rules to the game.&lt;/p&gt;

&lt;p&gt;Playing Go has a quite different feel to it than playing chess. Rather than starting with all pieces at set positions on the board, and then maneuvering them around, the initial board is totally empty, offering black (who goes first) a choice of 361 initial moves. Taking symmetry and transposition into account, he has a total of &lt;del&gt;90&lt;/del&gt; 55  unique moves to choose from. I do not mean to disparage chess; indeed, when I was young I played a lot of chess. But every since I began to seriously play go, I find my taste for chess has waned almost to naught. These days chess feels to me to be confined and lacking in elegance.&lt;/p&gt;

&lt;p&gt;A lot of the strategy that happens in go, and one of the things the intrigues me about the game, depends on emergent phenomena that are a direct result of the very simple rules of the game. For example, certain shapes of stones are unconditionally alive. These shapes surround two separate empty positions of one space each. Since either position would be a suicide move for the opponent, the opponent can never take all the liberties of the group. Hence it cannot be killed. Each stone is identical, and so the value of a stone is entirely dependent on the pattern it makes with the rest of the stones on the board.&lt;/p&gt;


&lt;p&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Conway's_Game_of_Life&quot;&gt;Conway&amp;#8217;s Game of Life&lt;/a&gt; was directly inspired by Go. In fact, lacking a computer to run it on, Conway experimented with his &amp;#8220;game&amp;#8221; using a Go board and its stones. If you are familiar with life, you know about all the strange structures that rise out of its very simple rules. The same thing happens in Go. Certain formations of stones are very strong, others are very weak. Sometimes the difference between a formation being weak or strong depends on who gets to play next. Sometimes you play on one section of the board to a point where one player has an obviously dominating position, and so the play moves elsewhere. But then, as the influence of distant battles propagates across the board, suddenly that dominating position wobbles and falls.&lt;/p&gt;

&lt;p&gt;To new comers watching a game, it can seem quite random, with each player plunking stones down seemingly at random, and occasionally taking groups off the board. But to an experienced player, each move has significance. Two moves that might appear practically identical, i.e. the choice between two adjacent points on the board, can and often do have drastically different purposes and significance. For example, consider the first move either player makes. Almost everyone plays the first move in the corner. This is to secure some easy territory, as it is generally the case that a stone behind the 5,5 point can be built into a base. Most people play either on the 3,3 point or the 4,4 point. The 3,3, point is considered an edge facing position, securing the corner quite firmly, but lacking in the ability to project strength towards the center of the board. The 4,4 point, on the other hand, only weakly controls the corner, and is considered a canter facing position. The difference between that two is that from the 4,4 point, your opponent has a 9x9 block of stones in which ti make a position, and it is generally accepted that you cannot stop someone from doing so in the corner unless it is played badly. From the 3,3 point, on the other hand, your opponent only has a 2x2 square in which to try to maneuver, which is simply too tight to do much. The best that can be hoped for is a stalemate in the corner, where each person has a position projecting strength along one side of the board, and one person controls the corner itself, which will generally be the person occupying the 3,3 point.&lt;/p&gt;

&lt;p&gt;Often when people see me playing Go with others for the first time, they ask if it is Chinese checkers. While it maybe (very, very) superficially similar, they are very different. The fact is, until you&amp;#8217;ve played the game a couple of times, the true complexity of it is not at all apparent. In fact, the first few games people play tend to be confusing. The moves an more experienced opponent makes seem to make no sense, until suddenly they put down a stone and remove a good chunk of yours. Or you find that a position you have been working towards for 10 turns was long ago seen by your opponent, who at that time placed a single stone in a key spot, destroying your position long before it was even formed. It is these kinds of things that set Go apart from Chess, with its more localized character.&lt;/p&gt;

&lt;p&gt;In terms of complexity (in the technical, theoretical sense) Go is more complicated then Chess. This is partly because of the drastically larger board space. But it is also caused by the highly abstract nature of the game play. Ever since Deep Blue beat the world chess champion, the AI community has switched its focus to Go. At the current moment, the best Go software players at about an intermediate armature level. The difficulties faced in programing Go are two fold. The first is that the search space is insanely large. The average branching factor of a game tree for Go is 200. As a comparison, for chess it is about 10. The other problem with go is no one has come up with good heuristics to determine what makes one Go position better than another. Without this, standard techniques like Mini-Max cannot be applied. Of course, they cannot be applied anyway when the Mini-Max tree has 200+ children off each branch of the tree.&lt;/p&gt;

&lt;p&gt;As is obligatory in any article talking about Chess and Go, a number of obvious differences between the two:&lt;/p&gt;

&lt;p&gt;Chess starts with a board crowded with pieces, and removes them one by one. Go starts with an empty board and adds pieces to it one by one.&lt;br /&gt;
Chess has complicated rules, go has simple rules.&lt;br /&gt;
Chess has several different types of pieces, each of which has different properties. Go has one type of piece, so each piece is identical to every other.&lt;br /&gt;
The first move of chess dictates the structure of the whole board. The first move of Go structures only a signal corner.&lt;br /&gt;
Chess focuses more on tactical considerations. Go depends in large part of large strategic considerations.&lt;br /&gt;
The first moves in chess are a fast paced struggle for domination of the center. The first moves in go are peaceful sketches of future skirmish lines.&lt;/p&gt;



&lt;p&gt;If you wish to try out Go, &lt;a href=&quot;http://www.gnu.org/software/gnugo/&quot;&gt;GNU Go&lt;/a&gt; is freely available, and you can also play against other people on line for free via the &lt;a href=&quot;http://www.pandanet.co.jp/English/&quot;&gt;Internet Go Server&lt;/a&gt;. In either case, be prepared to have your ass handed to you repeatedly. A wise man once said you should loose your first 50 games of go as fast as possible. The point being that you must bang your brainagainst the go board for a while until certain formations start to glow when you look at them. At that point, you are ready to start learning how to play. You would also be wise to read &lt;a href=&quot;http://www.usgo.org/usa/waytogo/&quot;&gt;The Way To Go&lt;/a&gt; a free 25 page pdf that explains basic strategy.&lt;/p&gt;

&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=37&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Go and Chess are generally considered to be the paradigm of strategy games and pure intellectual pursuit. But not many people have heard of Go in the western world, at least not compared to Chess. Anyone that likes chess is doing themselves a grave disservice by not at least trying out Go. I learned how to play Go approximately 6 years ago, but only played sporadically until approximately 2 years ago, when i started to play any chance i could. These days, i try to play at least 4 or 5 games a week, and have seen my strength rise dramatically as a result. Frustrated by a lack of people to play against, this is a small attempt of mine to introduce the game to people, in the hopes of increasing its popularity.</p>



<p>Go is a strategy game from Asia. It is played on a 19 x 19 grid. Two players, one playing black the other white, take turns placing stones on one of the initially empty 361 intersections of the grid. The object of the game is to surround more territory then your opponent. Territory is considered surrounded by a player if there is no sequence of adjacent points in a region which connects to an opponent&#8217;s stones. Once placed on the board, stones do not move, and are only removed if all 4 adjacent intersections are occupied by enemy stones. Empty points around a stone are called its liberties, and two adjacent stones of the same color share their liberties. With the addition of a rule, called the Ko rule, which forbids the repetition of a previous board state, these are the only rules to the game.</p>

<p>Playing Go has a quite different feel to it than playing chess. Rather than starting with all pieces at set positions on the board, and then maneuvering them around, the initial board is totally empty, offering black (who goes first) a choice of 361 initial moves. Taking symmetry and transposition into account, he has a total of <del>90</del> 55  unique moves to choose from. I do not mean to disparage chess; indeed, when I was young I played a lot of chess. But every since I began to seriously play go, I find my taste for chess has waned almost to naught. These days chess feels to me to be confined and lacking in elegance.</p>

<p>A lot of the strategy that happens in go, and one of the things the intrigues me about the game, depends on emergent phenomena that are a direct result of the very simple rules of the game. For example, certain shapes of stones are unconditionally alive. These shapes surround two separate empty positions of one space each. Since either position would be a suicide move for the opponent, the opponent can never take all the liberties of the group. Hence it cannot be killed. Each stone is identical, and so the value of a stone is entirely dependent on the pattern it makes with the rest of the stones on the board.</p>


<p><a href="http://en.wikipedia.org/wiki/Conway's_Game_of_Life">Conway&#8217;s Game of Life</a> was directly inspired by Go. In fact, lacking a computer to run it on, Conway experimented with his &#8220;game&#8221; using a Go board and its stones. If you are familiar with life, you know about all the strange structures that rise out of its very simple rules. The same thing happens in Go. Certain formations of stones are very strong, others are very weak. Sometimes the difference between a formation being weak or strong depends on who gets to play next. Sometimes you play on one section of the board to a point where one player has an obviously dominating position, and so the play moves elsewhere. But then, as the influence of distant battles propagates across the board, suddenly that dominating position wobbles and falls.</p>

<p>To new comers watching a game, it can seem quite random, with each player plunking stones down seemingly at random, and occasionally taking groups off the board. But to an experienced player, each move has significance. Two moves that might appear practically identical, i.e. the choice between two adjacent points on the board, can and often do have drastically different purposes and significance. For example, consider the first move either player makes. Almost everyone plays the first move in the corner. This is to secure some easy territory, as it is generally the case that a stone behind the 5,5 point can be built into a base. Most people play either on the 3,3 point or the 4,4 point. The 3,3, point is considered an edge facing position, securing the corner quite firmly, but lacking in the ability to project strength towards the center of the board. The 4,4 point, on the other hand, only weakly controls the corner, and is considered a canter facing position. The difference between that two is that from the 4,4 point, your opponent has a 9x9 block of stones in which ti make a position, and it is generally accepted that you cannot stop someone from doing so in the corner unless it is played badly. From the 3,3 point, on the other hand, your opponent only has a 2x2 square in which to try to maneuver, which is simply too tight to do much. The best that can be hoped for is a stalemate in the corner, where each person has a position projecting strength along one side of the board, and one person controls the corner itself, which will generally be the person occupying the 3,3 point.</p>

<p>Often when people see me playing Go with others for the first time, they ask if it is Chinese checkers. While it maybe (very, very) superficially similar, they are very different. The fact is, until you&#8217;ve played the game a couple of times, the true complexity of it is not at all apparent. In fact, the first few games people play tend to be confusing. The moves an more experienced opponent makes seem to make no sense, until suddenly they put down a stone and remove a good chunk of yours. Or you find that a position you have been working towards for 10 turns was long ago seen by your opponent, who at that time placed a single stone in a key spot, destroying your position long before it was even formed. It is these kinds of things that set Go apart from Chess, with its more localized character.</p>

<p>In terms of complexity (in the technical, theoretical sense) Go is more complicated then Chess. This is partly because of the drastically larger board space. But it is also caused by the highly abstract nature of the game play. Ever since Deep Blue beat the world chess champion, the AI community has switched its focus to Go. At the current moment, the best Go software players at about an intermediate armature level. The difficulties faced in programing Go are two fold. The first is that the search space is insanely large. The average branching factor of a game tree for Go is 200. As a comparison, for chess it is about 10. The other problem with go is no one has come up with good heuristics to determine what makes one Go position better than another. Without this, standard techniques like Mini-Max cannot be applied. Of course, they cannot be applied anyway when the Mini-Max tree has 200+ children off each branch of the tree.</p>

<p>As is obligatory in any article talking about Chess and Go, a number of obvious differences between the two:</p>

<p>Chess starts with a board crowded with pieces, and removes them one by one. Go starts with an empty board and adds pieces to it one by one.<br />
Chess has complicated rules, go has simple rules.<br />
Chess has several different types of pieces, each of which has different properties. Go has one type of piece, so each piece is identical to every other.<br />
The first move of chess dictates the structure of the whole board. The first move of Go structures only a signal corner.<br />
Chess focuses more on tactical considerations. Go depends in large part of large strategic considerations.<br />
The first moves in chess are a fast paced struggle for domination of the center. The first moves in go are peaceful sketches of future skirmish lines.</p>



<p>If you wish to try out Go, <a href="http://www.gnu.org/software/gnugo/">GNU Go</a> is freely available, and you can also play against other people on line for free via the <a href="http://www.pandanet.co.jp/English/">Internet Go Server</a>. In either case, be prepared to have your ass handed to you repeatedly. A wise man once said you should loose your first 50 games of go as fast as possible. The point being that you must bang your brainagainst the go board for a while until certain formations start to glow when you look at them. At that point, you are ready to start learning how to play. You would also be wise to read <a href="http://www.usgo.org/usa/waytogo/">The Way To Go</a> a free 25 page pdf that explains basic strategy.</p>

<div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=37&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=37&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>You Don't Know What You Can't Know: Fitch&#8217;s Paradox of Knowability</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=36&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Thu, 11 Oct 2007 18:54:33 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Musings</category>
<category domain="alt">Computer Science</category>
<category domain="main">Logic</category>
<category domain="alt">Mathematics</category>			<guid isPermaLink="false">36@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Or, You Can't Know What You Don't Know You Can't Know.&lt;/p&gt;

&lt;p&gt;This is an interesting result from modal logic that I will try to sketch here. The upshot of the result, depending on which side of a divide you fall into, is either that there are some truths that are logically impossible to know, or that every truth is already known by someone. &lt;/p&gt;

&lt;p&gt;The dividing line in this case is whether you are a realist or &lt;a href=&quot;http://en.wikipedia.org/wiki/Anti-realism&quot;&gt;anti-realist&lt;/a&gt;. The realists posit that there is an external reality that has certain definite properties. The anti-realist deny that such an external reality exists (or, in some cases, that we can have access to it). I'll get more into this distinction after I sketch the proof. If you find logic boring, feel free to skip the proof and scroll to the end for a brief discussion on the implications of this result.&lt;/p&gt;



&lt;p&gt;First, we have to state two assumptions. The first assumption is referred to as the knowability principle, hereon referred to as KP. This can be expressed as:&lt;/p&gt;

&lt;p&gt;            (KP) All truths are knowable by someone at some time.&lt;/p&gt;

&lt;p&gt;To express this in modal logic, where &quot;Lp&quot; means &quot;it is necessary that p&quot; or &quot;in every possible world it is the case that p&quot;, and &quot;Mp&quot; means &quot;it is possible that p&quot; or &quot;in some possible world it is the case that p&quot; we write:&lt;/p&gt;

&lt;p&gt;            (KP) &amp;#8704;p(p -&gt; MKp)&lt;/p&gt;

&lt;p&gt;This could be read as &quot;If p is necessarily true, then it is possible to know that p (is true).&quot;&lt;/p&gt;

&lt;p&gt;he second assumption we make is that we are not omniscient, i.e. that there are truths that we don&amp;#8217;t know. Symbolically:&lt;/p&gt;

&lt;p&gt;            (NO) &amp;#8707;Lp(p ^ ~Kp)&lt;/p&gt;

&lt;p&gt;This reads as &quot;There exists a necessary truth p such that p is true, and no one knows that p.&quot; We call this non-omniscience, and will refer to it as NO.&lt;/p&gt;

&lt;p&gt;The thrust of the paradox is that these two statements contradict each other, so one of these assumptions is false. It is either the case that there are truths we cannot know, or we already know all truths.&lt;/p&gt;

&lt;p&gt;The formal proof of this comes in two pieces. The first piece flows thus:&lt;/p&gt;

&lt;p&gt;(1) If the existential statement NO is true, then some instance of it is true, i.e. we can drop the existential quantifier and work with the resulting statement:&lt;/p&gt;

&lt;p&gt;            p ^ ~Kp&lt;/p&gt;

&lt;p&gt;(2) In KP, the predicate p is unbound, so we can replace all instances of p with some other predicate. In this instance, we will replace it with the predicate from the preceding step (p ^ ~Kp). Since the predicate is necessarily true, we will also drop the &amp;#8704;p to get:&lt;/p&gt;

&lt;p&gt;            (p ^ ~Kp) -&gt; MK(p ^ ~Kp)&lt;br /&gt;
 &lt;br /&gt;
(3) The left hand side of this implication is the statement from line 1, so the consequent is true:&lt;/p&gt;

&lt;p&gt;            MK(p ^ ~Kp)&lt;/p&gt;

&lt;p&gt;This reads as &quot;It is possible to know that 'p is true and that it is not known that p.'&quot;&lt;/p&gt;

&lt;p&gt;The first hint of where the problem lies is that we can prove with a separate proof that it is impossible to know the conjunction in line 3. In other words, line 3 is false.&lt;/p&gt;

&lt;p&gt;The proof of this relies on two separate epistemic assumptions, neither of which is particularly troubling in its own regard.&lt;/p&gt;

&lt;p&gt;The first assumption is that the K operator, which we have been using to represent &quot;it is known that&quot;, and is commonly referred to as a knowledge operator, is transitive under conjunction.&lt;/p&gt;

&lt;p&gt;            (A) K(p ^ q) -&gt; Kp ^ Kq&lt;/p&gt;

&lt;p&gt;The upshot of this statement is that if you &quot;know x and y&quot; then you &quot;know x&quot; and you &quot;know y&quot;.&lt;/p&gt;

&lt;p&gt;The second assumption is that the K operator is at least as strong as truth. This means that if you know something it is true; or that it is impossible to know a false statement. (Note that it is possible to believe a false statement. We are just assuming here that real knowledge is equivalent to truth.)&lt;/p&gt;

&lt;p&gt;            (B) Kp -&gt; p&lt;/p&gt;

&lt;p&gt;This states that &quot;p is known implies that p is true.&quot;&lt;/p&gt;

&lt;p&gt;The proof also depends on two modal assumptions, which are also fairly untroubling.&lt;/p&gt;

&lt;p&gt;The first assumption is that if you can prove a statement, then that statement is necessarily true. It is impossible to prove a false hood.&lt;/p&gt;

&lt;p&gt;            (C) If |- p, then Mp.&lt;/p&gt;

&lt;p&gt;The inverse of this statement would be that if you cannot prove a statement, then that statement is necessarily false.&lt;/p&gt;

&lt;p&gt;The second assumption is that &quot;L~&quot; (&quot;it is necessarily false that&quot;) is logically equivalent to &quot;~Mp&quot; (&quot;it is not possible that&quot;).&lt;/p&gt;

&lt;p&gt;            (D) L~p -&gt; ~Mp.&lt;/p&gt;

&lt;p&gt;This reads as &quot;If p is necessarily false, then it is not possible that p.&quot;&lt;/p&gt;

&lt;p&gt;Consider now this second proof:&lt;/p&gt;

&lt;p&gt;(4) Assume K(p ^ ~Kp) for purposes of a reduction ad absurdum&lt;/p&gt;

&lt;p&gt;            K(p ^ ~Kp)&lt;/p&gt;

&lt;p&gt;(5) According to assumption A we can distribute the K in the preceding statement over the conjuncts, getting:&lt;/p&gt;

&lt;p&gt;            Kp ^ K~Kp&lt;/p&gt;

&lt;p&gt;(6) Using assumption B, we can drop the K from the right conjunct in the preceding statement, obtaining:&lt;/p&gt;

&lt;p&gt;            Kp ^ ~Kp&lt;/p&gt;

&lt;p&gt;(7) The preceding statement is a contradiction. Our assumption at line 4 must be false, so we negate it:&lt;/p&gt;

&lt;p&gt;            ~K(p ^ ~Kp)&lt;/p&gt;

&lt;p&gt;(8) Assumption C tells us that if we cannot prove something, then it is necessarily false. So we can swap a &quot;~&quot; (&quot;it is not true that&quot;) with &quot;L~&quot; (&quot;it is necessarily not true that&quot;):&lt;/p&gt;

&lt;p&gt;            L~K(p ^ L~Kp)&lt;/p&gt;

&lt;p&gt;(9) Assumption D lets us exchange a &quot;L~&quot; for a &quot;~M&quot; giving us:&lt;/p&gt;

&lt;p&gt;            ~MK(p ^ ~Kp)&lt;/p&gt;

&lt;p&gt;Where are we now? Well line 3 from the first proof was&lt;/p&gt;

&lt;p&gt;            MK(p ^ ~Kp) - It is possible to know that &quot;p is true and that it is not known that p.&quot;&lt;br /&gt;
 &lt;br /&gt;
But we&amp;#8217;ve just proven that&lt;/p&gt;

&lt;p&gt;            ~MK(p ^ M~Kp) &amp;#8211; It is not possible to know that &quot;p is true and that it is not known that p.&quot;&lt;/p&gt;

&lt;p&gt;So we have a contradiction on our hands. One of our assumptions must be wrong. Now, the 2 modal assumptions and 2 epistemic assumptions from the second proof are generally considered as not up for debate. (Note that this is true only in a very loose sense. There are versions of logic where some of these assumptions are rejected, but they are far beyond the scope of this.)&lt;/p&gt;

&lt;p&gt;So the contradiction must lie between KP and NO.&lt;/p&gt;

&lt;p&gt;If you want to hold on to the view that all truths are knowable (KP), then you must deny that we are not omniscient, and therefore conclude that all truths are already known:&lt;/p&gt;

&lt;p&gt;            &amp;#8704;p(p -&gt; Kp)&lt;/p&gt;

&lt;p&gt;If you are a hard headed scientists, i.e. a realist, this statement is obviously false. So you are forced to conclude that there are truths which are logically unknowable. I.e., you must conclude that&lt;/p&gt;

&lt;p&gt;    &amp;#8704;p(p -&gt; MKp)&lt;/p&gt;

&lt;p&gt;is false. I.e. that&lt;/p&gt;

&lt;p&gt;&amp;#8707;p(p ^ ~Kp)&lt;/p&gt;

&lt;p&gt;is true.&lt;/p&gt;

&lt;p&gt;On the other hand, if you are an anti-realist and don't believe in an external world, its obviously the case that all truths are already known. If the world is a product of our thoughts and beliefs, then truth is also a product of them. So we define the set of true propositions, and obviously we know what the set contains.&lt;/p&gt;

&lt;p&gt;Now here is an interesting twist on the idea. The function that we are refereeing to as K only has to satisfy the requirement that it is at least as strong as &quot;truth.&quot; So we could reinterpret K as any factive function that is at least as strong as truth.&lt;/p&gt;

&lt;p&gt;For example, we could say that K means &quot;At some point in time, it is known that.&quot; This would then become a proof that there are truths that cannot be known at any point in time.&lt;/p&gt;

&lt;p&gt;We could say that K means &quot;At some point in space, it is known that,&quot; and then we have a proof that there must exists regions of space about which there are things we cannot logically know, or from which it is impossible to know certain truths.&lt;/p&gt;

&lt;p&gt;Several philosophers that I've discussed this problem with are left scratching their heads as to why it constitutes a paradox, because the result is obvious. The import of the result is that we've shown it to be logically necessary, and with damn few assumptions to begin with.&lt;/p&gt;

&lt;p&gt;But the implications are deep, especially if you are a scientist. Scientists are going about the job of discovering what the properties of reality are. They do this using a process called the scientific method. It seems intuitively obvious that, in the limit, the scientific method provides better and better descriptions of reality. But this result shows that there must be some parts of reality that epistemologicaly inaccessible to us.&lt;/p&gt;

&lt;p&gt;Furthermore, you can never be sure what truths fall into this category. For if we wished to know if some proposition P is true, and P is unknowable, it follows trivially that there cannot exist a proof (or some empirical method of testing) of P or a proof of ~P. For if one of these proofs existed it would contradict that fact that P was unknowable.&lt;/p&gt;

&lt;p&gt;We can get a hint of what this may be like with &lt;a href=&quot;http://en.wikipedia.org/wiki/Continuum_hypothesis&quot;&gt;the Continumm Hypothesis&lt;/a&gt;. I won't go into detail in regards to what it is, but just point out that it has been proven that you can neither prove or disprove the hypothesis from number theory as it currently exists. To prove it, we must add some new axiom to number theory that would allow us to derive a proof. But unless that new axiom has empirical justification, we are essentially just assuming that it is true (or false), and this would destroy any claim that mathematics would have to be an objective science.&lt;/p&gt;

&lt;p&gt;It is a distinct possibility that many of the open questions in logic, mathematics and computer science are actually unknowable propositions. For example, consider the implications if it were true that the proposition that P = NP is unknowable, though true. It would follow that we would never disprove it (because you cannot prove a falsehood), but it would also follow that we would never discover a p-time algorithm that solves an NP-complete problem, even though one must exist! Some how, some why, we would never find it, even if it were trivially simple.&lt;/p&gt;

&lt;p&gt;Now if THAT doesn't strike you as a surprising, deep, and puzzling result, I don't know why the hell you are reading my blog.&lt;/p&gt;
&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=36&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Or, You Can't Know What You Don't Know You Can't Know.</p>

<p>This is an interesting result from modal logic that I will try to sketch here. The upshot of the result, depending on which side of a divide you fall into, is either that there are some truths that are logically impossible to know, or that every truth is already known by someone. </p>

<p>The dividing line in this case is whether you are a realist or <a href="http://en.wikipedia.org/wiki/Anti-realism">anti-realist</a>. The realists posit that there is an external reality that has certain definite properties. The anti-realist deny that such an external reality exists (or, in some cases, that we can have access to it). I'll get more into this distinction after I sketch the proof. If you find logic boring, feel free to skip the proof and scroll to the end for a brief discussion on the implications of this result.</p>



<p>First, we have to state two assumptions. The first assumption is referred to as the knowability principle, hereon referred to as KP. This can be expressed as:</p>

<p>            (KP) All truths are knowable by someone at some time.</p>

<p>To express this in modal logic, where "Lp" means "it is necessary that p" or "in every possible world it is the case that p", and "Mp" means "it is possible that p" or "in some possible world it is the case that p" we write:</p>

<p>            (KP) &#8704;p(p -> MKp)</p>

<p>This could be read as "If p is necessarily true, then it is possible to know that p (is true)."</p>

<p>he second assumption we make is that we are not omniscient, i.e. that there are truths that we don&#8217;t know. Symbolically:</p>

<p>            (NO) &#8707;Lp(p ^ ~Kp)</p>

<p>This reads as "There exists a necessary truth p such that p is true, and no one knows that p." We call this non-omniscience, and will refer to it as NO.</p>

<p>The thrust of the paradox is that these two statements contradict each other, so one of these assumptions is false. It is either the case that there are truths we cannot know, or we already know all truths.</p>

<p>The formal proof of this comes in two pieces. The first piece flows thus:</p>

<p>(1) If the existential statement NO is true, then some instance of it is true, i.e. we can drop the existential quantifier and work with the resulting statement:</p>

<p>            p ^ ~Kp</p>

<p>(2) In KP, the predicate p is unbound, so we can replace all instances of p with some other predicate. In this instance, we will replace it with the predicate from the preceding step (p ^ ~Kp). Since the predicate is necessarily true, we will also drop the &#8704;p to get:</p>

<p>            (p ^ ~Kp) -> MK(p ^ ~Kp)<br />
 <br />
(3) The left hand side of this implication is the statement from line 1, so the consequent is true:</p>

<p>            MK(p ^ ~Kp)</p>

<p>This reads as "It is possible to know that 'p is true and that it is not known that p.'"</p>

<p>The first hint of where the problem lies is that we can prove with a separate proof that it is impossible to know the conjunction in line 3. In other words, line 3 is false.</p>

<p>The proof of this relies on two separate epistemic assumptions, neither of which is particularly troubling in its own regard.</p>

<p>The first assumption is that the K operator, which we have been using to represent "it is known that", and is commonly referred to as a knowledge operator, is transitive under conjunction.</p>

<p>            (A) K(p ^ q) -> Kp ^ Kq</p>

<p>The upshot of this statement is that if you "know x and y" then you "know x" and you "know y".</p>

<p>The second assumption is that the K operator is at least as strong as truth. This means that if you know something it is true; or that it is impossible to know a false statement. (Note that it is possible to believe a false statement. We are just assuming here that real knowledge is equivalent to truth.)</p>

<p>            (B) Kp -> p</p>

<p>This states that "p is known implies that p is true."</p>

<p>The proof also depends on two modal assumptions, which are also fairly untroubling.</p>

<p>The first assumption is that if you can prove a statement, then that statement is necessarily true. It is impossible to prove a false hood.</p>

<p>            (C) If |- p, then Mp.</p>

<p>The inverse of this statement would be that if you cannot prove a statement, then that statement is necessarily false.</p>

<p>The second assumption is that "L~" ("it is necessarily false that") is logically equivalent to "~Mp" ("it is not possible that").</p>

<p>            (D) L~p -> ~Mp.</p>

<p>This reads as "If p is necessarily false, then it is not possible that p."</p>

<p>Consider now this second proof:</p>

<p>(4) Assume K(p ^ ~Kp) for purposes of a reduction ad absurdum</p>

<p>            K(p ^ ~Kp)</p>

<p>(5) According to assumption A we can distribute the K in the preceding statement over the conjuncts, getting:</p>

<p>            Kp ^ K~Kp</p>

<p>(6) Using assumption B, we can drop the K from the right conjunct in the preceding statement, obtaining:</p>

<p>            Kp ^ ~Kp</p>

<p>(7) The preceding statement is a contradiction. Our assumption at line 4 must be false, so we negate it:</p>

<p>            ~K(p ^ ~Kp)</p>

<p>(8) Assumption C tells us that if we cannot prove something, then it is necessarily false. So we can swap a "~" ("it is not true that") with "L~" ("it is necessarily not true that"):</p>

<p>            L~K(p ^ L~Kp)</p>

<p>(9) Assumption D lets us exchange a "L~" for a "~M" giving us:</p>

<p>            ~MK(p ^ ~Kp)</p>

<p>Where are we now? Well line 3 from the first proof was</p>

<p>            MK(p ^ ~Kp) - It is possible to know that "p is true and that it is not known that p."<br />
 <br />
But we&#8217;ve just proven that</p>

<p>            ~MK(p ^ M~Kp) &#8211; It is not possible to know that "p is true and that it is not known that p."</p>

<p>So we have a contradiction on our hands. One of our assumptions must be wrong. Now, the 2 modal assumptions and 2 epistemic assumptions from the second proof are generally considered as not up for debate. (Note that this is true only in a very loose sense. There are versions of logic where some of these assumptions are rejected, but they are far beyond the scope of this.)</p>

<p>So the contradiction must lie between KP and NO.</p>

<p>If you want to hold on to the view that all truths are knowable (KP), then you must deny that we are not omniscient, and therefore conclude that all truths are already known:</p>

<p>            &#8704;p(p -> Kp)</p>

<p>If you are a hard headed scientists, i.e. a realist, this statement is obviously false. So you are forced to conclude that there are truths which are logically unknowable. I.e., you must conclude that</p>

<p>    &#8704;p(p -> MKp)</p>

<p>is false. I.e. that</p>

<p>&#8707;p(p ^ ~Kp)</p>

<p>is true.</p>

<p>On the other hand, if you are an anti-realist and don't believe in an external world, its obviously the case that all truths are already known. If the world is a product of our thoughts and beliefs, then truth is also a product of them. So we define the set of true propositions, and obviously we know what the set contains.</p>

<p>Now here is an interesting twist on the idea. The function that we are refereeing to as K only has to satisfy the requirement that it is at least as strong as "truth." So we could reinterpret K as any factive function that is at least as strong as truth.</p>

<p>For example, we could say that K means "At some point in time, it is known that." This would then become a proof that there are truths that cannot be known at any point in time.</p>

<p>We could say that K means "At some point in space, it is known that," and then we have a proof that there must exists regions of space about which there are things we cannot logically know, or from which it is impossible to know certain truths.</p>

<p>Several philosophers that I've discussed this problem with are left scratching their heads as to why it constitutes a paradox, because the result is obvious. The import of the result is that we've shown it to be logically necessary, and with damn few assumptions to begin with.</p>

<p>But the implications are deep, especially if you are a scientist. Scientists are going about the job of discovering what the properties of reality are. They do this using a process called the scientific method. It seems intuitively obvious that, in the limit, the scientific method provides better and better descriptions of reality. But this result shows that there must be some parts of reality that epistemologicaly inaccessible to us.</p>

<p>Furthermore, you can never be sure what truths fall into this category. For if we wished to know if some proposition P is true, and P is unknowable, it follows trivially that there cannot exist a proof (or some empirical method of testing) of P or a proof of ~P. For if one of these proofs existed it would contradict that fact that P was unknowable.</p>

<p>We can get a hint of what this may be like with <a href="http://en.wikipedia.org/wiki/Continuum_hypothesis">the Continumm Hypothesis</a>. I won't go into detail in regards to what it is, but just point out that it has been proven that you can neither prove or disprove the hypothesis from number theory as it currently exists. To prove it, we must add some new axiom to number theory that would allow us to derive a proof. But unless that new axiom has empirical justification, we are essentially just assuming that it is true (or false), and this would destroy any claim that mathematics would have to be an objective science.</p>

<p>It is a distinct possibility that many of the open questions in logic, mathematics and computer science are actually unknowable propositions. For example, consider the implications if it were true that the proposition that P = NP is unknowable, though true. It would follow that we would never disprove it (because you cannot prove a falsehood), but it would also follow that we would never discover a p-time algorithm that solves an NP-complete problem, even though one must exist! Some how, some why, we would never find it, even if it were trivially simple.</p>

<p>Now if THAT doesn't strike you as a surprising, deep, and puzzling result, I don't know why the hell you are reading my blog.</p>
<div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=36&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=36&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Blue Eyes: A Logic Problem and its Solution</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=35&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Fri, 28 Sep 2007 18:51:26 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Logic</category>
<category domain="alt">Philosophy</category>			<guid isPermaLink="false">35@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;XKCD posted a logic program titled &lt;a href=&quot;http://xkcd.com/blue_eyes.html&quot;&gt;Blue Eyes: The Hardest Logic Puzzle in the World&lt;/a&gt;. The problem got posted to reddit, and of course a large argument erupted in the &lt;a href=&quot;http://reddit.com/info/
2tg1g/comments&quot;&gt;comments thread&lt;/a&gt; about how the question doesn&amp;#8217;t make sense, &lt;a href=&quot;http://xkcd.com/solution.html&quot;&gt;the solution&lt;/a&gt; doesn&amp;#8217;t make sense / doesn&amp;#8217;t work / is flawed / etc. etc. etc.&lt;/p&gt;

&lt;p&gt;Rather than futilely attempt to make myself heard above the din, I&amp;#8217;m writing this post which explains what the solution is, how you get to the conclusion, why it is in fact correct, and why the guru&amp;#8217;s statement is necessary.&lt;/p&gt;



&lt;p&gt;Here is the main part of the problem:&lt;/p&gt;

&lt;p&gt;A group of people with assorted eye colors live on an island. They are all perfect logicians &amp;#8211; if a conclusion can be logically deduced, they will do it instantly. No one knows the color of their eyes. Every night at midnight, a ferry stops at the island. If anyone has figured out the color of their own eyes, they [must] leave the island that midnight. Everyone can see everyone else at all times and keeps a count of the number of people they see with each eye color (excluding themselves), but they cannot otherwise communicate. Everyone on the island knows all the rules in this paragraph.&lt;/p&gt;

&lt;p&gt;On this island there are 100 blue-eyed people, 100 brown-eyed people, and the Guru (she happens to have green eyes). So any given blue-eyed person can see 100 people with brown eyes and 99 people with blue eyes (and one with green), but that does not tell him his own eye color; as far as he knows the totals could be 101 brown and 99 blue. Or 100 brown, 99 blue, and he could have red eyes.&lt;/p&gt;

&lt;p&gt;The Guru is allowed to speak once (let&amp;#8217;s say at noon), on one day in all their endless years on the island. Standing before the islanders, she says the following:&lt;/p&gt;

&lt;p&gt;&amp;#8220;I can see someone who has blue eyes.&amp;#8221;&lt;/p&gt;

&lt;p&gt;Who leaves the island, and on what night?&lt;/p&gt;

&lt;p&gt;The answer is that the 100 blue eyed people leave the island on the 100th night.&lt;/p&gt;

&lt;p&gt;To work out why this is the answer, consider the case where only 1 person on the island has blue eyes. He sees that everyone else does &lt;i&gt;not&lt;/i&gt; have blue eyes, and concludes that he does, so he leaves the first night.&lt;/p&gt;

&lt;p&gt;Now consider the case of two people with blue eyes. They both know that one person on the island has blue eyes. So they can safely assume that that person, if he sees no one with blue eyes, will leave the island on the first night. When they wake up on the second morning and see that the only blue eyed person they know of is still on the island, they can infer that the other person sees an individual with blue eyes, and since no one else has blue eyes, it must be themselves, so they both leave on the second night.&lt;/p&gt;

&lt;p&gt;Consider the case of three people with blue eyes. All 3 will know of 2 people on the island with blue eyes. On the 3rd day, when both of the blue eyes people are present, they can infer that the two blue eyed people also see a blue eyes person, and since everyone else does not have blue eyes, they themselves must the 3rd blue eyed person.&lt;/p&gt;

&lt;p&gt;This reasoning will carry you all the way to the given case of 100 people with blue eyes.&lt;/p&gt;

&lt;p&gt;If you are the 100th blue eyes person, when you wake up on the 100th day and see that the 99 blue eyed people you knew of are still present, you can infer that all them also see 99 blue eyed people, hence you have blue eyes. So you all leave the 100th night.&lt;/p&gt;

&lt;p&gt;In other words, if there are X blue eyed people on the island, it will take X days for all of them to conclude their own eye color.&lt;/p&gt;

&lt;p&gt;A lot of people wondered why the gurus statement is necessary. In fact, the gurus statement is vital.&lt;/p&gt;

&lt;p&gt;The gurus statement is an indirect way of giving you information about your own eye color. No one leaves the island if he doesn&amp;#8217;t say it. If you are a blue eyed person walking around the island, the only thing you know is you see 99 blue eyed people, 100 brown eyed people, and 1 green eyed person. You have no way of discovering your own eye color because there are no mirrors. But as shown above, once the guru makes his statement, you can conclude that the X blue eyed people will leave on the Xth day. You only see X - 1 blue eyed people. When day X comes along and all the blue eyed people are still present, you conclude that your count of blue eyed people is off by 1, and the extra one is you. Every other blue eyed person makes the same inference.&lt;/p&gt;

&lt;p&gt;Essentially, and this is key to understand why the guru&amp;#8217;s statement is needed, you are doing an inductive proof to conclude if you have blue eyes or not. In an inductive proof, you prove something holds for a base case, and then prove that if it holds in an arbitrary case X then it holds in case X + 1. Note that while both these pieces are necessary, the first is the logical foundation upon which such a proof rests.&lt;/p&gt;

&lt;p&gt;The second statement lets us infer that, say, some property holds of every positive integer &lt;i&gt;provided that the first statement is correct&lt;/i&gt;. Without the first statement, we are merely showing that &lt;i&gt;if&lt;/i&gt; the first statement were correct, &lt;i&gt;then&lt;/i&gt; this would hold for all positive integers.&lt;/p&gt;

&lt;p&gt;The base case in this instance is the situation in which there is one blue eyed person, who leaves on the first day. His inference that he has blue eyes is only valid because the guru made his statement that he sees someone with blue eyes. If the guru didn&amp;#8217;t make that statement, his inference would not be valid. So the base case in our inductive proof needs the guru&amp;#8217;s statement to be valid.&lt;/p&gt;

&lt;p&gt;The inductive step is to then show that a similar line of reasoning works in a case where there are X blue eyed people, i.e. in the base case it takes 1 day for the 1 blue eyed person to leave, and in general it takes X days for X blue eyed people to figure out their eye color and leave.&lt;/p&gt;

&lt;p&gt;Every other inference in an inductive proof depends on the base case being justified. The people on the island are all perfect logicians, so they would immediately realize when they got to the island that &lt;i&gt;if&lt;/i&gt; someone were able to communicate that they see a blue eyed person, &lt;i&gt;then&lt;/i&gt; they could deduce whether or not they have blue eyes. The statement would justify the base case, and the inductive inference would carry then out to the X number of blue eyed people they see. Hence, the gurus statement is necessary, and you can see how the gurus statement provides needed information.&lt;/p&gt;

&lt;p&gt;You might think that what the guru said was common knowledge. But, in the base case, it wasn&amp;#8217;t. In the base case, everyone can see a blue eyed person except for the blue eyed person. Since no one knows their own eye color, the only blue eyed person wouldn&amp;#8217;t know that anyone else sees a blue eyed person, and everyone else would not know whether or not the blue eyed person does (because they themselves might have blue eyes, in which case the other blue eyed person would also see a blue eyed person).&lt;/p&gt;

&lt;p&gt;The gurus statement makes it the case that everybody knows that everybody knows that there is a blue eyed person, whereas before (in the base case), no one was sure that everyone knew there was blue eyed person. After the gurus statement, the lone blue eyed person knows that everyone but him sees a blue eyed person. There is a distinction here between first order knowledge (i.e. knowledge I know) and what is called &lt;a href=&quot;http://en.wikipedia.org/wiki/Common_knowledge_(logic)&quot;&gt;common knowledge&lt;/a&gt; (i.e. knowledge I know that everyone else knows).&lt;/p&gt;

&lt;p&gt;To put it another way, after the guru has made his statement, you can make the logical inference that everyone else sees at least X blue eyed persons, and that there are at most X + 1 blue eyed persons present as you may have blue eyes. To discover if the number of blue eyed persons is X or X + 1 requires you to wait X + 1 days. If on the X + 1th day, X blue eyed people are still present, you infer that you have blue eyes and the blue eyed count is really X + 1.&lt;/p&gt;

&lt;p&gt;So what was the new information that the guru&amp;#8217;s statement gave to the people? It was this: the people learned that in the counterfactual case where there was one blue eyed person, that person would be able to figure out their eye color. This is the information that lets the deductions to the actual case possible. The guru gave information about what would have happened had the situation been different. But from that, the islanders can make a logical inference to obtain information about the actual situation.&lt;/p&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=35&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>XKCD posted a logic program titled <a href="http://xkcd.com/blue_eyes.html">Blue Eyes: The Hardest Logic Puzzle in the World</a>. The problem got posted to reddit, and of course a large argument erupted in the <a href="http://reddit.com/info/
2tg1g/comments">comments thread</a> about how the question doesn&#8217;t make sense, <a href="http://xkcd.com/solution.html">the solution</a> doesn&#8217;t make sense / doesn&#8217;t work / is flawed / etc. etc. etc.</p>

<p>Rather than futilely attempt to make myself heard above the din, I&#8217;m writing this post which explains what the solution is, how you get to the conclusion, why it is in fact correct, and why the guru&#8217;s statement is necessary.</p>



<p>Here is the main part of the problem:</p>

<p>A group of people with assorted eye colors live on an island. They are all perfect logicians &#8211; if a conclusion can be logically deduced, they will do it instantly. No one knows the color of their eyes. Every night at midnight, a ferry stops at the island. If anyone has figured out the color of their own eyes, they [must] leave the island that midnight. Everyone can see everyone else at all times and keeps a count of the number of people they see with each eye color (excluding themselves), but they cannot otherwise communicate. Everyone on the island knows all the rules in this paragraph.</p>

<p>On this island there are 100 blue-eyed people, 100 brown-eyed people, and the Guru (she happens to have green eyes). So any given blue-eyed person can see 100 people with brown eyes and 99 people with blue eyes (and one with green), but that does not tell him his own eye color; as far as he knows the totals could be 101 brown and 99 blue. Or 100 brown, 99 blue, and he could have red eyes.</p>

<p>The Guru is allowed to speak once (let&#8217;s say at noon), on one day in all their endless years on the island. Standing before the islanders, she says the following:</p>

<p>&#8220;I can see someone who has blue eyes.&#8221;</p>

<p>Who leaves the island, and on what night?</p>

<p>The answer is that the 100 blue eyed people leave the island on the 100th night.</p>

<p>To work out why this is the answer, consider the case where only 1 person on the island has blue eyes. He sees that everyone else does <i>not</i> have blue eyes, and concludes that he does, so he leaves the first night.</p>

<p>Now consider the case of two people with blue eyes. They both know that one person on the island has blue eyes. So they can safely assume that that person, if he sees no one with blue eyes, will leave the island on the first night. When they wake up on the second morning and see that the only blue eyed person they know of is still on the island, they can infer that the other person sees an individual with blue eyes, and since no one else has blue eyes, it must be themselves, so they both leave on the second night.</p>

<p>Consider the case of three people with blue eyes. All 3 will know of 2 people on the island with blue eyes. On the 3rd day, when both of the blue eyes people are present, they can infer that the two blue eyed people also see a blue eyes person, and since everyone else does not have blue eyes, they themselves must the 3rd blue eyed person.</p>

<p>This reasoning will carry you all the way to the given case of 100 people with blue eyes.</p>

<p>If you are the 100th blue eyes person, when you wake up on the 100th day and see that the 99 blue eyed people you knew of are still present, you can infer that all them also see 99 blue eyed people, hence you have blue eyes. So you all leave the 100th night.</p>

<p>In other words, if there are X blue eyed people on the island, it will take X days for all of them to conclude their own eye color.</p>

<p>A lot of people wondered why the gurus statement is necessary. In fact, the gurus statement is vital.</p>

<p>The gurus statement is an indirect way of giving you information about your own eye color. No one leaves the island if he doesn&#8217;t say it. If you are a blue eyed person walking around the island, the only thing you know is you see 99 blue eyed people, 100 brown eyed people, and 1 green eyed person. You have no way of discovering your own eye color because there are no mirrors. But as shown above, once the guru makes his statement, you can conclude that the X blue eyed people will leave on the Xth day. You only see X - 1 blue eyed people. When day X comes along and all the blue eyed people are still present, you conclude that your count of blue eyed people is off by 1, and the extra one is you. Every other blue eyed person makes the same inference.</p>

<p>Essentially, and this is key to understand why the guru&#8217;s statement is needed, you are doing an inductive proof to conclude if you have blue eyes or not. In an inductive proof, you prove something holds for a base case, and then prove that if it holds in an arbitrary case X then it holds in case X + 1. Note that while both these pieces are necessary, the first is the logical foundation upon which such a proof rests.</p>

<p>The second statement lets us infer that, say, some property holds of every positive integer <i>provided that the first statement is correct</i>. Without the first statement, we are merely showing that <i>if</i> the first statement were correct, <i>then</i> this would hold for all positive integers.</p>

<p>The base case in this instance is the situation in which there is one blue eyed person, who leaves on the first day. His inference that he has blue eyes is only valid because the guru made his statement that he sees someone with blue eyes. If the guru didn&#8217;t make that statement, his inference would not be valid. So the base case in our inductive proof needs the guru&#8217;s statement to be valid.</p>

<p>The inductive step is to then show that a similar line of reasoning works in a case where there are X blue eyed people, i.e. in the base case it takes 1 day for the 1 blue eyed person to leave, and in general it takes X days for X blue eyed people to figure out their eye color and leave.</p>

<p>Every other inference in an inductive proof depends on the base case being justified. The people on the island are all perfect logicians, so they would immediately realize when they got to the island that <i>if</i> someone were able to communicate that they see a blue eyed person, <i>then</i> they could deduce whether or not they have blue eyes. The statement would justify the base case, and the inductive inference would carry then out to the X number of blue eyed people they see. Hence, the gurus statement is necessary, and you can see how the gurus statement provides needed information.</p>

<p>You might think that what the guru said was common knowledge. But, in the base case, it wasn&#8217;t. In the base case, everyone can see a blue eyed person except for the blue eyed person. Since no one knows their own eye color, the only blue eyed person wouldn&#8217;t know that anyone else sees a blue eyed person, and everyone else would not know whether or not the blue eyed person does (because they themselves might have blue eyes, in which case the other blue eyed person would also see a blue eyed person).</p>

<p>The gurus statement makes it the case that everybody knows that everybody knows that there is a blue eyed person, whereas before (in the base case), no one was sure that everyone knew there was blue eyed person. After the gurus statement, the lone blue eyed person knows that everyone but him sees a blue eyed person. There is a distinction here between first order knowledge (i.e. knowledge I know) and what is called <a href="http://en.wikipedia.org/wiki/Common_knowledge_(logic)">common knowledge</a> (i.e. knowledge I know that everyone else knows).</p>

<p>To put it another way, after the guru has made his statement, you can make the logical inference that everyone else sees at least X blue eyed persons, and that there are at most X + 1 blue eyed persons present as you may have blue eyes. To discover if the number of blue eyed persons is X or X + 1 requires you to wait X + 1 days. If on the X + 1th day, X blue eyed people are still present, you infer that you have blue eyes and the blue eyed count is really X + 1.</p>

<p>So what was the new information that the guru&#8217;s statement gave to the people? It was this: the people learned that in the counterfactual case where there was one blue eyed person, that person would be able to figure out their eye color. This is the information that lets the deductions to the actual case possible. The guru gave information about what would have happened had the situation been different. But from that, the islanders can make a logical inference to obtain information about the actual situation.</p><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=35&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=35&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>A Fixed Point Program</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=34&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Tue, 25 Sep 2007 13:03:33 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Computer Science</category>
<category domain="alt">Programming</category>			<guid isPermaLink="false">34@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;In mathematics, a fixed point is a value of a function that maps to its self. In other words, x is a fixed point of a function f if f(x) = x.&lt;/p&gt;

&lt;p&gt;According to Kleene&amp;#8217;s recursion theorem, fixed points exist in every programming language; i.e. in every programming language, there is at least one program (actually infinitely many, trivially different from each other.) the output of which is an exact duplicate of the program.&lt;/p&gt;

&lt;p&gt;Attached you will find a fixed point program written in perl.&lt;/p&gt;



&lt;p&gt;The program starts by defining an array of data. The data is actually a hexadecimal encoding of the text of the program itself. This is one of the simplest ways of implementing a quine, as these programs are called.&lt;/p&gt;

&lt;p&gt;The data in the array is first treated as simple strings, in order to produce the initial contents of the file.  Then, each line in the array is converted back to its ascii equivalent, producing the lines of code from the program itself.&lt;/p&gt;

&lt;p&gt;This may seem trivial to do, but there is a certain level of self-reference buried here that can be hard to get around.&lt;/p&gt;

&lt;p&gt;Consider a naive way of implementing a quine in c. You just write a program that produces its own source code right? Well here is a naive attempt:&lt;/p&gt;

&lt;p&gt;void main(void) {&lt;br /&gt;
      printf(&quot;void main(void){ \n&quot;);&lt;br /&gt;
      printf(&quot;printf(\&quot;void main(void){ \\n\&quot;);&quot;);&lt;br /&gt;
      printf(&quot;printf(\&quot;printf(\\\&quot;void main(void){ \\\n\\\&quot;);\&quot;);&quot;);&lt;br /&gt;
      ..&lt;/p&gt;

&lt;p&gt;The problem should be obvious.&lt;/p&gt;

&lt;p&gt;We need to print out the function declaration in the body of the function, so the first statement of the function prints out the main declaration with its opening curly brace. But then we need to produce the line that prints out the line containing the function declaration. And then we need a line that produces that line, and so on. We run into an infinite regress, where each line requires that there be a succeeding line to produce it as output.&lt;/p&gt;

&lt;p&gt;The way around this problem is represent the entirety of the code in a form that can be manipulated. Then we can use this data twice: first as uninterpreted data that gets spat out, and then as interpreted data that produces the program source code.&lt;/p&gt;

&lt;p&gt;I wrote the perl program in a bootstrapped way. First I wrote the &amp;#8220;hex_to_ascii&amp;#8221; function, as well as a &amp;#8220;ascii to hex&amp;#8221; function. I then wrote the initial line declaring the array, the informative comment, and the bits of code to print out the data array uninterpreted, and then interpreted.  I fed all this code through the &amp;#8220;ascii_to_hex&amp;#8221; function, and took its output and placed it into the array at the top of the file. I deleted the &amp;#8220;ascii_to_hex&amp;#8221; function, and it was done.&lt;/p&gt;

&lt;p&gt;The gist of it is to write everything you need except for the contents of the array itself. Run all the code through an ascii to hex converter and use that as the data for the array. The result will be a program that produces itself as output.&lt;/p&gt;

&lt;p&gt;As I mentioned before, this is a simple example of a quine. They can be much more obscure, or very elegant. For example, this is a classic quine in lisp, which anyone with a passing knowledge of lisp should be able to write or understand:&lt;/p&gt;

&lt;p&gt;     ((lambda (x)&lt;br /&gt;
       (list x (list (quote quote) x)))&lt;br /&gt;
      (quote&lt;br /&gt;
         (lambda (x)&lt;br /&gt;
           (list x (list (quote quote) x)))))&lt;/p&gt;

&lt;p&gt;For those unfamiliar with lisp, I will elaborate.&lt;/p&gt;

&lt;p&gt;Lisp treats everything as lists. So to invoke a function, you make a list where the first element of the list is the function you are calling, and the remaining elements are the arguments to the function (which can themselves be lists).&lt;/p&gt;

&lt;p&gt;So (+ x y) calls the addition function on the values x and y. Lambda is a special function that essentially defines anonymous one off functions. The syntax of lambda is&lt;/p&gt;

&lt;p&gt;(lambda (argument list) (function definition))&lt;/p&gt;

&lt;p&gt;Now this whole thing can be the first element of a list, in which case we can define a new function and pass it some data, and throw away the function at the end of the block. This would look like&lt;/p&gt;

&lt;p&gt;( (lambda (argument list) (function definition)) arg1 arg2 arg3..)&lt;/p&gt;

&lt;p&gt;So the lisp quine works by defining a lambda function that takes its arguments and constructs a list containing the contents of its argument (which is the string &amp;#8220;(lambda (x)(list x (list (quote quote) x))))&amp;#8221; ) plus a second list containing the word &amp;#8220;quote&amp;#8221; (which is a lisp keyword that functions like \ does in c) followed by the contents of x again.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;A proof of the fixed point theorem&lt;/b&gt;&lt;/p&gt;

&lt;p&gt;First, some definitions.&lt;/p&gt;

&lt;p&gt;A computable function is a function that can be computed by some turing machine. A partial function is defined for some subset of its inputs, and a total function is defined for the entire set of possible inputs.&lt;/p&gt;

&lt;p&gt;We need to number all possible programs in some way, the details of which are not important. Sn(&amp;#8230;) will refer to the output of the n-th program acting on the input in the parenthesis.&lt;/p&gt;

&lt;p&gt;There exists a universal turing machine, u such that Su(n, &amp;#8230;) = Sn(&amp;#8230;).  In other words, there is a program that can take as its arguments a program and some other arguments, and return the result of applying the program to the argument list. The universal function is able to mimic any other function.&lt;/p&gt;

&lt;p&gt;You can substitute a value for an argument in a function. If you have a program n taking some input, you can, for any input x, construct a program&lt;/p&gt;

&lt;p&gt;t(n,x) that does the same thing as n, but takes x as an input. In other words, t is a function that calculates the same value as n when n has x as an input.&lt;/p&gt;

&lt;p&gt;The fixed point theorem states that for any computable total function h there exists a program n such that Sn(&amp;#8230;) = Sh(n)(&amp;#8230;). This is read as &amp;#8220;the output of the program with index Sn(&amp;#8230;) is equivalent to the output of the program defined by the number of the program found by taking the number of the program found by taking the universal function acting on n [Sh(n)], and applying that program to the same arguments.&amp;#8221;&lt;/p&gt;

&lt;p&gt;To get from this theorem to quines, consider for a given program t, the program h(t) that prints a listing of t. h is a total computable function.&lt;/p&gt;

&lt;p&gt;The theorem tells us that there exists a program n such that h(n) and n do the same thing, i.e. printing the listing of n. So n prints the listing of n. So for any universal turing machine, there is a function that produces as its output a listing of itself. Therefore, any turing complete programming language is capable of expressing a qunie.&lt;/p&gt;

&lt;p class=&quot;amcode&quot;&gt;Code:&lt;/p&gt;&lt;div class=&quot;codeblock amc_code amc_long&quot;&gt;&lt;table&gt;&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;@array = (&amp;#160;&amp;#160;&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'2320546869732069732061207175696e652070726f6772616d2c20696d706c656d656e74656420696e207065726c2e', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'232054686520726573756c74206f662072756e6e696e6720746869732070726f6772616d20697320746f2070726f647563652061206e65772066696c652077697468207468652073616d6520636f6e74656e74732c', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc6&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'2320776974686f75742c206f6620636f757273652c207265736f7274696e6720746f2073696d706c79207573696e67206120636f70792066756e6374696f6e2e', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc7&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc8&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc9&quot;&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'7072696e7420225c406172726179203d2028095c6e223b',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc0&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'666f7265616368202476616c202840617272617929',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'7b207072696e7420225c745c7427222e2476616c2e22272c222e225c6e223b207d',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc6&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc7&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'7072696e742022090909293b5c6e5c6e223b',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc8&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc9&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc0&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'666f7265616368202476616c202840617272617929',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'7b207072696e74206865785f746f5f6173636969282476616c293b207d',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'737562206865785f746f5f617363696920282429',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc6&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc7&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'7b', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc8&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc9&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'20202020286d792024737472203d20736869667429203d7e20732f285b612d66412d46302d395d7b327d292f63687228686578202431292f65673b', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc0&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'2020202072657475726e20247374723b', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a',&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'7d', &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;'0a'&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;);&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc6&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc7&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;# This is a quine program, implemented in perl.&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc8&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;# The result of running this program is to produce a new file with the same contents,&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc9&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;# without, of course, resorting to simply using a copy function.&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc0&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;print &quot;\@array = (&amp;#160;&amp;#160;\n&quot;;&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;foreach $val (@array)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;{ print &quot;\t\t'&quot;.$val.&quot;',&quot;.&quot;\n&quot;; }&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc6&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;print &quot;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;);\n\n&quot;; &lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc7&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc8&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;foreach $val (@array)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc9&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;{ print hex_to_ascii($val); }&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc0&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc1&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;sub hex_to_ascii ($)&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc2&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;{&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc3&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;(my $str = shift) =~ s/([a-fA-F0-9]{2})/chr(hex $1)/eg;&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_even&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc4&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;return $str;&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr class=&quot;amc_code_odd&quot;&gt;&lt;td class=&quot;amc_line&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;div class=&quot;amc5&quot;&gt;&lt;/div&gt;&lt;/div&gt;&lt;/td&gt;&lt;td&gt;&lt;code&gt;&lt;span class=&quot;amc_default&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=34&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>In mathematics, a fixed point is a value of a function that maps to its self. In other words, x is a fixed point of a function f if f(x) = x.</p>

<p>According to Kleene&#8217;s recursion theorem, fixed points exist in every programming language; i.e. in every programming language, there is at least one program (actually infinitely many, trivially different from each other.) the output of which is an exact duplicate of the program.</p>

<p>Attached you will find a fixed point program written in perl.</p>



<p>The program starts by defining an array of data. The data is actually a hexadecimal encoding of the text of the program itself. This is one of the simplest ways of implementing a quine, as these programs are called.</p>

<p>The data in the array is first treated as simple strings, in order to produce the initial contents of the file.  Then, each line in the array is converted back to its ascii equivalent, producing the lines of code from the program itself.</p>

<p>This may seem trivial to do, but there is a certain level of self-reference buried here that can be hard to get around.</p>

<p>Consider a naive way of implementing a quine in c. You just write a program that produces its own source code right? Well here is a naive attempt:</p>

<p>void main(void) {<br />
      printf("void main(void){ \n");<br />
      printf("printf(\"void main(void){ \\n\");");<br />
      printf("printf(\"printf(\\\"void main(void){ \\\n\\\");\");");<br />
      ..</p>

<p>The problem should be obvious.</p>

<p>We need to print out the function declaration in the body of the function, so the first statement of the function prints out the main declaration with its opening curly brace. But then we need to produce the line that prints out the line containing the function declaration. And then we need a line that produces that line, and so on. We run into an infinite regress, where each line requires that there be a succeeding line to produce it as output.</p>

<p>The way around this problem is represent the entirety of the code in a form that can be manipulated. Then we can use this data twice: first as uninterpreted data that gets spat out, and then as interpreted data that produces the program source code.</p>

<p>I wrote the perl program in a bootstrapped way. First I wrote the &#8220;hex_to_ascii&#8221; function, as well as a &#8220;ascii to hex&#8221; function. I then wrote the initial line declaring the array, the informative comment, and the bits of code to print out the data array uninterpreted, and then interpreted.  I fed all this code through the &#8220;ascii_to_hex&#8221; function, and took its output and placed it into the array at the top of the file. I deleted the &#8220;ascii_to_hex&#8221; function, and it was done.</p>

<p>The gist of it is to write everything you need except for the contents of the array itself. Run all the code through an ascii to hex converter and use that as the data for the array. The result will be a program that produces itself as output.</p>

<p>As I mentioned before, this is a simple example of a quine. They can be much more obscure, or very elegant. For example, this is a classic quine in lisp, which anyone with a passing knowledge of lisp should be able to write or understand:</p>

<p>     ((lambda (x)<br />
       (list x (list (quote quote) x)))<br />
      (quote<br />
         (lambda (x)<br />
           (list x (list (quote quote) x)))))</p>

<p>For those unfamiliar with lisp, I will elaborate.</p>

<p>Lisp treats everything as lists. So to invoke a function, you make a list where the first element of the list is the function you are calling, and the remaining elements are the arguments to the function (which can themselves be lists).</p>

<p>So (+ x y) calls the addition function on the values x and y. Lambda is a special function that essentially defines anonymous one off functions. The syntax of lambda is</p>

<p>(lambda (argument list) (function definition))</p>

<p>Now this whole thing can be the first element of a list, in which case we can define a new function and pass it some data, and throw away the function at the end of the block. This would look like</p>

<p>( (lambda (argument list) (function definition)) arg1 arg2 arg3..)</p>

<p>So the lisp quine works by defining a lambda function that takes its arguments and constructs a list containing the contents of its argument (which is the string &#8220;(lambda (x)(list x (list (quote quote) x))))&#8221; ) plus a second list containing the word &#8220;quote&#8221; (which is a lisp keyword that functions like \ does in c) followed by the contents of x again.</p>

<p><b>A proof of the fixed point theorem</b></p>

<p>First, some definitions.</p>

<p>A computable function is a function that can be computed by some turing machine. A partial function is defined for some subset of its inputs, and a total function is defined for the entire set of possible inputs.</p>

<p>We need to number all possible programs in some way, the details of which are not important. Sn(&#8230;) will refer to the output of the n-th program acting on the input in the parenthesis.</p>

<p>There exists a universal turing machine, u such that Su(n, &#8230;) = Sn(&#8230;).  In other words, there is a program that can take as its arguments a program and some other arguments, and return the result of applying the program to the argument list. The universal function is able to mimic any other function.</p>

<p>You can substitute a value for an argument in a function. If you have a program n taking some input, you can, for any input x, construct a program</p>

<p>t(n,x) that does the same thing as n, but takes x as an input. In other words, t is a function that calculates the same value as n when n has x as an input.</p>

<p>The fixed point theorem states that for any computable total function h there exists a program n such that Sn(&#8230;) = Sh(n)(&#8230;). This is read as &#8220;the output of the program with index Sn(&#8230;) is equivalent to the output of the program defined by the number of the program found by taking the number of the program found by taking the universal function acting on n [Sh(n)], and applying that program to the same arguments.&#8221;</p>

<p>To get from this theorem to quines, consider for a given program t, the program h(t) that prints a listing of t. h is a total computable function.</p>

<p>The theorem tells us that there exists a program n such that h(n) and n do the same thing, i.e. printing the listing of n. So n prints the listing of n. So for any universal turing machine, there is a function that produces as its output a listing of itself. Therefore, any turing complete programming language is capable of expressing a qunie.</p>

<p class="amcode">Code:</p><div class="codeblock amc_code amc_long"><table><tr class="amc_code_odd"><td class="amc_line"><div class="amc1"></div></td><td><code><span class="amc_default">@array = (&#160;&#160;</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc2"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'2320546869732069732061207175696e652070726f6772616d2c20696d706c656d656e74656420696e207065726c2e', </span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc3"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc4"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'232054686520726573756c74206f662072756e6e696e6720746869732070726f6772616d20697320746f2070726f647563652061206e65772066696c652077697468207468652073616d6520636f6e74656e74732c', </span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc5"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc6"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'2320776974686f75742c206f6620636f757273652c207265736f7274696e6720746f2073696d706c79207573696e67206120636f70792066756e6374696f6e2e', </span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc7"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc8"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc9"></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'7072696e7420225c406172726179203d2028095c6e223b',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc0"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc1"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc2"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'666f7265616368202476616c202840617272617929',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc3"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc4"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'7b207072696e7420225c745c7427222e2476616c2e22272c222e225c6e223b207d',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc5"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc6"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc7"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'7072696e742022090909293b5c6e5c6e223b',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc8"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc9"><div class="amc1"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc0"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'666f7265616368202476616c202840617272617929',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc1"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc2"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'7b207072696e74206865785f746f5f6173636969282476616c293b207d',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc3"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc4"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc5"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'737562206865785f746f5f617363696920282429',</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc6"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc7"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'7b', </span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc8"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc9"><div class="amc2"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'20202020286d792024737472203d20736869667429203d7e20732f285b612d66412d46302d395d7b327d292f63687228686578202431292f65673b', </span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc0"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc1"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'2020202072657475726e20247374723b', </span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc2"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a',</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc3"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'7d', </span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc4"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;'0a'</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc5"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;);</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc6"><div class="amc3"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;&#160;&#160;</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc7"><div class="amc3"></div></div></td><td><code><span class="amc_default"># This is a quine program, implemented in perl.</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc8"><div class="amc3"></div></div></td><td><code><span class="amc_default"># The result of running this program is to produce a new file with the same contents,</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc9"><div class="amc3"></div></div></td><td><code><span class="amc_default"># without, of course, resorting to simply using a copy function.</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc0"><div class="amc4"></div></div></td><td><code>&nbsp;</code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc1"><div class="amc4"></div></div></td><td><code><span class="amc_default">print "\@array = (&#160;&#160;\n";</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc2"><div class="amc4"></div></div></td><td><code>&nbsp;</code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc3"><div class="amc4"></div></div></td><td><code><span class="amc_default">foreach $val (@array)</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc4"><div class="amc4"></div></div></td><td><code><span class="amc_default">{ print "\t\t'".$val."',"."\n"; }</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc5"><div class="amc4"></div></div></td><td><code>&nbsp;</code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc6"><div class="amc4"></div></div></td><td><code><span class="amc_default">print "&#160;&#160;&#160;&#160;&#160;&#160;);\n\n"; </span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc7"><div class="amc4"></div></div></td><td><code>&nbsp;</code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc8"><div class="amc4"></div></div></td><td><code><span class="amc_default">foreach $val (@array)</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc9"><div class="amc4"></div></div></td><td><code><span class="amc_default">{ print hex_to_ascii($val); }</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc0"><div class="amc5"></div></div></td><td><code>&nbsp;</code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc1"><div class="amc5"></div></div></td><td><code><span class="amc_default">sub hex_to_ascii ($)</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc2"><div class="amc5"></div></div></td><td><code><span class="amc_default">{</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc3"><div class="amc5"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;(my $str = shift) =~ s/([a-fA-F0-9]{2})/chr(hex $1)/eg;</span></code></td></tr>
<tr class="amc_code_even"><td class="amc_line"><div class="amc4"><div class="amc5"></div></div></td><td><code><span class="amc_default">&#160;&#160;&#160;&#160;return $str;</span></code></td></tr>
<tr class="amc_code_odd"><td class="amc_line"><div class="amc5"><div class="amc5"></div></div></td><td><code><span class="amc_default">}</span></code></td></tr>
</table></div><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=34&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=34&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>The Turing Test and Philosophical Zombies</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=32&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Wed, 19 Sep 2007 18:31:20 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Metaphysics</category>
<category domain="alt">Computer Science</category>
<category domain="main">Philosophy</category>			<guid isPermaLink="false">32@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;At a philosophical discussion last night, we read &lt;a href=&quot;http://www.vanemden.com/books/neals/jipi.html&quot;&gt;&amp;#8220;Jipi and the Paranoid Chip&amp;#8221;&lt;/a&gt; by Neal Stephenson (Which, I just noticed, was posted to reddit 9 days ago, and got 1 up vote and 1 down vote. WTF?). If you&amp;#8217;ve never read anything by him, I suggest you stop right this moment, go out and buy Cryptonomicon, Snowcrash and the Baroque Cycle, and do nothing until you&amp;#8217;ve read them all.&lt;/p&gt;

&lt;p&gt;The story is about a piece of software that was evolved to be indistinguishable from a paranoid schizophrenic. In the course of discussing the plot, someone asked if the paranoid schizophrenic chip would pass the Turing Test, with their inclination being no, it couldn&amp;#8217;t.&lt;/p&gt;



&lt;p&gt;The reason that their instinct was to say &amp;#8220;no&amp;#8221; was that certain speech patterns the chip used seem stilted, and not particularly normal. My response was to point out that PhD-level philosophers don&amp;#8217;t talk like normal humans either, when they start babbling about qualia, sensory apparatus, ect. Just because something doesn&amp;#8217;t use the queen&amp;#8217;s English isn&amp;#8217;t grounds for failing the test, especially when with the added consideration that it is taking a specialized version (I and several others took the position that in the story, the software passes a specialized Turing Test, i.e. one that differentiates between a paranoid schizophrenic human and a computer).&lt;/p&gt;

&lt;p&gt;Reflecting on this further, I find I like the idea of specialized Turing tests, and want to argue that we use them all the time. For example, if I encounter someone who claims to be a computer scientist, I&amp;#8217;ll talk to them and ask them questions that a computer scientist should be able to answer. If they answer satisfactorily, I conclude that they are what they say they are. This is essentially the only means I have of verifying their claim, as I cannot (yet) open up their brain and check to see if they have the knowledge they claim to. A PhD dissertation defense comes to the same thing. Are you really a PhD level human? Etc. and so on, and so forth. The Turing test, as Turing described it, is merely a generalization of something we do all the time.&lt;/p&gt;

&lt;p&gt;Even the captcha at the end of this post is a form of the test, as is obvious if you know what it is an acronym of (Completely Automated Public Turing test to tell Computers and Humans Apart). Are you the sort of entity that can read the letters in the box against the noisy background? The implicit assumption here is, of course, that there is only one type of entity that can do it: humans.&lt;/p&gt;

&lt;p&gt;As I usually do when the subject comes up, I pointed out that the Turing Test is only useful when it is passed. I.e., passing the test means we grant that you are intelligent, but failing the test doesn&amp;#8217;t justify us denying that you are intelligent. Put more succinctly, passing the Turing test is sufficient for us to grant that you are intelligent, but not necessary for us to grant you are intelligent. You can be intelligent and fail the test.&lt;/p&gt;

&lt;p&gt;Philosophers that discount the usefulness of the test are the ones that believe in &lt;a href=&quot;http://en.wikipedia.org/wiki/Philosophical_zombie&quot;&gt;philosophical zombies&lt;/a&gt;, or p-zombies. There are various types of p-zombies, but their common feature is that they lack consciousness. For example, Searle&amp;#8217;s &lt;a href=&quot; http://en.wikipedia.org/wiki/Chinese_room&quot;&gt;Chinese Room argument&lt;/a&gt; (on which I plan write a lengthy post in the near future) is essentially a p-zombie argument. We are asked to imagine an entity which can converse with us in an intelligent manner, but nevertheless lacks consciousness, hence Searle concludes that being able to converse with us, as this theoretical entity does, doesn&amp;#8217;t warrant the conclusion that the entity is conscious. Philosophers like &lt;a href=&quot;http://ase.tufts.edu/cogstud/incbios/dennettd/dennettd.htm&quot;&gt;Dan Dennett&lt;/a&gt; claim that the whole idea of a p-zombie is vacuous, i.e. makes no sense at all. I would tend to agree with him. To do Searle justice, however, I must point out that he insists he is a physicalist, with the added assumption that the matter that makes up the conscious entity is important, i.e. maybe carbon based life forms can be conscious, but silicon ones cannot. Looked at in this light, the Chinese Room argument can be spun either as a defense of dualism, or of Searle&amp;#8217;s brand of physicalism. Since it is Searle&amp;#8217;s argument, we should take it as a defence of his brand of physicalism.&lt;/p&gt;

&lt;p&gt;Other versions of p-zombie arguments would talk about entities that lack certain phenomenal experiences, which philosophers call &lt;a href=&quot;http://en.wikipedia.org/wiki/Qualia&quot;&gt;qualia&lt;/a&gt;. If you shoot a p-zombie, he cries out as if he feels pain, but he really doesn&amp;#8217;t, because there is no consciousness there to do the feeling. The best way I&amp;#8217;ve seen of describing this to laymen is that there is something it is like to be me, i.e. there is a subjective experience of being a particular person. There isn&amp;#8217;t anything it is like to be a p-zombie.&lt;/p&gt;

&lt;p&gt;Dennett and others would claim that you cannot be exactly like a normal human being, and still lack consciousness. Flipped around, they claim that you cannot be unconscious and do the things that humans do. So if we have a machine that passes the turning test, we must conclude that not only is it intelligent, but conscious as well. If this weren&amp;#8217;t the case then it would not mean anything tangible to be conscious. If one can be unconscious and behave exactly the same as a conscious entity, then there is no functional difference between them.&lt;/p&gt;

&lt;p&gt;Zombie arguments are generally used against claims of &lt;a href=&quot;http://en.wikipedia.org/wiki/Physicalism&quot;&gt;phyiscalism&lt;/a&gt;, the position that everything has a physical property, and they support a form of dualism, though not every dualist believes in p-zombies. In the p-zombie cases, the dualism they support is that there are two types of substances in the world: physical substances and mental substances. The Chinese Room argument aims to show that having something that is functionally equivalent to a Chinese language speaker does not entail that it has the proper mental substances to make it conscious. In other words, a simulation of my mind is not conscious, even if my actual mind is.&lt;/p&gt;

&lt;p&gt;The most famous zombie argument, and the origin of the concept, which you cannot help but run into when you start to delve into the philosophy of artificial intelligence, comes from &lt;a href=&quot;http://consc.net/chalmers/&quot;&gt;David Chalmers&lt;/a&gt;. The argument aims to show that physicalism is false.&lt;/p&gt;

&lt;p&gt;The gist of this argument is this: If physicalism is true, there cannot be a world where all the physical facts are the same as ours, AND there are some additional facts (because the physical facts determine all the facts). But we can imagine such a world ,for example, a world where all the people are p-zombies. Therefore, physicalism is false.&lt;/p&gt;

&lt;p&gt;Obviously, I&amp;#8217;ve boiled a lengthy argument down to its skeleton, and probably done it an injustice along the way, but this is its essence. Dennett and others argue that the second claim is false. Such a world could not exist. &lt;/p&gt;

&lt;p&gt;What does all this boil down to? That in some sense the Turning Test is an acid test about people&amp;#8217;s opinions regarding philosophy of mind. If you believe p-zombies are possible, then you must conclude that passing the Turing Test warrants a different belief about an entity than for someone who does not believe in p-zombies. &lt;/p&gt;
&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=32&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>At a philosophical discussion last night, we read <a href="http://www.vanemden.com/books/neals/jipi.html">&#8220;Jipi and the Paranoid Chip&#8221;</a> by Neal Stephenson (Which, I just noticed, was posted to reddit 9 days ago, and got 1 up vote and 1 down vote. WTF?). If you&#8217;ve never read anything by him, I suggest you stop right this moment, go out and buy Cryptonomicon, Snowcrash and the Baroque Cycle, and do nothing until you&#8217;ve read them all.</p>

<p>The story is about a piece of software that was evolved to be indistinguishable from a paranoid schizophrenic. In the course of discussing the plot, someone asked if the paranoid schizophrenic chip would pass the Turing Test, with their inclination being no, it couldn&#8217;t.</p>



<p>The reason that their instinct was to say &#8220;no&#8221; was that certain speech patterns the chip used seem stilted, and not particularly normal. My response was to point out that PhD-level philosophers don&#8217;t talk like normal humans either, when they start babbling about qualia, sensory apparatus, ect. Just because something doesn&#8217;t use the queen&#8217;s English isn&#8217;t grounds for failing the test, especially when with the added consideration that it is taking a specialized version (I and several others took the position that in the story, the software passes a specialized Turing Test, i.e. one that differentiates between a paranoid schizophrenic human and a computer).</p>

<p>Reflecting on this further, I find I like the idea of specialized Turing tests, and want to argue that we use them all the time. For example, if I encounter someone who claims to be a computer scientist, I&#8217;ll talk to them and ask them questions that a computer scientist should be able to answer. If they answer satisfactorily, I conclude that they are what they say they are. This is essentially the only means I have of verifying their claim, as I cannot (yet) open up their brain and check to see if they have the knowledge they claim to. A PhD dissertation defense comes to the same thing. Are you really a PhD level human? Etc. and so on, and so forth. The Turing test, as Turing described it, is merely a generalization of something we do all the time.</p>

<p>Even the captcha at the end of this post is a form of the test, as is obvious if you know what it is an acronym of (Completely Automated Public Turing test to tell Computers and Humans Apart). Are you the sort of entity that can read the letters in the box against the noisy background? The implicit assumption here is, of course, that there is only one type of entity that can do it: humans.</p>

<p>As I usually do when the subject comes up, I pointed out that the Turing Test is only useful when it is passed. I.e., passing the test means we grant that you are intelligent, but failing the test doesn&#8217;t justify us denying that you are intelligent. Put more succinctly, passing the Turing test is sufficient for us to grant that you are intelligent, but not necessary for us to grant you are intelligent. You can be intelligent and fail the test.</p>

<p>Philosophers that discount the usefulness of the test are the ones that believe in <a href="http://en.wikipedia.org/wiki/Philosophical_zombie">philosophical zombies</a>, or p-zombies. There are various types of p-zombies, but their common feature is that they lack consciousness. For example, Searle&#8217;s <a href="http://www.desuntcetera.com http://en.wikipedia.org/wiki/Chinese_room">Chinese Room argument</a> (on which I plan write a lengthy post in the near future) is essentially a p-zombie argument. We are asked to imagine an entity which can converse with us in an intelligent manner, but nevertheless lacks consciousness, hence Searle concludes that being able to converse with us, as this theoretical entity does, doesn&#8217;t warrant the conclusion that the entity is conscious. Philosophers like <a href="http://ase.tufts.edu/cogstud/incbios/dennettd/dennettd.htm">Dan Dennett</a> claim that the whole idea of a p-zombie is vacuous, i.e. makes no sense at all. I would tend to agree with him. To do Searle justice, however, I must point out that he insists he is a physicalist, with the added assumption that the matter that makes up the conscious entity is important, i.e. maybe carbon based life forms can be conscious, but silicon ones cannot. Looked at in this light, the Chinese Room argument can be spun either as a defense of dualism, or of Searle&#8217;s brand of physicalism. Since it is Searle&#8217;s argument, we should take it as a defence of his brand of physicalism.</p>

<p>Other versions of p-zombie arguments would talk about entities that lack certain phenomenal experiences, which philosophers call <a href="http://en.wikipedia.org/wiki/Qualia">qualia</a>. If you shoot a p-zombie, he cries out as if he feels pain, but he really doesn&#8217;t, because there is no consciousness there to do the feeling. The best way I&#8217;ve seen of describing this to laymen is that there is something it is like to be me, i.e. there is a subjective experience of being a particular person. There isn&#8217;t anything it is like to be a p-zombie.</p>

<p>Dennett and others would claim that you cannot be exactly like a normal human being, and still lack consciousness. Flipped around, they claim that you cannot be unconscious and do the things that humans do. So if we have a machine that passes the turning test, we must conclude that not only is it intelligent, but conscious as well. If this weren&#8217;t the case then it would not mean anything tangible to be conscious. If one can be unconscious and behave exactly the same as a conscious entity, then there is no functional difference between them.</p>

<p>Zombie arguments are generally used against claims of <a href="http://en.wikipedia.org/wiki/Physicalism">phyiscalism</a>, the position that everything has a physical property, and they support a form of dualism, though not every dualist believes in p-zombies. In the p-zombie cases, the dualism they support is that there are two types of substances in the world: physical substances and mental substances. The Chinese Room argument aims to show that having something that is functionally equivalent to a Chinese language speaker does not entail that it has the proper mental substances to make it conscious. In other words, a simulation of my mind is not conscious, even if my actual mind is.</p>

<p>The most famous zombie argument, and the origin of the concept, which you cannot help but run into when you start to delve into the philosophy of artificial intelligence, comes from <a href="http://consc.net/chalmers/">David Chalmers</a>. The argument aims to show that physicalism is false.</p>

<p>The gist of this argument is this: If physicalism is true, there cannot be a world where all the physical facts are the same as ours, AND there are some additional facts (because the physical facts determine all the facts). But we can imagine such a world ,for example, a world where all the people are p-zombies. Therefore, physicalism is false.</p>

<p>Obviously, I&#8217;ve boiled a lengthy argument down to its skeleton, and probably done it an injustice along the way, but this is its essence. Dennett and others argue that the second claim is false. Such a world could not exist. </p>

<p>What does all this boil down to? That in some sense the Turning Test is an acid test about people&#8217;s opinions regarding philosophy of mind. If you believe p-zombies are possible, then you must conclude that passing the Turing Test warrants a different belief about an entity than for someone who does not believe in p-zombies. </p>
<div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=32&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=32&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Micro/Macro Evolution and the Paradox of the Heap</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=31&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Fri, 14 Sep 2007 16:17:11 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Musings</category>
<category domain="alt">Logic</category>
<category domain="main">Vagueness</category>
<category domain="alt">Evolution</category>			<guid isPermaLink="false">31@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;The paradox of the heap, also known as the Sorities Paradox (from the Greek word for heap), is a paradox revolving around the problem of vagueness.&lt;/p&gt;

&lt;p&gt;In its classical formulation, the paradox is expressed as follows:&lt;/p&gt;

&lt;p&gt;One grain of sand is not a heap.&lt;br /&gt;
If one grain of sand is not a heap, adding one grain of sand will not make it a heap.&lt;br /&gt;
So two grains of sand are not a heap.&lt;br /&gt;
So three grains of sand do not make a heap.&lt;br /&gt;
&amp;#8230;&lt;br /&gt;
X grains of sand do not make a heap.&lt;br /&gt;
Therefore, 10,000 grains of sand do not make a heap.&lt;/p&gt;

&lt;p&gt;The form of this argument boils down to:&lt;/p&gt;

&lt;p&gt;X grains of sand are not a heap.&lt;br /&gt;
If X grains of sand are not a heap, adding 1 grain of sand will not make it a heap.&lt;br /&gt;
(Some arbitrary large number of grains of sand) do not make a heap.&lt;/p&gt;



&lt;p&gt;The paradox also works in the other direction, where we start with a certain number that everyone acknowledges makes a heap, and point out that removing one grain doesn&amp;#8217;t turn it into a non-heap, hence we still have a heap with only one grain left (or no grains left, if we really want to be absurd).&lt;/p&gt;

&lt;p&gt;The heart of the matter is the problem of vagueness. In the technical/philosophical sense of the word, a concept is vague when there are cases where it is not clear whether or not the concept holds. In the example of the heap, this comes up because we don&amp;#8217;t know where to draw the dividing line between &amp;#8220;heap&amp;#8221; and &amp;#8220;not heap.&amp;#8221; &lt;/p&gt;

&lt;p&gt;Many fixes have been proposed. These range from setting arbitrary limits, to multi-valued logics. All the fixes have deep problems of their own, if they even avoid the sorities problem at all. For example, if you use a multi-valued logic to distinguish between &amp;#8220;heap&amp;#8221;, &amp;#8220;non-heap&amp;#8221;, and &amp;#8220;indeterminate&amp;#8221; you now have two sorities problems for the price of one. The boundary between &amp;#8220;heap&amp;#8221; and &amp;#8220;indeterminate&amp;#8221; is just as fuzzy as the original heap/non-heap problem it was supposed to fix. The same holds for the indeterminate/non-heap boundary.&lt;/p&gt;

&lt;p&gt;Similar problems attend to baldness (just replace grains of sand with hairs, and heap with bald), human life (a single celled fertilized egg is not a human, etc.), race (old slaves laws in the USA would legislate that you were African American if you had one as a great grandparent), etc. In a more technical sense, the problem attends to concepts such as provable, satisfiable, etc. As with many things, the problem of vagueness is all around us and jumps and once we become aware of its existence, we see it everywhere.&lt;/p&gt;

&lt;p&gt;One of the places I&amp;#8217;ve noticed it crops up is a certain argument of the creationists.&lt;/p&gt;

&lt;p&gt;Some creationists acknowledge that &amp;#8220;micro&amp;#8221; evolution occurs, but deny that &amp;#8220;macro&amp;#8221; evolution does. Biologists in general deny that such a distinction can be made. Defined loosely, micro-evolution is minor changes in an organism, i.e. small changes that do not drastically alter the organism. For example, a mutant human might have orange hair, with the gene for the coloration being able to propagate through sexual reproduction.&lt;/p&gt;

&lt;p&gt;Macro-evolution, on the other hand, is much more drastic changes, to the point where you would deny the resulting creature is of the same species as the parent. For example, a mutant human might have 3 fully functioning eyes, and be able to pass on the gene for this structural change. Or they might have a skull shaped more like an orangutan than a normal human. &lt;/p&gt;

&lt;p&gt;The gist of this is that (creationist claim) micro evolution still leaves you with a single species, where as macro-evolution is necessary for the diversification of species to occur. They acknowledge that micro-evolution occurs, but deny that macro-evolution occurs.&lt;/p&gt;

&lt;p&gt;If we unpack that just a small bit, we see those he creationists are using a sorities argument.  It goes like this.&lt;/p&gt;

&lt;p&gt;If you take a dog, and make a minor change (micro-evolution), it is still a dog. If you&amp;#8217;ve made X minor changes to the dog, and make one more change, it is still a dog. So no number of minor changes to the dog will result in a non-dog. &lt;/p&gt;

&lt;p&gt;To really drive home the absurdity of this argument, lets jump back to a sorities argument for a second. Take myself for example. If you replace one molecule of my body with a molecule of scrambled eggs, then I&amp;#8217;m still me, right? So if you&amp;#8217;ve replaced X number of molecules of me with scrambled eggs, and you replace one more, then I&amp;#8217;m still me. So I&amp;#8217;m still me when you&amp;#8217;ve replaced all of my molecules with scrambled eggs&amp;#8230;.?&lt;/p&gt;

&lt;p&gt;This argument is obviously fallacious. The problem is not that there is no dividing line between me and scrambled eggs; the problem is that it is not so much a line as a hazy area, the boundaries of which seem to be impossible to pin down precisely. &lt;/p&gt;

&lt;p&gt;Getting back to the creationists, the problem with their argument is it is denying the simple claim that lots of small changes add up to big changes. I take the dog and I shorten the snout a tiny bit, maybe a millimeter. And then I do it again&amp;#8230; and again&amp;#8230; Then at some point, I modify the tail to give a little more control over it&amp;#8230; and then a little more&amp;#8230; Then I make minor changes to the eyes&amp;#8230;&lt;/p&gt;

&lt;p&gt;The creationists will insist (if they want to be consistent, anyway) at every step of the way that I still have a dog. But at some point, my &amp;#8220;dog&amp;#8221; starts looking a lot like a cat. At some further point, my &amp;#8220;dog&amp;#8221; is physically indistinguishable from a house cat. Somewhere in this sequence, the creature in question crossed a boundary from &amp;#8220;more like a dog&amp;#8221; to &amp;#8220;more like a cat.&amp;#8221; Finally, it cross another boundary and becomes a cat in truth. But as I&amp;#8217;ve been belaboring, these point are very vague, and cannot be pinned down precisely. &lt;/p&gt;

&lt;p&gt;A tangential argument that some creationists offer, which I will address here because it can be used against my hypothetical, is that there is no sequence of changes can turn a dog into a cat. This seems to me to be trivially and obviously false, but I believe in evolution, and draw my argument from it, so it is really of limited usefulness. &lt;/p&gt;

&lt;p&gt;Cats and dogs are both mammals, so they descend from a common ancestor. Starting from that ancestor, there were two sequences of changes, one that turned the ancestor into a dog, and one into a cat. So there must exist a sequence of changes that turns a dog into a cat. That sequence is this: Take all the changes that turned the ancestor into the dog, in reverse order. I.e., undo the last change, then the change before that, etc., until you are back at the ancestor. Then apply the changes that took the ancestor to the cat. QED.&lt;/p&gt;

&lt;div style=&quot;float:right; clear:both; margin:5px;&quot;&gt;
		
&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-6794360547466133&quot;;
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = &quot;468x60_as&quot;;
google_ad_type = &quot;text_image&quot;;
google_ad_channel = &quot;&quot;;
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
  src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;

&lt;/div&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=31&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>The paradox of the heap, also known as the Sorities Paradox (from the Greek word for heap), is a paradox revolving around the problem of vagueness.</p>

<p>In its classical formulation, the paradox is expressed as follows:</p>

<p>One grain of sand is not a heap.<br />
If one grain of sand is not a heap, adding one grain of sand will not make it a heap.<br />
So two grains of sand are not a heap.<br />
So three grains of sand do not make a heap.<br />
&#8230;<br />
X grains of sand do not make a heap.<br />
Therefore, 10,000 grains of sand do not make a heap.</p>

<p>The form of this argument boils down to:</p>

<p>X grains of sand are not a heap.<br />
If X grains of sand are not a heap, adding 1 grain of sand will not make it a heap.<br />
(Some arbitrary large number of grains of sand) do not make a heap.</p>



<p>The paradox also works in the other direction, where we start with a certain number that everyone acknowledges makes a heap, and point out that removing one grain doesn&#8217;t turn it into a non-heap, hence we still have a heap with only one grain left (or no grains left, if we really want to be absurd).</p>

<p>The heart of the matter is the problem of vagueness. In the technical/philosophical sense of the word, a concept is vague when there are cases where it is not clear whether or not the concept holds. In the example of the heap, this comes up because we don&#8217;t know where to draw the dividing line between &#8220;heap&#8221; and &#8220;not heap.&#8221; </p>

<p>Many fixes have been proposed. These range from setting arbitrary limits, to multi-valued logics. All the fixes have deep problems of their own, if they even avoid the sorities problem at all. For example, if you use a multi-valued logic to distinguish between &#8220;heap&#8221;, &#8220;non-heap&#8221;, and &#8220;indeterminate&#8221; you now have two sorities problems for the price of one. The boundary between &#8220;heap&#8221; and &#8220;indeterminate&#8221; is just as fuzzy as the original heap/non-heap problem it was supposed to fix. The same holds for the indeterminate/non-heap boundary.</p>

<p>Similar problems attend to baldness (just replace grains of sand with hairs, and heap with bald), human life (a single celled fertilized egg is not a human, etc.), race (old slaves laws in the USA would legislate that you were African American if you had one as a great grandparent), etc. In a more technical sense, the problem attends to concepts such as provable, satisfiable, etc. As with many things, the problem of vagueness is all around us and jumps and once we become aware of its existence, we see it everywhere.</p>

<p>One of the places I&#8217;ve noticed it crops up is a certain argument of the creationists.</p>

<p>Some creationists acknowledge that &#8220;micro&#8221; evolution occurs, but deny that &#8220;macro&#8221; evolution does. Biologists in general deny that such a distinction can be made. Defined loosely, micro-evolution is minor changes in an organism, i.e. small changes that do not drastically alter the organism. For example, a mutant human might have orange hair, with the gene for the coloration being able to propagate through sexual reproduction.</p>

<p>Macro-evolution, on the other hand, is much more drastic changes, to the point where you would deny the resulting creature is of the same species as the parent. For example, a mutant human might have 3 fully functioning eyes, and be able to pass on the gene for this structural change. Or they might have a skull shaped more like an orangutan than a normal human. </p>

<p>The gist of this is that (creationist claim) micro evolution still leaves you with a single species, where as macro-evolution is necessary for the diversification of species to occur. They acknowledge that micro-evolution occurs, but deny that macro-evolution occurs.</p>

<p>If we unpack that just a small bit, we see those he creationists are using a sorities argument.  It goes like this.</p>

<p>If you take a dog, and make a minor change (micro-evolution), it is still a dog. If you&#8217;ve made X minor changes to the dog, and make one more change, it is still a dog. So no number of minor changes to the dog will result in a non-dog. </p>

<p>To really drive home the absurdity of this argument, lets jump back to a sorities argument for a second. Take myself for example. If you replace one molecule of my body with a molecule of scrambled eggs, then I&#8217;m still me, right? So if you&#8217;ve replaced X number of molecules of me with scrambled eggs, and you replace one more, then I&#8217;m still me. So I&#8217;m still me when you&#8217;ve replaced all of my molecules with scrambled eggs&#8230;.?</p>

<p>This argument is obviously fallacious. The problem is not that there is no dividing line between me and scrambled eggs; the problem is that it is not so much a line as a hazy area, the boundaries of which seem to be impossible to pin down precisely. </p>

<p>Getting back to the creationists, the problem with their argument is it is denying the simple claim that lots of small changes add up to big changes. I take the dog and I shorten the snout a tiny bit, maybe a millimeter. And then I do it again&#8230; and again&#8230; Then at some point, I modify the tail to give a little more control over it&#8230; and then a little more&#8230; Then I make minor changes to the eyes&#8230;</p>

<p>The creationists will insist (if they want to be consistent, anyway) at every step of the way that I still have a dog. But at some point, my &#8220;dog&#8221; starts looking a lot like a cat. At some further point, my &#8220;dog&#8221; is physically indistinguishable from a house cat. Somewhere in this sequence, the creature in question crossed a boundary from &#8220;more like a dog&#8221; to &#8220;more like a cat.&#8221; Finally, it cross another boundary and becomes a cat in truth. But as I&#8217;ve been belaboring, these point are very vague, and cannot be pinned down precisely. </p>

<p>A tangential argument that some creationists offer, which I will address here because it can be used against my hypothetical, is that there is no sequence of changes can turn a dog into a cat. This seems to me to be trivially and obviously false, but I believe in evolution, and draw my argument from it, so it is really of limited usefulness. </p>

<p>Cats and dogs are both mammals, so they descend from a common ancestor. Starting from that ancestor, there were two sequences of changes, one that turned the ancestor into a dog, and one into a cat. So there must exist a sequence of changes that turns a dog into a cat. That sequence is this: Take all the changes that turned the ancestor into the dog, in reverse order. I.e., undo the last change, then the change before that, etc., until you are back at the ancestor. Then apply the changes that took the ancestor to the cat. QED.</p>

<div style="float:right; clear:both; margin:5px;">
		
<script type="text/javascript"><!--
google_ad_client = "pub-6794360547466133";
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = "468x60_as";
google_ad_type = "text_image";
google_ad_channel = "";
//-->
</script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>

</div><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=31&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=31&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>SoLow and the Nash Equilibrium</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=30&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Thu, 06 Sep 2007 15:24:23 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Musings</category>
<category domain="main">Mathematics</category>			<guid isPermaLink="false">30@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;You&amp;#8217;ll have to forgive me, as the first part of this is reconstructed from memory, from a paper I read several months ago.&lt;/p&gt;

&lt;p&gt;Lets do a little thought experiment.&lt;/p&gt;

&lt;p&gt;You are an archaeologist. You and your partner are returning from a dig in a foreign country, and each of you has an identical artifact from the dig among your luggage, the only ones of their kind ever found. During the flight, both of your artifacts get damaged. The manager of the airline wants to reimburse you for the damage, but is faced with the problem that, being unique, there is obviously no established value of the objects.&lt;/p&gt;

&lt;p&gt;However, he is a clever guy, and realizes he can use your greed to determine a fair value. He sets an upper limit of compensation at $100. He then states that, he will ask each of you to secretly tell him the value of the objects. He will assume that the value of the object is the lower amount told to him. To reward the honest person, he will give them twice the value, and to punish the greedy person, he will give them half the value, rounded up to the nearest dollar. If you both tell him the same amount, you each get that amount.&lt;/p&gt;

&lt;p&gt;What should you tell him to maximize your GUARANTEED payoff?&lt;/p&gt;

&lt;p&gt;The answer is $1.&lt;/p&gt;

&lt;p&gt;The reasoning that leads to $1 is this. You might both say $100 (and I&amp;#8217;ll address this in a moment), in which case you each get $100. But then you realize that if you say $99 while your companion says $100, you will instead get $149. So you should say $99. But wait a moment. Your companion is just as smart as you, and so he has realized the same thing (that he should say $99 in hopes that you say $100). So to out bid him, you really have to say $98, and get a $148 payoff. But wait a moment! He&amp;#8217;ll realize this as well!&lt;/p&gt;

&lt;p&gt;This process will continue until you hit $1, at which point there is no reason to go go lower. If you both say $1, you both get $1. If you say $1 and he says a higher number, you get $2, and he gets $1. If he says $1, and you say a higher number, he gets $2 and you get $1.&lt;/p&gt;

&lt;p&gt;So your response to maximize your guaranteed payoff is $1.&lt;/p&gt;

&lt;p&gt;Now, i know some people will say &amp;#8220;Why not just say $100 and hope for the best?&amp;#8221; The reason not to is that the way the problem is described, it is asking what is the highest payout you can assure yourself of, and what number do you say to get it. Economists and game theorists like to pretend we are perfectly rational, and they assume that a perfectly rational individual will want to maximize their guaranteed payout, not risk loosing everything in the hopes of a big gain.&lt;/p&gt;

&lt;p&gt;The technical name for the $1 position is the Nash Equilibrium. Essentially, the Nash Equilibrium is a set of strategies in a game where no player does any better by changing his strategy unilaterally. In the above example, lets say you had decided on saying $100, but were then told that your companion is going to say $99. You would want to change your strategy to $98. The point at which you don&amp;#8217;t change your strategy based on what the other player does is $1. So the Nash Equilibrium in the above example is $1, and in a certain sense is the most &amp;#8220;rational&amp;#8221; response.&lt;/p&gt;

&lt;p&gt;What is the point of all this setup?&lt;/p&gt;

&lt;p&gt;Well, recently I came across a website called &lt;a href=&quot;http://www.solow.com&quot;&gt;SoLow&lt;/a&gt;. SoLow is an auction site with a twist: the lowest unique bid wins.&lt;/p&gt;

&lt;p&gt;For example, lets say they are auctioning off a nice shiny new LCD television. Lets say that 6 people bid on it, with their bids being $0.01, $0.01, $0.03, $0.03, $50 and $100.00. The person who bid $50 wins the auction. The people who bid $0.01 loose because though they bid low, they didn&amp;#8217;t bid unique. Same for those who bid $0.03. The $100 bid was unique, but not the lowest unique bid.&lt;/p&gt;

&lt;p&gt;I think the similarities to this bid process and the above thought experiment are pretty clear.&lt;/p&gt;

&lt;p&gt;Obviously, since no one is going to bid more than the lowest price they can find on the net for the item in question, we have a definite upper bound on the bids. But what about a lower bound? Should we even bother to bid $0.01? Surely everyone will bid $0.01, so there is no point in doing so. But, on the other hand, maybe everyone else came to the same conclusion, so we can outsmart them all by bidding it!&lt;/p&gt;

&lt;p&gt;Its a fairly interesting system, and I am curious about the average price items go for in terms of a percentage of retail price. Where is that magic sweet spot between enough of a discount to make it worth while, but high enough to bypass all the &amp;#8220;obvious&amp;#8221; low bids? Furthermore, is there a Nash Equilibrium for this game? There has to be, as it has been proven (by Nash) that such a strategy must exist for all finite games with any number of players. Before Nash, it had been shown to hold in two player, zero sum games.&lt;/p&gt;

&lt;p&gt;But I have difficulty seeing how this can hold for the auction. Any player who doesn&amp;#8217;t have the lowest unique bid will want to change his bid when he discovers that fact. By definition, only one player can have the lowest, unique bid, so every other player would want to replace his bid if he knew everyone else&amp;#8217;s bids. So the game is inherently unstable, and the only way to &amp;#8220;win&amp;#8221; is to be holding the lowest unique bid when the clock runs out.&lt;/p&gt;

&lt;p&gt;Maybe there is a technical detail to the Nash Equilibrium i am missing, and it doesn&amp;#8217;t actually hold for the auction. I&amp;#8217;ll update this post if i become more enlightened.&lt;/p&gt;

&lt;p&gt;Update:&lt;/p&gt;

&lt;p&gt;After talking about this with a friend, I realized as I was walking back to my office afterward that SoLow does indeed have a Nash Equilibrium, and that in the course of our conversation, we had skirted it several times.&lt;/p&gt;

&lt;p&gt;Consider it this way. SoLow has a time limit, so what happens is that bidding starts at $0.01 and works upwards. At some point, the auction expires and someone wins. But what if there were no time limit, and bidding continues until no one wants to change their bid?&lt;/p&gt;

&lt;p&gt;Then the game ends when the Nash Equilibrium is reached, as the NE is defined to be the point where no one would change their bid if they knew what everyone else was bidding. So where would the game end?&lt;/p&gt;

&lt;p&gt;The game would end when one person bids the exact retail value of the item, all lower bids already having been used by multiple people. As mentioned above, he won&amp;#8217;t change his bid because he is already winning, and everyone else will just go elsewhere for the item in question. This, then, is the NE for SoLow.&lt;/p&gt;

&lt;p&gt;This still leaves the interesting question as to whether we should say SoLow is depending on peoples greed to make money (i.e., the price of the item will be driven up because greedy people will fill in all the stupid low bids, like $0.01) or if it is depending on peoples rationality to make money (i.e., people will bid a reasonable amount, in the knowledge that the idiots will outbid each other in the low end). Maybe both?&lt;/p&gt;

&lt;p&gt;An interesting repercussion of the fact that the Nash Equilibrium is as stated above is that SoLow can basically count on many items not going for a stupidly cheap amount. If the NE was at $1, for example, the company would obviously fold in short order (if this was their only revenue source). It only works &lt;i&gt;because&lt;/i&gt; the NE is essentially selling the item at fair market value.&lt;/p&gt;

&lt;div style=&quot;float:right; clear:both; margin:5px;&quot;&gt;
		
&lt;script type=&quot;text/javascript&quot;&gt;&lt;!--
google_ad_client = &quot;pub-6794360547466133&quot;;
google_ad_width = 468;
google_ad_height = 60;
google_ad_format = &quot;468x60_as&quot;;
google_ad_type = &quot;text_image&quot;;
google_ad_channel = &quot;&quot;;
//--&gt;
&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;
  src=&quot;http://pagead2.googlesyndication.com/pagead/show_ads.js&quot;&gt;
&lt;/script&gt;

&lt;/div&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=30&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>You&#8217;ll have to forgive me, as the first part of this is reconstructed from memory, from a paper I read several months ago.</p>

<p>Lets do a little thought experiment.</p>

<p>You are an archaeologist. You and your partner are returning from a dig in a foreign country, and each of you has an identical artifact from the dig among your luggage, the only ones of their kind ever found. During the flight, both of your artifacts get damaged. The manager of the airline wants to reimburse you for the damage, but is faced with the problem that, being unique, there is obviously no established value of the objects.</p>

<p>However, he is a clever guy, and realizes he can use your greed to determine a fair value. He sets an upper limit of compensation at $100. He then states that, he will ask each of you to secretly tell him the value of the objects. He will assume that the value of the object is the lower amount told to him. To reward the honest person, he will give them twice the value, and to punish the greedy person, he will give them half the value, rounded up to the nearest dollar. If you both tell him the same amount, you each get that amount.</p>

<p>What should you tell him to maximize your GUARANTEED payoff?</p>

<p>The answer is $1.</p>

<p>The reasoning that leads to $1 is this. You might both say $100 (and I&#8217;ll address this in a moment), in which case you each get $100. But then you realize that if you say $99 while your companion says $100, you will instead get $149. So you should say $99. But wait a moment. Your companion is just as smart as you, and so he has realized the same thing (that he should say $99 in hopes that you say $100). So to out bid him, you really have to say $98, and get a $148 payoff. But wait a moment! He&#8217;ll realize this as well!</p>

<p>This process will continue until you hit $1, at which point there is no reason to go go lower. If you both say $1, you both get $1. If you say $1 and he says a higher number, you get $2, and he gets $1. If he says $1, and you say a higher number, he gets $2 and you get $1.</p>

<p>So your response to maximize your guaranteed payoff is $1.</p>

<p>Now, i know some people will say &#8220;Why not just say $100 and hope for the best?&#8221; The reason not to is that the way the problem is described, it is asking what is the highest payout you can assure yourself of, and what number do you say to get it. Economists and game theorists like to pretend we are perfectly rational, and they assume that a perfectly rational individual will want to maximize their guaranteed payout, not risk loosing everything in the hopes of a big gain.</p>

<p>The technical name for the $1 position is the Nash Equilibrium. Essentially, the Nash Equilibrium is a set of strategies in a game where no player does any better by changing his strategy unilaterally. In the above example, lets say you had decided on saying $100, but were then told that your companion is going to say $99. You would want to change your strategy to $98. The point at which you don&#8217;t change your strategy based on what the other player does is $1. So the Nash Equilibrium in the above example is $1, and in a certain sense is the most &#8220;rational&#8221; response.</p>

<p>What is the point of all this setup?</p>

<p>Well, recently I came across a website called <a href="http://www.solow.com">SoLow</a>. SoLow is an auction site with a twist: the lowest unique bid wins.</p>

<p>For example, lets say they are auctioning off a nice shiny new LCD television. Lets say that 6 people bid on it, with their bids being $0.01, $0.01, $0.03, $0.03, $50 and $100.00. The person who bid $50 wins the auction. The people who bid $0.01 loose because though they bid low, they didn&#8217;t bid unique. Same for those who bid $0.03. The $100 bid was unique, but not the lowest unique bid.</p>

<p>I think the similarities to this bid process and the above thought experiment are pretty clear.</p>

<p>Obviously, since no one is going to bid more than the lowest price they can find on the net for the item in question, we have a definite upper bound on the bids. But what about a lower bound? Should we even bother to bid $0.01? Surely everyone will bid $0.01, so there is no point in doing so. But, on the other hand, maybe everyone else came to the same conclusion, so we can outsmart them all by bidding it!</p>

<p>Its a fairly interesting system, and I am curious about the average price items go for in terms of a percentage of retail price. Where is that magic sweet spot between enough of a discount to make it worth while, but high enough to bypass all the &#8220;obvious&#8221; low bids? Furthermore, is there a Nash Equilibrium for this game? There has to be, as it has been proven (by Nash) that such a strategy must exist for all finite games with any number of players. Before Nash, it had been shown to hold in two player, zero sum games.</p>

<p>But I have difficulty seeing how this can hold for the auction. Any player who doesn&#8217;t have the lowest unique bid will want to change his bid when he discovers that fact. By definition, only one player can have the lowest, unique bid, so every other player would want to replace his bid if he knew everyone else&#8217;s bids. So the game is inherently unstable, and the only way to &#8220;win&#8221; is to be holding the lowest unique bid when the clock runs out.</p>

<p>Maybe there is a technical detail to the Nash Equilibrium i am missing, and it doesn&#8217;t actually hold for the auction. I&#8217;ll update this post if i become more enlightened.</p>

<p>Update:</p>

<p>After talking about this with a friend, I realized as I was walking back to my office afterward that SoLow does indeed have a Nash Equilibrium, and that in the course of our conversation, we had skirted it several times.</p>

<p>Consider it this way. SoLow has a time limit, so what happens is that bidding starts at $0.01 and works upwards. At some point, the auction expires and someone wins. But what if there were no time limit, and bidding continues until no one wants to change their bid?</p>

<p>Then the game ends when the Nash Equilibrium is reached, as the NE is defined to be the point where no one would change their bid if they knew what everyone else was bidding. So where would the game end?</p>

<p>The game would end when one person bids the exact retail value of the item, all lower bids already having been used by multiple people. As mentioned above, he won&#8217;t change his bid because he is already winning, and everyone else will just go elsewhere for the item in question. This, then, is the NE for SoLow.</p>

<p>This still leaves the interesting question as to whether we should say SoLow is depending on peoples greed to make money (i.e., the price of the item will be driven up because greedy people will fill in all the stupid low bids, like $0.01) or if it is depending on peoples rationality to make money (i.e., people will bid a reasonable amount, in the knowledge that the idiots will outbid each other in the low end). Maybe both?</p>

<p>An interesting repercussion of the fact that the Nash Equilibrium is as stated above is that SoLow can basically count on many items not going for a stupidly cheap amount. If the NE was at $1, for example, the company would obviously fold in short order (if this was their only revenue source). It only works <i>because</i> the NE is essentially selling the item at fair market value.</p>

<!-- Adsense block #4 not displayed since it exceed the limit of 3 --><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=30&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=30&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Must AIs be embodied?</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=29&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Thu, 30 Aug 2007 14:38:47 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Musings</category>
<category domain="main">Computer Science</category>			<guid isPermaLink="false">29@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;&lt;a href=&quot;http://scienceblogs.com/cognitivedaily/2007/08/does_an_artificial_intelligenc.php&quot;&gt;Cognitive Daily&lt;/a&gt; has an interesting discussion going on about whether or not an artificial intelligence requires a body. There are some interesting posts in the discussion, but as with most of these discussions, it quickly turned into a matter of &amp;#8220;what does it mean to be intelligent?&amp;#8221;&lt;/p&gt;

&lt;p&gt;To drop my two cents in on the matter, I must say that the answer to the question is obviously yes; but we have to define &amp;#8220;body.&amp;#8221;&lt;/p&gt;



&lt;p&gt;If you define body to be a physical object in the world that is capable of moving around and interacting with reality, the answer is no. If, on the other hand, you define &amp;#8220;body&amp;#8221; simply as &amp;#8220;a means of obtaining input for the mental processes to act on,&amp;#8221; then by all means the answer is yes.&lt;/p&gt;

&lt;p&gt;My point is that, while intelligence needs some sort of sensory input to act on (else what the hell would it mean for it to be intelligent?), we shouldn&amp;#8217;t be physical chauvinists about where those sensory inputs come from. They can be byte streams from a network interface, the pixels of a camera, or the electrical signals from a piece of meat sensitive to touch.&lt;/p&gt;

&lt;p&gt;Now, we can modify this question and ask &amp;#8220;can an artificial intelligence have human like intelligence without a body?&amp;#8221;&lt;/p&gt;

&lt;p&gt;One comment in particular seems to answer this formulation of the question in the negative:&lt;/p&gt;

&lt;p&gt;&amp;#8220;Can an AI understand the written or spoken word &amp;#8220;ball&amp;#8221; without associating it with the visual patterns of seeing various balls, the feeling (real or virtual) of holding one, the intuitive physics of throwing, bouncing, and catching one, the concept of games, other spherical objects, etc.? &lt;/p&gt;

&lt;p&gt;&amp;#8230;.&lt;/p&gt;

&lt;p&gt;I believe that computational AI is possible (along with machine consciousness) and that many tasks expected of an AI may be possible with limited sensory connectivity, but some tasks necessary, say, to pass a Turing Test might require a &amp;#8220;body&amp;#8221; (real or virtual, humanoid or abstract) with a full (or augmented) set of senses in order to understand the depth and nuance of language, not to mention human behavior, art, humor, etc.&amp;#8221;&lt;/p&gt;

&lt;p&gt;Well, why couldn&amp;#8217;t it understand &amp;#8220;ball&quot;? Don&amp;#8217;t we all claim to understand words associated with objects that don&amp;#8217;t, or in some cases couldn&amp;#8217;t really exist? We sometimes talk about square circles, even though the concept is a logical (and physical) contradiction (boxing rings to the contrary), but that doesn&amp;#8217;t seem to stop us from thinking we understand what the (non-existent) referent of the word is.&lt;/p&gt;

&lt;p&gt;And what about something like Grahams Number, which I mentioned in my previous post? Does anyone really know what Graham&amp;#8217;s number is? Certainly not in the same sense that we &amp;#8220;know&amp;#8221; what 3 is. But this doesn&amp;#8217;t stop us from intelligently talking about it, reasoning about it, ect. &lt;/p&gt;

&lt;p&gt;You could argue that we are only able to do so because we have interacted with other things in a physical way, and are extrapolating from the existent objects to the non-existent ones. I have some understanding of Grahams Number, because I already posses understanding of numbers in general. &lt;/p&gt;

&lt;p&gt;What it boils down to is a claim that to get to a &amp;#8220;understand the depth and nuance of language, art, etc.&amp;#8221; requires you to get to the understanding in a certain way, i.e. by interacting with a sensory environment of a certain type (virtual or actual). This is an empirical question that we cannot solve from the comfort of our armchairs, but my gut feeling is that the claim is wrong. Violating my previous statement, from the comfort of my armchair, I fail to see why we can&amp;#8217;t start with, say, just raw logic or some other incredibly weird sense data and arrive at the same place that humans do via another path. &lt;/p&gt;

&lt;p&gt;But, then, what are we to think of people who are truly color blind, as in they see only monochromatic colors? Do we want to say that they could not possible understand the word &amp;#8220;color&quot;? Or how about someone who was born a blind paraplegic? Could they ever truly appreciate the word &amp;#8220;ball&amp;#8221; since they have never seen nor felt a spherical object, or watched the physical actions of objects? Can a blind person really understand what a triangle is? Interesting questions to which I do not have the answer, though I&amp;#8217;m inclined to say yes, with the qualification that their understanding obviously won&amp;#8217;t be exactly the same as ours, but that doesn&amp;#8217;t make ours &amp;#8220;right&amp;#8221; and theirs &amp;#8220;wrong.&amp;#8221;&lt;/p&gt;

&lt;p&gt;As to the second part of his comment, I&amp;#8217;m not entirely sure I buy it. Certainly Good Old Fashioned AI (GOFAI), the idea that we could just program a human grade artificial intelligence, turned out to be much harder then initial estimates. But just because it is hard does not mean it is impossible. We&amp;#8217;ve never logically proven that you cannot write an imperative computer program that would pass the turing test, so the jury is still out on whether or not it is possible.  A mountain of empirical evidence in the form of &amp;#8220;every attempt so far has failed&amp;#8221; doesn&amp;#8217;t mean it is impossible.&lt;/p&gt;

&lt;p&gt;How could we show that it is impossible? By showing that the brain computes a non-computable function would do nicely. For attempts in this direction, consult J. R. Lucas &lt;a href=&quot;http://users.ox.ac.uk/~jrlucas/mmg.html&quot;&gt;Minds, Machines, and Godel&lt;/a&gt; and &lt;a href=&quot;http://users.ox.ac.uk/~jrlucas/Godel/lewicode.html&quot;&gt;Mechanism: A Rejoinder&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;I&amp;#8217;ll post a review of Lucas&amp;#8217;s position in a future post.&lt;/p&gt;

&lt;p&gt;One last, small tangent.  Someone posted a lengthy reply on their own blog, where they also make many interesting points, but fall victim to a common misunderstanding regarding the Turing Test. Specifically, many people, both inside and outside the AI community, seems to think that the turing test is an intelligence test. I.e. if you cannot pass the turing test, then you are not intelligent. &lt;/p&gt;

&lt;p&gt;This is absolutely wrong, as I think is clear if you read Turing&amp;#8217;s original paper. The test is only meaningful in the positive, and not the negative, aspect. If you can pass the turing test, we must grant that you are intelligent. On the other hand, if you fail the turing test, we must do nothing. Failing the turing test is not grounds for denying intelligence, but passing it IS grounds for asserting intelligence.&lt;/p&gt;

&lt;!-- Adsense block #5 not displayed since it exceed the limit of 3 --&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=29&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p><a href="http://scienceblogs.com/cognitivedaily/2007/08/does_an_artificial_intelligenc.php">Cognitive Daily</a> has an interesting discussion going on about whether or not an artificial intelligence requires a body. There are some interesting posts in the discussion, but as with most of these discussions, it quickly turned into a matter of &#8220;what does it mean to be intelligent?&#8221;</p>

<p>To drop my two cents in on the matter, I must say that the answer to the question is obviously yes; but we have to define &#8220;body.&#8221;</p>



<p>If you define body to be a physical object in the world that is capable of moving around and interacting with reality, the answer is no. If, on the other hand, you define &#8220;body&#8221; simply as &#8220;a means of obtaining input for the mental processes to act on,&#8221; then by all means the answer is yes.</p>

<p>My point is that, while intelligence needs some sort of sensory input to act on (else what the hell would it mean for it to be intelligent?), we shouldn&#8217;t be physical chauvinists about where those sensory inputs come from. They can be byte streams from a network interface, the pixels of a camera, or the electrical signals from a piece of meat sensitive to touch.</p>

<p>Now, we can modify this question and ask &#8220;can an artificial intelligence have human like intelligence without a body?&#8221;</p>

<p>One comment in particular seems to answer this formulation of the question in the negative:</p>

<p>&#8220;Can an AI understand the written or spoken word &#8220;ball&#8221; without associating it with the visual patterns of seeing various balls, the feeling (real or virtual) of holding one, the intuitive physics of throwing, bouncing, and catching one, the concept of games, other spherical objects, etc.? </p>

<p>&#8230;.</p>

<p>I believe that computational AI is possible (along with machine consciousness) and that many tasks expected of an AI may be possible with limited sensory connectivity, but some tasks necessary, say, to pass a Turing Test might require a &#8220;body&#8221; (real or virtual, humanoid or abstract) with a full (or augmented) set of senses in order to understand the depth and nuance of language, not to mention human behavior, art, humor, etc.&#8221;</p>

<p>Well, why couldn&#8217;t it understand &#8220;ball"? Don&#8217;t we all claim to understand words associated with objects that don&#8217;t, or in some cases couldn&#8217;t really exist? We sometimes talk about square circles, even though the concept is a logical (and physical) contradiction (boxing rings to the contrary), but that doesn&#8217;t seem to stop us from thinking we understand what the (non-existent) referent of the word is.</p>

<p>And what about something like Grahams Number, which I mentioned in my previous post? Does anyone really know what Graham&#8217;s number is? Certainly not in the same sense that we &#8220;know&#8221; what 3 is. But this doesn&#8217;t stop us from intelligently talking about it, reasoning about it, ect. </p>

<p>You could argue that we are only able to do so because we have interacted with other things in a physical way, and are extrapolating from the existent objects to the non-existent ones. I have some understanding of Grahams Number, because I already posses understanding of numbers in general. </p>

<p>What it boils down to is a claim that to get to a &#8220;understand the depth and nuance of language, art, etc.&#8221; requires you to get to the understanding in a certain way, i.e. by interacting with a sensory environment of a certain type (virtual or actual). This is an empirical question that we cannot solve from the comfort of our armchairs, but my gut feeling is that the claim is wrong. Violating my previous statement, from the comfort of my armchair, I fail to see why we can&#8217;t start with, say, just raw logic or some other incredibly weird sense data and arrive at the same place that humans do via another path. </p>

<p>But, then, what are we to think of people who are truly color blind, as in they see only monochromatic colors? Do we want to say that they could not possible understand the word &#8220;color"? Or how about someone who was born a blind paraplegic? Could they ever truly appreciate the word &#8220;ball&#8221; since they have never seen nor felt a spherical object, or watched the physical actions of objects? Can a blind person really understand what a triangle is? Interesting questions to which I do not have the answer, though I&#8217;m inclined to say yes, with the qualification that their understanding obviously won&#8217;t be exactly the same as ours, but that doesn&#8217;t make ours &#8220;right&#8221; and theirs &#8220;wrong.&#8221;</p>

<p>As to the second part of his comment, I&#8217;m not entirely sure I buy it. Certainly Good Old Fashioned AI (GOFAI), the idea that we could just program a human grade artificial intelligence, turned out to be much harder then initial estimates. But just because it is hard does not mean it is impossible. We&#8217;ve never logically proven that you cannot write an imperative computer program that would pass the turing test, so the jury is still out on whether or not it is possible.  A mountain of empirical evidence in the form of &#8220;every attempt so far has failed&#8221; doesn&#8217;t mean it is impossible.</p>

<p>How could we show that it is impossible? By showing that the brain computes a non-computable function would do nicely. For attempts in this direction, consult J. R. Lucas <a href="http://users.ox.ac.uk/~jrlucas/mmg.html">Minds, Machines, and Godel</a> and <a href="http://users.ox.ac.uk/~jrlucas/Godel/lewicode.html">Mechanism: A Rejoinder</a>. </p>

<p>I&#8217;ll post a review of Lucas&#8217;s position in a future post.</p>

<p>One last, small tangent.  Someone posted a lengthy reply on their own blog, where they also make many interesting points, but fall victim to a common misunderstanding regarding the Turing Test. Specifically, many people, both inside and outside the AI community, seems to think that the turing test is an intelligence test. I.e. if you cannot pass the turing test, then you are not intelligent. </p>

<p>This is absolutely wrong, as I think is clear if you read Turing&#8217;s original paper. The test is only meaningful in the positive, and not the negative, aspect. If you can pass the turing test, we must grant that you are intelligent. On the other hand, if you fail the turing test, we must do nothing. Failing the turing test is not grounds for denying intelligence, but passing it IS grounds for asserting intelligence.</p>

<!-- Adsense block #6 not displayed since it exceed the limit of 3 --><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=29&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=29&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Big Numbers</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=28&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Tue, 28 Aug 2007 18:20:22 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Musings</category>
<category domain="alt">Logic</category>			<guid isPermaLink="false">28@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;In one of those funny coincidences where it seems the popular mind is pregnant with an idea, an article was recently published to the programming section on reddit that mentions the busy beaver function.  The article is titled &lt;a href=&quot;http://www.scottaaronson.com/writings/bignumbers.html&quot;&gt;&amp;#8220;Who Can Name The Bigger Number?&amp;#8221;&lt;/a&gt; and is essentially about trying to name very large integers.&lt;/p&gt;

&lt;p&gt;The article is fairly long, but also quite interesting. The associated &lt;a href=&quot;http://programming.reddit.com/info/2jbud/comments&quot;&gt;thread on reddit&lt;/a&gt; is also interesting, but is topped by a very similar discussion on the &lt;a href=&quot;http://blag.xkcd.com/2007/03/14/large-numbers/&quot;&gt;XKCD blog&lt;/a&gt; about naming large numbers. &lt;/p&gt;



&lt;p&gt;The XKCD discussion is associated with a funny &lt;a href=&quot;http://www.xkcd.com/207/&quot;&gt;comic&lt;/a&gt; wherein he suggests calling the Ackermann function with Graham&amp;#8217;s number to horrify mathematicians. &lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;http://en.wikipedia.org/wiki/Ackermann_function&quot;&gt;Ackermann function&lt;/a&gt; is a computable function that is not primitive recursive, and grows astoundingly fast (though, as noted elsewhere, apparently not as fast as the busy beaver function). &lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://en.wikipedia.org/wiki/Graham's_number&quot;&gt;Graham&amp;#8217;s number&lt;/a&gt; is a number so ridiculously huge that it cannot be meaningfully expressed in scientific notation. Instead, a special notation had to be invented to write it down. This number acctualy has a practical (?) use: it is currently the smallest upper bound on an unsolved problem from a field of mathematics called Ramsey theory. The current lower bound? Six. That&amp;#8217;s right&amp;#8230; We know for a fact that the smallest answer to this question is 6, and the largest is greater than the number of seconds since the big bang, plus the number of atoms in the universe, plus the total number of possible chess games, plus&amp;#8230; you get the idea. &lt;/p&gt;

&lt;p&gt;Or maybe you don&amp;#8217;t. Put it this way. If we turned every atom in the universe into pen and paper, there wouldn&amp;#8217;t be enough matter to write out this number in base 10 notation. If we had a printer that was able to magically make paper and ink out of thin air, and was capable of printing a billion sheets of paper in 1 second, and set it to printing this number, it wouldn&amp;#8217;t be done for several hundred trillion years. For that matter, it wouldn&amp;#8217;t even be able to print out a googolplex in under several hundred billion years. (A google is a 1 followed by 100 zeros, or 10^100. A googolplex is a 1 followed by a google of zeros, or 10^(10^100). Most people only know out to billion, which is a 1 followed by 9 zeroes or 10^9, or a trillion, 1 followed by 12 zeros or 10^12.) In the mean time, all that paper would completely fill the universe several times over.&lt;/p&gt;

&lt;p&gt;Needless to say that when you take a function that grows insanely fast, and feed it a number that is basically inconceivably large, you get another number that simply defies conception.&lt;/p&gt;

&lt;p&gt;Of particular note, from these threads I stumbled across an interesting &amp;#8220;game&amp;#8221; called &lt;a href=&quot;http://bitconjurer.org/minefield.html&quot;&gt;MineField&lt;/a&gt;, apparently developed by &lt;a href=&quot;http://bitconjurer.org/index.html&quot;&gt;Bram Cohen&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Essentially, the game is about naming large numbers, and as is pointed out in some of the threads listed above, this eventually turns into a game of developing stronger logics. Apparently this is the case because there is a limit to the complexity of a statement in a given logic. I&amp;#8217;m going to hazard a guess and say this is directly related to the Berry Paradox, a subject on which I intend to write my next entry.&lt;/p&gt;

&lt;p&gt;MineField makes the connection to stronger logics explicit, by setting up the game in such a way that on a given players turn, they can add a new axiom to the shared logic the players are using to describe numbers. They start with an axiomatic basis of set theory, any of the common bases which are accepted as consistent. So a player adds an axiom to the logic, and uses the now stronger logic to name an infinite number.&lt;/p&gt;

&lt;p&gt;There are a few more details relating to how to &amp;#8220;win&amp;#8221; the game, but I leave it to the reader to click through if interested.&lt;/p&gt;

&lt;!-- Adsense block #7 not displayed since it exceed the limit of 3 --&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=28&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>In one of those funny coincidences where it seems the popular mind is pregnant with an idea, an article was recently published to the programming section on reddit that mentions the busy beaver function.  The article is titled <a href="http://www.scottaaronson.com/writings/bignumbers.html">&#8220;Who Can Name The Bigger Number?&#8221;</a> and is essentially about trying to name very large integers.</p>

<p>The article is fairly long, but also quite interesting. The associated <a href="http://programming.reddit.com/info/2jbud/comments">thread on reddit</a> is also interesting, but is topped by a very similar discussion on the <a href="http://blag.xkcd.com/2007/03/14/large-numbers/">XKCD blog</a> about naming large numbers. </p>



<p>The XKCD discussion is associated with a funny <a href="http://www.xkcd.com/207/">comic</a> wherein he suggests calling the Ackermann function with Graham&#8217;s number to horrify mathematicians. </p>

<p>The <a href="http://en.wikipedia.org/wiki/Ackermann_function">Ackermann function</a> is a computable function that is not primitive recursive, and grows astoundingly fast (though, as noted elsewhere, apparently not as fast as the busy beaver function). </p>

<p><a href="http://en.wikipedia.org/wiki/Graham's_number">Graham&#8217;s number</a> is a number so ridiculously huge that it cannot be meaningfully expressed in scientific notation. Instead, a special notation had to be invented to write it down. This number acctualy has a practical (?) use: it is currently the smallest upper bound on an unsolved problem from a field of mathematics called Ramsey theory. The current lower bound? Six. That&#8217;s right&#8230; We know for a fact that the smallest answer to this question is 6, and the largest is greater than the number of seconds since the big bang, plus the number of atoms in the universe, plus the total number of possible chess games, plus&#8230; you get the idea. </p>

<p>Or maybe you don&#8217;t. Put it this way. If we turned every atom in the universe into pen and paper, there wouldn&#8217;t be enough matter to write out this number in base 10 notation. If we had a printer that was able to magically make paper and ink out of thin air, and was capable of printing a billion sheets of paper in 1 second, and set it to printing this number, it wouldn&#8217;t be done for several hundred trillion years. For that matter, it wouldn&#8217;t even be able to print out a googolplex in under several hundred billion years. (A google is a 1 followed by 100 zeros, or 10^100. A googolplex is a 1 followed by a google of zeros, or 10^(10^100). Most people only know out to billion, which is a 1 followed by 9 zeroes or 10^9, or a trillion, 1 followed by 12 zeros or 10^12.) In the mean time, all that paper would completely fill the universe several times over.</p>

<p>Needless to say that when you take a function that grows insanely fast, and feed it a number that is basically inconceivably large, you get another number that simply defies conception.</p>

<p>Of particular note, from these threads I stumbled across an interesting &#8220;game&#8221; called <a href="http://bitconjurer.org/minefield.html">MineField</a>, apparently developed by <a href="http://bitconjurer.org/index.html">Bram Cohen</a>.</p>

<p>Essentially, the game is about naming large numbers, and as is pointed out in some of the threads listed above, this eventually turns into a game of developing stronger logics. Apparently this is the case because there is a limit to the complexity of a statement in a given logic. I&#8217;m going to hazard a guess and say this is directly related to the Berry Paradox, a subject on which I intend to write my next entry.</p>

<p>MineField makes the connection to stronger logics explicit, by setting up the game in such a way that on a given players turn, they can add a new axiom to the shared logic the players are using to describe numbers. They start with an axiomatic basis of set theory, any of the common bases which are accepted as consistent. So a player adds an axiom to the logic, and uses the now stronger logic to name an infinite number.</p>

<p>There are a few more details relating to how to &#8220;win&#8221; the game, but I leave it to the reader to click through if interested.</p>

<!-- Adsense block #8 not displayed since it exceed the limit of 3 --><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=28&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=28&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Busy Beavers</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=27&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Mon, 27 Aug 2007 16:26:41 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="alt">Computers</category>
<category domain="main">Computer Science</category>
<category domain="alt">Logic</category>			<guid isPermaLink="false">27@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Computers are a wonderful invention, capable of a profound variety of actions. But there are limits to what a computer can do, and today I wish to talk about one of them. Specifically, I wish is discuss the Busy Beaver problem.&lt;/p&gt;



&lt;p&gt;The busy beaver function, denoted here as B(x), is a function that returns the highest number of 1s a turing machine with x states can print on an initially blank tape before halting. An alternative formulation of the questions asks &amp;#8220;How many steps can the turing machine take before halting?&amp;#8221;. The two questions have essentially the same properties, but the later is slightly easier to reason about, so for the purpose of this discussion, we will use it as our working definition.&lt;/p&gt;

&lt;p&gt;This function happens to be incomputable, i.e. there is no program that when carried out by a computer will calculate the value of B(x) for any x.&lt;/p&gt;

&lt;p&gt;There are several ways of proving this to be the case, but perhaps the simplest is this.&lt;br /&gt;
As Turing proved, the halting problem (giving a computer and a program, determine if the computer ever stops once started executing the program) is non-computable.&lt;br /&gt;
If the busy beaver problem were computable, then the halting problem would be computable as well. But we already know the halting problem cannot be computed. So B(x) cannot be computed either.&lt;/p&gt;

&lt;p&gt;How can we use B(x) to solve the halting problem? Like this: Say we have an n state turning machine and some program, and we wish to know if it halts or not when started on a blank tape. First, calculate the value B(x). This value will place an upper limit on the number of internal states the program in questions can go through. Then, run the program on the turing machine. Either the turing machine will execute a certain number of steps less than or equal to B(x) and halt, or it will execute a number of steps greater than B(x) and never halt. We keep track of the number of states the machine has gone through, and once it crosses the critical threshold at B(x), we know the machine will not halt. The limitation of working on a blank tape really is not a limitation, as any program can be re-written with all the needed variables coded into the machine.&lt;/p&gt;

&lt;p&gt;So B(x) is uncomputable. But we can still discover information about it. For example, B(1) = 1. The machine has 1 state and starts on a blank square. So the condition the machine is in when started (in state 1, looking at a blank spot on the tape) is identical to every state the machine can ever be in. So it either halts immediately (i.e. 1 step) or it never does.&lt;/p&gt;

&lt;p&gt;Below are all the possible configurations of this single state.&lt;/p&gt;

&lt;p&gt;Tape Symbol	Write Symbol	Move Head	Next state&lt;br /&gt;
0		1		Left		1&lt;br /&gt;
0		1		Left		Halt&lt;br /&gt;
0		1		Right		1&lt;br /&gt;
0		1		Right		Halt&lt;br /&gt;
0		0		Left		1&lt;br /&gt;
0		0		Left		Halt&lt;br /&gt;
0		0		Right		1&lt;br /&gt;
0		0		Right		Halt&lt;br /&gt;
1		1		Left		1&lt;br /&gt;
1		1		Left		Halt&lt;br /&gt;
1		1		Right		1&lt;br /&gt;
1		1		Right		Halt&lt;br /&gt;
1		0		Left		1&lt;br /&gt;
1		0		Left		Halt&lt;br /&gt;
1		0		Right		1&lt;br /&gt;
1		0		Right		Halt&lt;/p&gt;

&lt;p&gt;There are 16 ways the single state can be arranged. In our formulation of the problem, we are considering a machine acting on a blank tape, so all configurations that consider a square with a 1 in it are thrown out immediately, leaving us with 8 possible states. Of these 8, 4 of them write a 0 (or blank) on the tape, so these are thrown out as well, leaving us 4. Of these 4, two of them write a 1, move one square left or right and halt, and two of them write a 1, move one square left or right, and go back into state 1. It is obvious that the latter machines must never halt. They go into an infinite loop, wherein they are considering a blank square, write a 1 on that square move left/right, and repeat, forever. It is also obvious that the former machines will only print a single 1 before halting.&lt;/p&gt;

&lt;p&gt;So from this exhaustive examination of 1 state machines, we can conclude that B(1) =  1. We can also conclude (indeed, we just showed this in the preceding paragraph) that a single state machine will either execute one instruction or halt, or execute an infinite number of instructions and never halt.&lt;/p&gt;


&lt;p&gt;Present knowledge about the value of B(x) looks something like this:&lt;/p&gt;

&lt;p&gt;n B(n)&lt;br /&gt;
1 1&lt;br /&gt;
2 4&lt;br /&gt;
4 13&lt;br /&gt;
5 &gt;=4098&lt;/p&gt;

&lt;p&gt;A curious property of B(x), and part of the reason it is uncomputable, is that f(B(x)) is smaller than B(x+1) for infinitely many x. The function B(x) grows at a truly astronomical rate. In fact, it grows faster than any computable function, and is therefore not one of the set of computable functions.&lt;/p&gt;

&lt;p&gt;Put more precisely, for any computable function f, B(x + 1) &gt; f(B(x)) for infinitely many x. For example, if f were x^10,000, then B(x + 1) &gt; x^10,000 for infinitely many x. Since this holds for all computable function, it follows that the output of B(x) is not identical to the output of any particular computable function, and hence B(x) is not itself a computable function.&lt;/p&gt;

&lt;!-- Adsense block #9 not displayed since it exceed the limit of 3 --&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=27&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Computers are a wonderful invention, capable of a profound variety of actions. But there are limits to what a computer can do, and today I wish to talk about one of them. Specifically, I wish is discuss the Busy Beaver problem.</p>



<p>The busy beaver function, denoted here as B(x), is a function that returns the highest number of 1s a turing machine with x states can print on an initially blank tape before halting. An alternative formulation of the questions asks &#8220;How many steps can the turing machine take before halting?&#8221;. The two questions have essentially the same properties, but the later is slightly easier to reason about, so for the purpose of this discussion, we will use it as our working definition.</p>

<p>This function happens to be incomputable, i.e. there is no program that when carried out by a computer will calculate the value of B(x) for any x.</p>

<p>There are several ways of proving this to be the case, but perhaps the simplest is this.<br />
As Turing proved, the halting problem (giving a computer and a program, determine if the computer ever stops once started executing the program) is non-computable.<br />
If the busy beaver problem were computable, then the halting problem would be computable as well. But we already know the halting problem cannot be computed. So B(x) cannot be computed either.</p>

<p>How can we use B(x) to solve the halting problem? Like this: Say we have an n state turning machine and some program, and we wish to know if it halts or not when started on a blank tape. First, calculate the value B(x). This value will place an upper limit on the number of internal states the program in questions can go through. Then, run the program on the turing machine. Either the turing machine will execute a certain number of steps less than or equal to B(x) and halt, or it will execute a number of steps greater than B(x) and never halt. We keep track of the number of states the machine has gone through, and once it crosses the critical threshold at B(x), we know the machine will not halt. The limitation of working on a blank tape really is not a limitation, as any program can be re-written with all the needed variables coded into the machine.</p>

<p>So B(x) is uncomputable. But we can still discover information about it. For example, B(1) = 1. The machine has 1 state and starts on a blank square. So the condition the machine is in when started (in state 1, looking at a blank spot on the tape) is identical to every state the machine can ever be in. So it either halts immediately (i.e. 1 step) or it never does.</p>

<p>Below are all the possible configurations of this single state.</p>

<p>Tape Symbol	Write Symbol	Move Head	Next state<br />
0		1		Left		1<br />
0		1		Left		Halt<br />
0		1		Right		1<br />
0		1		Right		Halt<br />
0		0		Left		1<br />
0		0		Left		Halt<br />
0		0		Right		1<br />
0		0		Right		Halt<br />
1		1		Left		1<br />
1		1		Left		Halt<br />
1		1		Right		1<br />
1		1		Right		Halt<br />
1		0		Left		1<br />
1		0		Left		Halt<br />
1		0		Right		1<br />
1		0		Right		Halt</p>

<p>There are 16 ways the single state can be arranged. In our formulation of the problem, we are considering a machine acting on a blank tape, so all configurations that consider a square with a 1 in it are thrown out immediately, leaving us with 8 possible states. Of these 8, 4 of them write a 0 (or blank) on the tape, so these are thrown out as well, leaving us 4. Of these 4, two of them write a 1, move one square left or right and halt, and two of them write a 1, move one square left or right, and go back into state 1. It is obvious that the latter machines must never halt. They go into an infinite loop, wherein they are considering a blank square, write a 1 on that square move left/right, and repeat, forever. It is also obvious that the former machines will only print a single 1 before halting.</p>

<p>So from this exhaustive examination of 1 state machines, we can conclude that B(1) =  1. We can also conclude (indeed, we just showed this in the preceding paragraph) that a single state machine will either execute one instruction or halt, or execute an infinite number of instructions and never halt.</p>


<p>Present knowledge about the value of B(x) looks something like this:</p>

<p>n B(n)<br />
1 1<br />
2 4<br />
4 13<br />
5 >=4098</p>

<p>A curious property of B(x), and part of the reason it is uncomputable, is that f(B(x)) is smaller than B(x+1) for infinitely many x. The function B(x) grows at a truly astronomical rate. In fact, it grows faster than any computable function, and is therefore not one of the set of computable functions.</p>

<p>Put more precisely, for any computable function f, B(x + 1) > f(B(x)) for infinitely many x. For example, if f were x^10,000, then B(x + 1) > x^10,000 for infinitely many x. Since this holds for all computable function, it follows that the output of B(x) is not identical to the output of any particular computable function, and hence B(x) is not itself a computable function.</p>

<!-- Adsense block #10 not displayed since it exceed the limit of 3 --><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=27&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=27&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
				<item>
			<title>Must reality be consistent?</title>
			<link>http://www.desuntcetera.com/blogs/index.php?p=26&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1</link>
			<pubDate>Fri, 24 Aug 2007 16:44:14 +0000</pubDate>			<dc:creator>Randall Landau</dc:creator>
			<category domain="main">Metaphysics</category>
<category domain="alt">Musings</category>			<guid isPermaLink="false">26@http://www.desuntcetera.com/blogs/</guid>
						<description>&lt;p&gt;Reading &lt;a href=&quot;http://xkcd.com/298/&quot;&gt;this&lt;/a&gt; XKCD comic brings to mind something I&amp;#8217;ve thought about off and on for a while now. Doing a quick google search brings up nothing on the subject, so here is a small attempt to at least sketch out the domain of a question/answer.&lt;/p&gt;

&lt;p&gt;I think that some people don&amp;#8217;t accept the (what I believe to be) self evident proposition that reality must be consistent.&lt;/p&gt;



&lt;p&gt;My gut feeling is something like this.&lt;/p&gt;

&lt;p&gt;There are natural laws that dictate (or perhaps explain&amp;#8230;) how sub atomic particles work. If those laws varied from one moment to the next, things like us, or planets or basically anything else we see the universe would not exist, for the simple fact that we are a product of a certain configuration of those rules. If those rules changed in certain ways, matter as we know it, or chemical process as we know them, (insert a huge list of things here) would no longer exist/work/what have you.&lt;/p&gt;

&lt;p&gt;The fact that we &lt;i&gt;are&lt;/i&gt; here and haven&amp;#8217;t blinked out of existence* is pretty good evidence that, if the laws of physics do vary from moment to moment, they don&amp;#8217;t vary in any way that would affect our existence. If they do vary, then they vary consistently, i.e. they can only vary in ways that don&amp;#8217;t destroy us&amp;#8230; in other words they vary in a law-like way, so in actuality the universe is &lt;i&gt;still&lt;/i&gt; consistent&lt;/p&gt;

&lt;p&gt;The laws can&amp;#8217;t be broken. If they seem to be broken according to current understanding, then it&amp;#8217;s the case that current understanding is wrong, and not that the laws are broken.&lt;/p&gt;

&lt;p&gt;Now there is still the question of &amp;#8220;maybe the laws of physics vary in space even if they don&amp;#8217;t vary in time. In other words, we exist in a part of space with one set of physical laws, but on the other &amp;#8220;side&amp;#8221; of the universe, there is a place with different laws.&lt;/p&gt;

&lt;p&gt;That&amp;#8217;s a slightly thornier question, but the same basic argument forms apply.&lt;/p&gt;

&lt;p&gt;If everything that exists came from the same initial starting singularity, and there are in fact parts of the universe with different laws of physics, the fact that those places exist have to be accounted for by an overarching set of laws, and you&amp;#8217;re right back to a set of inviolate laws that hold everywhere and everywhen.&lt;/p&gt;

&lt;p&gt;Tangentially, one consequence of this is that there is a problem with any sort of creature that can contravene the laws of physics. Meaning, such a creature cannot exist. Any creature that &lt;i&gt;appears&lt;/i&gt; to do something that contravenes the laws of physics is really doing something that is &lt;i&gt;allowed&lt;/i&gt; by the laws of physics; we just don&amp;#8217;t have a good enough understanding (yet) to explain how.&lt;/p&gt;

&lt;p&gt;*Note: We can make an &lt;a href=&quot;http://en.wikipedia.org/wiki/Anthropic_principle&quot;&gt;anthropic&lt;/a&gt; argument argument about why the laws in this particular universe we inhabit must be consistent, but I wish to put forth the stronger claim that they must be consistent in any possible universe. An inconsistent universe cannot exist.&lt;/p&gt;

&lt;!-- Adsense block #11 not displayed since it exceed the limit of 3 --&gt;&lt;div class=&quot;item_footer&quot;&gt;&lt;p&gt;&lt;small&gt;&lt;a href=&quot;http://www.desuntcetera.com/blogs/index.php?p=26&amp;amp;more=1&amp;amp;c=1&amp;amp;tb=1&amp;amp;pb=1&quot;&gt;Original post&lt;/a&gt; blogged on &lt;a href=&quot;http://b2evolution.net/&quot;&gt;b2evolution&lt;/a&gt;.&lt;/small&gt;&lt;/p&gt;&lt;/div&gt;</description>
			<content:encoded><![CDATA[<p>Reading <a href="http://xkcd.com/298/">this</a> XKCD comic brings to mind something I&#8217;ve thought about off and on for a while now. Doing a quick google search brings up nothing on the subject, so here is a small attempt to at least sketch out the domain of a question/answer.</p>

<p>I think that some people don&#8217;t accept the (what I believe to be) self evident proposition that reality must be consistent.</p>



<p>My gut feeling is something like this.</p>

<p>There are natural laws that dictate (or perhaps explain&#8230;) how sub atomic particles work. If those laws varied from one moment to the next, things like us, or planets or basically anything else we see the universe would not exist, for the simple fact that we are a product of a certain configuration of those rules. If those rules changed in certain ways, matter as we know it, or chemical process as we know them, (insert a huge list of things here) would no longer exist/work/what have you.</p>

<p>The fact that we <i>are</i> here and haven&#8217;t blinked out of existence* is pretty good evidence that, if the laws of physics do vary from moment to moment, they don&#8217;t vary in any way that would affect our existence. If they do vary, then they vary consistently, i.e. they can only vary in ways that don&#8217;t destroy us&#8230; in other words they vary in a law-like way, so in actuality the universe is <i>still</i> consistent</p>

<p>The laws can&#8217;t be broken. If they seem to be broken according to current understanding, then it&#8217;s the case that current understanding is wrong, and not that the laws are broken.</p>

<p>Now there is still the question of &#8220;maybe the laws of physics vary in space even if they don&#8217;t vary in time. In other words, we exist in a part of space with one set of physical laws, but on the other &#8220;side&#8221; of the universe, there is a place with different laws.</p>

<p>That&#8217;s a slightly thornier question, but the same basic argument forms apply.</p>

<p>If everything that exists came from the same initial starting singularity, and there are in fact parts of the universe with different laws of physics, the fact that those places exist have to be accounted for by an overarching set of laws, and you&#8217;re right back to a set of inviolate laws that hold everywhere and everywhen.</p>

<p>Tangentially, one consequence of this is that there is a problem with any sort of creature that can contravene the laws of physics. Meaning, such a creature cannot exist. Any creature that <i>appears</i> to do something that contravenes the laws of physics is really doing something that is <i>allowed</i> by the laws of physics; we just don&#8217;t have a good enough understanding (yet) to explain how.</p>

<p>*Note: We can make an <a href="http://en.wikipedia.org/wiki/Anthropic_principle">anthropic</a> argument argument about why the laws in this particular universe we inhabit must be consistent, but I wish to put forth the stronger claim that they must be consistent in any possible universe. An inconsistent universe cannot exist.</p>

<!-- Adsense block #12 not displayed since it exceed the limit of 3 --><div class="item_footer"><p><small><a href="http://www.desuntcetera.com/blogs/index.php?p=26&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1">Original post</a> blogged on <a href="http://b2evolution.net/">b2evolution</a>.</small></p></div>]]></content:encoded>
								<comments>http://www.desuntcetera.com/blogs/index.php?p=26&amp;more=1&amp;c=1&amp;tb=1&amp;pb=1#comments</comments>
		</item>
			</channel>
</rss>
