<?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: Calculational proofs are usually direct</title>
	<atom:link href="http://www.joaoff.com/2008/02/11/direct-proofs/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joaoff.com/2008/02/11/direct-proofs/</link>
	<description>Programming, Algorithms, and Mathematics</description>
	<lastBuildDate>Thu, 26 Aug 2010 10:53:04 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
	<item>
		<title>By: jff</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-6607</link>
		<dc:creator>jff</dc:creator>
		<pubDate>Wed, 07 Oct 2009 21:07:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-6607</guid>
		<description>Dear XSLX,

that&#039;s the contrapositive of Leibniz&#039;s rule. Leibniz rule states that, for all a, b, and function f:
  a=b  =&gt;  f.a = f.b

The contrapositive is obtained by negating both sides and changing the direction of the implication:

  a=/=b  &lt;=  f.a =/= f.b  

Thanks for your comment,
Joao</description>
		<content:encoded><![CDATA[<p>Dear XSLX,</p>
<p>that&#8217;s the contrapositive of Leibniz&#8217;s rule. Leibniz rule states that, for all a, b, and function f:<br />
  a=b  =>  f.a = f.b</p>
<p>The contrapositive is obtained by negating both sides and changing the direction of the implication:</p>
<p>  a=/=b  <=  f.a =/= f.b  </p>
<p>Thanks for your comment,<br />
Joao</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: xslx</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-6606</link>
		<dc:creator>xslx</dc:creator>
		<pubDate>Wed, 07 Oct 2009 20:57:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-6606</guid>
		<description>And why are two values different if applying the same function to them yields different values?
Because if they were same, function would return same values ;)</description>
		<content:encoded><![CDATA[<p>And why are two values different if applying the same function to them yields different values?<br />
Because if they were same, function would return same values <img src='http://www.joaoff.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jff</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-1534</link>
		<dc:creator>jff</dc:creator>
		<pubDate>Wed, 14 Jan 2009 10:39:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-1534</guid>
		<description>Jane,

Each step in the proof format I use has the form:

  A
R { hint }
  B    .

This means that A is related with B by relation R, and the reason is shown in the hint. If I instantiate R with equality, I get:

  A
= { hint }
  B  ,

which means that A=B.

Similarly, if I use the arrow, as in
 
   A
&lt;= {hint}
   B   ,

then it means that B implies A.

***

In this particular example, I am using the contrapositive of the so-called Leibniz rule:

  f(a) =/= f(b)   =&gt;  a =/= b .

In words, if the value of f(a) is different from f(b), then a must be different from b.

I hope this helps,
Joao</description>
		<content:encoded><![CDATA[<p>Jane,</p>
<p>Each step in the proof format I use has the form:</p>
<p>  A<br />
R { hint }<br />
  B    .</p>
<p>This means that A is related with B by relation R, and the reason is shown in the hint. If I instantiate R with equality, I get:</p>
<p>  A<br />
= { hint }<br />
  B  ,</p>
<p>which means that A=B.</p>
<p>Similarly, if I use the arrow, as in</p>
<p>   A<br />
< = {hint}<br />
   B   ,</p>
<p>then it means that B implies A.</p>
<p>***</p>
<p>In this particular example, I am using the contrapositive of the so-called Leibniz rule:</p>
<p>  f(a) =/= f(b)   =>  a =/= b .</p>
<p>In words, if the value of f(a) is different from f(b), then a must be different from b.</p>
<p>I hope this helps,<br />
Joao</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jane Forrester</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-1532</link>
		<dc:creator>Jane Forrester</dc:creator>
		<pubDate>Tue, 13 Jan 2009 18:19:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-1532</guid>
		<description>I am just a layperson who&#039;s interested in logic. Your proof looks very intuitive and direct, and I have to admit it&#039;s more elegant.

However, I have a small question from my ignorance on your notation.

In-between the statements, there are lines that explain the transformation. All of them start with an equal sign except the second one, which is left-arrow. What does that mean and why is this the only one?</description>
		<content:encoded><![CDATA[<p>I am just a layperson who&#8217;s interested in logic. Your proof looks very intuitive and direct, and I have to admit it&#8217;s more elegant.</p>
<p>However, I have a small question from my ignorance on your notation.</p>
<p>In-between the statements, there are lines that explain the transformation. All of them start with an equal sign except the second one, which is left-arrow. What does that mean and why is this the only one?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jff</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-1306</link>
		<dc:creator>jff</dc:creator>
		<pubDate>Thu, 16 Oct 2008 21:34:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-1306</guid>
		<description>Mike,

The so-called Leibniz rule (also called &#039;substitution of equals by equals&#039;) states that, for all a, b, and function f:

   a = b  =&gt;  f.a = f.b     .

Hence, you can see the first step as a mutual implication where, in one direction, function f is taking the square root, and in the other direction, function f corresponds to squaring.

Thanks for your comment!</description>
		<content:encoded><![CDATA[<p>Mike,</p>
<p>The so-called Leibniz rule (also called &#8216;substitution of equals by equals&#8217;) states that, for all a, b, and function f:</p>
<p>   a = b  =>  f.a = f.b     .</p>
<p>Hence, you can see the first step as a mutual implication where, in one direction, function f is taking the square root, and in the other direction, function f corresponds to squaring.</p>
<p>Thanks for your comment!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: mike</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-1206</link>
		<dc:creator>mike</dc:creator>
		<pubDate>Mon, 15 Sep 2008 22:05:09 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-1206</guid>
		<description>Hi. 

delicious!truly elegant!

isn&#039;t the first equivalence actually an implication? m/n could be minus sqrt(2)...

tks</description>
		<content:encoded><![CDATA[<p>Hi. </p>
<p>delicious!truly elegant!</p>
<p>isn&#8217;t the first equivalence actually an implication? m/n could be minus sqrt(2)&#8230;</p>
<p>tks</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erik</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-739</link>
		<dc:creator>Erik</dc:creator>
		<pubDate>Wed, 13 Feb 2008 21:14:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-739</guid>
		<description>Thanks, I thought I was going mad. :)</description>
		<content:encoded><![CDATA[<p>Thanks, I thought I was going mad. <img src='http://www.joaoff.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jff</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-737</link>
		<dc:creator>jff</dc:creator>
		<pubDate>Wed, 13 Feb 2008 20:37:57 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-737</guid>
		<description>Dear Erik,

of course I have. It was a typo, I&#039;m sorry. It is corrected now. Thanks a lot!</description>
		<content:encoded><![CDATA[<p>Dear Erik,</p>
<p>of course I have. It was a typo, I&#8217;m sorry. It is corrected now. Thanks a lot!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erik</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-735</link>
		<dc:creator>Erik</dc:creator>
		<pubDate>Wed, 13 Feb 2008 19:26:48 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-735</guid>
		<description>Did you keep that sqrt on a little longer than necessary, or am I completely misunderstanding this proof?</description>
		<content:encoded><![CDATA[<p>Did you keep that sqrt on a little longer than necessary, or am I completely misunderstanding this proof?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jff</title>
		<link>http://www.joaoff.com/2008/02/11/direct-proofs/comment-page-1/#comment-729</link>
		<dc:creator>jff</dc:creator>
		<pubDate>Mon, 11 Feb 2008 09:47:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.joaoferreira.org/2008/02/11/direct-proofs/#comment-729</guid>
		<description>Hmmm. I&#039;m using a plugin called wp-latexrenderer. I have to investigate whether it works for comments.</description>
		<content:encoded><![CDATA[<p>Hmmm. I&#8217;m using a plugin called wp-latexrenderer. I have to investigate whether it works for comments.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
