
Is this how a rigorous Haskeller would lay out the proofs of the following theorems? This is Bird 1.4.6. (i) Theorem: (*) x = (* x) Proof: (*) x = {definition of partial application} \y -> x * y = {commutativity of "*"} \y -> y * x = {definition of "(* x)"} (* x) (ii) Theorem: (+) x = (x +) Proof: (+) x = {definition of partial application} \y -> x + y = {definition of "(x +)"} (x +) (iii) Theorem: (-) x /= (- x) Proof: (-) x = {definition of partial application} \y -> x - y /= {definition of prefix negation, which is not a section} (- x) _________________________________________________________________ Hotmail is redefining busy with tools for the New Busy. Get more from your inbox. http://www.windowslive.com/campaign/thenewbusy?ocid=PID28326::T:WLMTAGL:ON:W...

On Wed, May 19, 2010 at 01:12:16PM +0000, R J wrote:
Is this how a rigorous Haskeller would lay out the proofs of the following theorems? This is Bird 1.4.6. (i) Theorem: (*) x = (* x) Proof: (*) x = {definition of partial application} \y -> x * y = {commutativity of "*"} \y -> y * x = {definition of "(* x)"} (* x) (ii) Theorem: (+) x = (x +) Proof: (+) x = {definition of partial application} \y -> x + y = {definition of "(x +)"} (x +)
I would put each step and each {reason} on a separate line (or perhaps there is something wrong with the way your mail client handles newlines?) but other than that these look good.
(iii) Theorem: (-) x /= (- x) Proof: (-) x = {definition of partial application} \y -> x - y /= {definition of prefix negation, which is not a section} (- x)
This is not a proof. To prove an inequality like this you should simply give a counterexample. -Brent
participants (2)
-
Brent Yorgey
-
R J