<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: What theory should every non-theory Ph.D. student know?</title>
	<atom:link href="http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/feed/" rel="self" type="application/rss+xml" />
	<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/</link>
	<description>Assistant Professor, School of Electrical Engineering and Computer Science, Oregon State University</description>
	<lastBuildDate>Mon, 06 May 2013 04:32:43 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
	<item>
		<title>By: hpux735</title>
		<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/#comment-45</link>
		<dc:creator>hpux735</dc:creator>
		<pubDate>Wed, 04 Nov 2009 22:58:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.glencora.org/?p=188#comment-45</guid>
		<description><![CDATA[Paul Beame brings up a good point.  As someone who is more concerned with applied computer science, I found formal languages painful and useless.  I&#039;m currently taking Error Correcting Codes (and sat in a couple lectures from Information Theory).  I&#039;m excited about the idea of quantifying the information content in a system, and the capacity of a channel to transmit that information.  I think that is as fundamental as any other theory course, but it is roundly ignored.]]></description>
		<content:encoded><![CDATA[<p>Paul Beame brings up a good point.  As someone who is more concerned with applied computer science, I found formal languages painful and useless.  I&#8217;m currently taking Error Correcting Codes (and sat in a couple lectures from Information Theory).  I&#8217;m excited about the idea of quantifying the information content in a system, and the capacity of a channel to transmit that information.  I think that is as fundamental as any other theory course, but it is roundly ignored.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: JeffE</title>
		<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/#comment-44</link>
		<dc:creator>JeffE</dc:creator>
		<pubDate>Wed, 07 Oct 2009 19:42:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.glencora.org/?p=188#comment-44</guid>
		<description><![CDATA[The graduate-algorithms-for-everyone course at UIUC is pretty close to what David describes, plus some randomized algorithms.  I always teach the simplex method (in its geometric &quot;drop the marble&quot; formulation.  No tableaux!)  And we do NP-completeness *first* to (try to) drive the reduction point home early.]]></description>
		<content:encoded><![CDATA[<p>The graduate-algorithms-for-everyone course at UIUC is pretty close to what David describes, plus some randomized algorithms.  I always teach the simplex method (in its geometric &#8220;drop the marble&#8221; formulation.  No tableaux!)  And we do NP-completeness *first* to (try to) drive the reduction point home early.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeremy LeJyBy</title>
		<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/#comment-43</link>
		<dc:creator>Jeremy LeJyBy</dc:creator>
		<pubDate>Wed, 07 Oct 2009 13:24:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.glencora.org/?p=188#comment-43</guid>
		<description><![CDATA[The undergrad theory courses I taught in 3 different universities had roughly the same structure:
- First year, a single course:
  * basic data structures and algorithms in comparison
    model [Dictionary,priority queues,sorting];
- Second year, two courses:
  * advanced data structures, algorithms and models [Randomized/Online/Approximation/Parallel algorithms, hierarchical memory, pagination]
  * Calculability [from Automata to Turing Machines, going through NP-hardness and the polynomial hierarchy]

The structure is not necessarily ideal, they are similar because hacked from the same book or from each other.

A personal addition which I think important for theory courses to students who will not necessarily do theory, is to insist that worst-case comparison model is one simplification valid for many applications, but that there are many other &quot;simplifications&quot; available, some of which are more valuable for some applications (online, memory hierarchy, space, but also energy consumption and others).]]></description>
		<content:encoded><![CDATA[<p>The undergrad theory courses I taught in 3 different universities had roughly the same structure:<br />
- First year, a single course:<br />
  * basic data structures and algorithms in comparison<br />
    model [Dictionary,priority queues,sorting];<br />
- Second year, two courses:<br />
  * advanced data structures, algorithms and models [Randomized/Online/Approximation/Parallel algorithms, hierarchical memory, pagination]<br />
  * Calculability [from Automata to Turing Machines, going through NP-hardness and the polynomial hierarchy]</p>
<p>The structure is not necessarily ideal, they are similar because hacked from the same book or from each other.</p>
<p>A personal addition which I think important for theory courses to students who will not necessarily do theory, is to insist that worst-case comparison model is one simplification valid for many applications, but that there are many other &#8220;simplifications&#8221; available, some of which are more valuable for some applications (online, memory hierarchy, space, but also energy consumption and others).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Beame</title>
		<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/#comment-42</link>
		<dc:creator>Paul Beame</dc:creator>
		<pubDate>Wed, 07 Oct 2009 05:19:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.glencora.org/?p=188#comment-42</guid>
		<description><![CDATA[It&#039;s a bit tough to answer.  The kind of course that David describes certainly makes sense but not all non-theory students have the same needs.  Every AI PhD student ought to know about PSPACE-completeness.  Every Systems PhD student should know about randomized algorithms for load balancing.    It isn&#039;t clear that either needs to know about the other&#039;s topic.]]></description>
		<content:encoded><![CDATA[<p>It&#8217;s a bit tough to answer.  The kind of course that David describes certainly makes sense but not all non-theory students have the same needs.  Every AI PhD student ought to know about PSPACE-completeness.  Every Systems PhD student should know about randomized algorithms for load balancing.    It isn&#8217;t clear that either needs to know about the other&#8217;s topic.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Glencora</title>
		<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/#comment-41</link>
		<dc:creator>Glencora</dc:creator>
		<pubDate>Tue, 06 Oct 2009 14:53:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.glencora.org/?p=188#comment-41</guid>
		<description><![CDATA[To what detail do you teach linear programming?  Do you actually teach methods for solving an LP or focus on the modelling part and just make them aware of simplex and ellipsoid?]]></description>
		<content:encoded><![CDATA[<p>To what detail do you teach linear programming?  Do you actually teach methods for solving an LP or focus on the modelling part and just make them aware of simplex and ellipsoid?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: D. Eppstein</title>
		<link>http://blogs.oregonstate.edu/glencora/2009/10/05/what-theory-should-every-non-theory-ph-d-student-know/#comment-40</link>
		<dc:creator>D. Eppstein</dc:creator>
		<pubDate>Mon, 05 Oct 2009 17:02:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.glencora.org/?p=188#comment-40</guid>
		<description><![CDATA[Our basic algorithms-for-non-theorists graduate class mostly covers graph algorithms, dynamic programming, linear programming, approximation, and NP-completeness. I think the specific problems we cover are not as important as the emphasis on reduction: taking the problem you are given (from e.g. some more applied area of CS) and massaging it into a form that can be solved using one of the standard algorithms from CS theory. The same idea of reduction leads naturally to the theory of NP-completeness.

We also have a graduate data structures course that&#039;s taken instead of the one above by a lot of non-theorists in more technical areas.]]></description>
		<content:encoded><![CDATA[<p>Our basic algorithms-for-non-theorists graduate class mostly covers graph algorithms, dynamic programming, linear programming, approximation, and NP-completeness. I think the specific problems we cover are not as important as the emphasis on reduction: taking the problem you are given (from e.g. some more applied area of CS) and massaging it into a form that can be solved using one of the standard algorithms from CS theory. The same idea of reduction leads naturally to the theory of NP-completeness.</p>
<p>We also have a graduate data structures course that&#8217;s taken instead of the one above by a lot of non-theorists in more technical areas.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
