By Developers, For Developers

Historical errata for Good Math

PDF PgPaper PgTypeDescriptionFixed onComments
4TYPO

In Irrationals pdf page 4 “According to legeng”

2013-01-26
5SUGGEST

Irrationals page 5 has:
the constant named after Liouville
consists of a string of 0s and 1s where for digit x, 10-x is a 1 if and only if there is some integer n such that n! = i.

Not sure where “i” comes in - Wolfram says: “Liouville’s constant is a decimal fraction with a 1 in each decimal place corresponding to a factorial n!, and zeros everywhere else. ”

Which I’m not sure I get either.

2013-01-26
6TYPO

Irrationals pdf pg 6 - chart of irr/trans number
22: irrational (Shows as a “2” followed by a lowered, smaller “2”)

2 to the square root of 2? (Wolfram says also trans)

2013-01-26To be honest, I have absolutely no idea what I meant when I wrote that - I can't remember number I was trying to talk about. I've followed your suggestion, and made it two to the square root of two. \n
7SUGGEST

Irrationals, page 7 “Not too long ago, an interesting fellow (and former coworker of mine!) named Gregory Chaitin (1947-),”

is this (or is it not) the Chaitin of the “Chaitin’s Constant” (omega) of 2 para. earlier?

2013-01-26In fact it is the same guy.
Zero4TYPO

On page 4 of the “Zero” excerpt, the second paragraph, second sentence, reads, “Aristotle was an ancient Greek philosopher who’s writings are still studied today as the foundations of the European intellectual tradition.”

“who’s” should be “whose”.

Thank you.

2013-01-26
Zero5ERROR

The third paragraph on this page begins, “From Brahmagupta, zero spread east (to the Arabs) and west (to the Chinese and Vietnamese).”

On my planet, the Middle East is West of India, and China and Vietnam are East of India.

Unless the author is making some kind of point that I don’t get, I think the directions in the sentence are reversed.

2013-01-26Sorry, I'm notoriously disastrous at directions. Thanks for the catch!
5TYPO

Equality xs symmetric. I think xs should be is

2013-01-26
5TYPO

Equality xs symmetric. I think xs should be is

2013-01-26
7TYPO

The Trick: Use hidden division by Zero to show that 1=2, Step 2. “Multiply both sides by x: xx^2 = xy” should read x^2 = xy

2013-01-26
4ERROR

Prior to listing the Peano axioms, you state that there are only five axioms, but you list six.

2013-01-26
5TYPO

The colon is missing after the “Equality Rules” heading.

2013-01-26
5TYPO

In the Equality Rules section, a comma is missing before “then” in “if A = B and B = C then A = C”.

2013-01-26
4TYPO

“you start with the naturals numbers” => “you start with the natural numbers”

2013-01-26
6SUGGEST

Is commutativity part of the definition of addition, or is it a property that falls out of the other 2 (identity and recursion)?

2013-01-29It's not part of the definition - it just emerges from the way that addition works. \n
19ERROR

e^(i.pi) is –1, not 1

2013-01-29Page number is wrong here; I'l try to figure out which page I made this mistake on, and fix it.
7SUGGEST

Perhaps a cleaner presentation of the proof is through an equality chain, rather than a series of equalities that imply each other.
(0 + 1 + .. + n + n+1) = (0 + 1 + .. + n) + (n+1)
= n(n+1)/2 + (n+1)
= …
= (n+1)(n+2)/2

2013-02-10I think this is a matter of taste - I prefer the presentation that I used.
13TYPO

should be
M+N = (m1+n1, m2+n2)
M-N = (m1+n2, m2+n1)

2013-01-26
17TYPO

“r * s” => “r x s”
“r plus s” => “r + s”
“multiple r times s” => “multiply r x s”

2013-01-26
18TYPO

“… there is exactly one value -x. called the additive inverse of i, so that i+-i=0, …” =>
“… there is exactly one value -x, called the additive inverse of x, so that x+-x=0, …”

2013-01-26
17TYPO

in #7, should use x instead of i, could be confusion between the variable i and sqrt(–1)

2013-01-26
17TYPO

“t times u = s” => “t times u = x”
also, maybe use operator symbols instead of spelling out “times” and “plus”, unless that was done on purpose?

2013-01-26
18TYPO

“for all g where 0 <= g” => “for all x where 0 <= x”

2013-01-26
18ERROR

If you read, “either a<=b or b<=a” as exclusive-or, then it’s false.

2013-01-26
20SUGGEST

The model of rationals doesn’t explain how to multiply 2 rationals. Should introduce that before “a/b and c/d are equivalent if a/b x (c/d)^–1 = 1”

2013-01-26
20ERROR

“B is the set of real numbers larger than r” => “B is the set of rational numbers larger than r”

2013-01-27
20ERROR

definition of B should be
B = { r: r x r > 2 and r >= 0 }
otherwise –3 belongs in B

2013-01-27
21SUGGEST

Consistency in set notation. On page 20 you have { variable : condition } and on page 21 you use { variable | condition }.

2013-01-27
21TYPO

Should read:
Addition: the sum X+Y of two cuts X=(XL, XR) and Y=(YL, YR) is (ZL,ZR) where ZL ={x+y|x in XL and y in YL} and ZR ={x+y|x in XR and y in YR}.

2013-01-27
26TYPO

Bottom of the page “2_2: irrational”
I’m not familiar with this notation (subscript 2), is it a typo?

2013-01-27
28TYPO

“proerties” => “properties”

2013-01-27
33ERROR

“(he of the series)” => “(he of the sequence)”

2013-01-29
33SUGGEST

“If you include it in the set of real numbers, then they’re not a group”
might be better on the next page, after you’ve introduced groups as a mathematical structure, as a counterpoint to the Integers not being a group unless you have 0.

2013-02-10
34SUGGEST

“it’s meaningless.” (missing a period)

I would stipulate that it’s no less meaningful than anything else in math. We could define 1/0 to be anything we wanted, but we’d end up with contradictions pretty quickly. Might be more accurate to say it’s useless to define 1/0 to be anything, so we leave it undefined.

2013-01-29
42TYPO

“Golden Ration” => “Golden Ratio”

2013-01-27
43ERROR

“Fibonacci series” => “Fibonacci sequence”

2013-01-29
45TYPO

“perfect rations” => “perfect ratios”
“Ration” also appears in the caption to figure 3 on page 42.
“studinkenes” — not familiar with this word; neither is Google.

2013-01-27
13-14ERROR

“To describe division as a well-defined operation, we need
to have another kind of numbers—the real numbers—which we’ll talk about next.”

Rather, you need Rational Numbers (Q). It is a pity that these are not treated in a separate (possibly, short) chapter, but instead lumped together with the Real Numbers.

2013-02-10I agree, but I'm working within constraints. It's a compromise between covering everything I'd like to cover, and keeping the book at a reasonable length that's engaging for readers of different levels. Rationals didn't make the cut, not because they're not important, but because there just isn't space. \n
23SUGGEST

“Which leads us to today’s strange numbers”: Is “today” a legacy from a former blog post? Does not read well in a book.

2013-01-27
23SUGGEST

“They do make sense, but they are uncomfortable and ugly to mathematicians.” Do you mean “to non-mathematicians”? Anyway, an over-generalization like this has not place in a math book. Please, qualify/relativize, e.g. “to some people”.

2013-01-27
4TYPO

line 10: instead of “ambgiuity”, read “ambiguity”.

2013-01-26
24ERROR

“transcendental numbers are numbers that can’t be described by algebraic operations: there’s no finite sequence of multiplications, divisions, additions, subtractions, exponents, and roots that will give you the value of a transcendental number”: technically speaking this is wrong; the operations are applied “in reverse” here. It might be better first to define Algebraic Numbers as those numbers that are solutions to algebraic equations (equations involving an unknown x, natural numbers and operations +, -, *, /; e.g. √2 is a solution of x*x = 2). Transcendental Numbers are Real Numbers that are not Algebraic. Note that some algebraic numbers can indeed be expressed by using the operations plus roots (e.g. √2), but not all (think of solutions to degree-5 polynomials and above). Roots are the inverse of exponentiation, but that operation is not enough to solve all algebraic equations.

2013-02-10
24TYPO

“According to legeng”: should be “legend”

2013-01-27
6TYPO

instead of “let’s taking”, read “let’s take”

2013-01-26
25ERROR

“If they were correct, then any irrational number could be computed by a finite sequence of addition, subtraction, multiplication, division, exponents, and roots.” This is a misconception (also see preceding page): the root operator does not suffice to express solutions to all algebraic equations; the algebraic part is in the type of equation to which these numbers are solutions (roots are not allowed in algebraic equations). It would be more correct (but less impressive) to write “If they were correct, then any irrational number could be expressed as solution of an equation involving a finite sequence of addition, subtraction, multiplication, division, and natural numbers.”

2013-02-10
7SUGGEST

“since we know that the rule is true for 0, then it must be true for 1”: “since …, then …” sounds strange to me. Probably “then it must also be true” sounds better!?

2013-01-26
42SUGGEST

The continued fraction for the Golden Ratio also shows that it is the irrational number that is hardest to approximate by fractions. See e.g. Peter Camaron’s blog on Fibonacci numers, Part 4: cameroncounts.wordpress.com/2012/07/08/fibonacci-numbers-4

2013-01-29I don't see the sense of calling it the "hardest" - it's not any harder than any other infinite series.
43SUGGEST

Phi and pentagram: Phi is also the ratio of the length of a diagonal of a regular pentagon and its side length; you don’t need the (more complicated, maybe more mystical) pentagram.

2013-01-29True, but I like using the pentagram because of the mystic connotations. \n
44TYPO

“apophenia—finding numeric patterns where are none”: insert “there” before “are”

2013-01-29
50SUGGEST

I wonder if you’d prefer Euler’s equation presented as e^i(pi) + 1 = 0, associating arguably the 5 most important constants in a single equation.

2013-01-29I know many people prefer that, but I've always found it more interesting in this form. What amazes me about it is the fact that these two seemingly unrelated transcendental numbers turn into -1; at that seeing it in this form also shows why it makes sense. \n
47TYPO

“one of the only 12-part fugues in the canon of European music”: sounds semantically broken. “one of the few …” would work; or “the only …”, but the combination is weird; unless you want to emphasize that the fugue has “only 12 parts”.

2013-01-27
38SUGGEST

“the most amazing equation in all mathematics”: it is even nicer to write this equation as “e to the power iπ + 1 = 0”, because it then involves the two other fundamental constants 0 and 1.

2013-01-29
51TYPO

Stray > after “complex” on line 5.

2013-01-29
59TYPO

“to turn a “/” not into “V”“: delete ”not" (or should it be “notch”?)

2013-01-29It's supposed to be notch. \n
65TYPO

“its inventors decided to it”: insert “add” after “to”

2013-01-29
67ERROR

“An Egyptian fraction is expressed as the sum of a finite set of unit fractions.”: insert “distinct” before “unit fractions”. Otherwise, 2/3 can be written as 1/3+1/3, etc.

2013-01-29
72ERROR

The continued fraction for 2.3456 is wrong, and also the format at the bottom of the example is wrong. Mathematica tells me that 2.3456 = 1466/625 has continued fraction {2, 2, 1, 8, 2, 1, 1, 4}; maybe a rounding error somewhere? Concerning the format: the “1+4” on the same height are unconventional.

2013-02-10
75ERROR

“it’s easy to generate exactly the next convergent”: only for some irrational numbers; not in general. Also, for some irrational numbers, it is easy to generate the next decimal (cf. Liouville’s number), but not for most; and in other bases than 10, it the answer may differ. That is another nice thing about continued fractions: they are base-independent.

2013-01-29
76TYPO

“continued fractions reveals the underlying structure of the numbers”: “reveal”

2013-01-29
78TYPO

“arithmetir”: “arithmetic”

2013-01-29
78TYPO

“that’s allows”: delete “’s”.

“but once you do the implementation itself”: insert “,” after “do”

2013-01-29
133SUGGEST

Rather than showing details for (the proof of) the unequicardinality of the Natural and the Real Numbers, I’d suggest to do so for unequicardinality of a set and its power set. This proof can be illustrated with finite examples, and the same diagonalization argument applies. The Real Numbers in [0,1) can be viewed as 0/1-sequences, which in turn correspond to subsets of N, whose cardinality exceeds that of N. The direct proof also has to deal with some practical annoyances (like the non-uniqueness of decimal expansion: …d999… = …(d+1)000… for d < 9).

2013-02-10
164TYPO

“because א0 is the same as 0 + 1”: insert aleph before bare subscript 0

2013-02-10
VIIISUGGEST

Quoting from the preface: “This book is my way of reaching out to a wider audience. Math is fun, and beautiful, and fascinating.” Given the book’s title “Good Math”, the omission of other math topics from the book, might leave some readers with the impression that you consider those other topics Bad Math. I’d like to suggest that you include some kind of a disclaimer or such. Other math topics (Geometry, Combinatorics, Number Theory, Algebra; to name the most important ones from the International Math Olympiad e.g.; but also Calculus, Probability Theory, Topology, etc.) are equally “good”, “beautiful”, and “fascinating”. The book “1089 and All That: A Journey into Mathematics” by David Acheson is almost completely complementary to this book in choice of topics; you could refer to it to complement your choice… [Looking forward to the rest of the book]

2013-01-26I appreciate the suggestion, but shouldn't it be obvious to anyone reading a 200 page book that it's not covering every possible topic in math? \n
35TYPO

In the box “Trick: Use Hidden Division by Zero to Show that 1=2”, step 2 should be x^2 = xy instead of xx^2=xy

2013-01-27
53ERROR

Are you sure the voltage of an AC current is really constant? I’m not really an expert here, just going off my understanding of the need for things like RMS voltage to describe AC systems. Seems like that wouldn’t be necessary if the voltage was really constant.

2013-01-29That's what my dad taught me. \n
54TYPO

Missing paren at end of page.

2013-01-29
65TYPO

INTERCAL should be written in all caps

2013-01-29
67SUGGEST

I don’t think everyone is going to know what “CS” stands for.

2013-01-29
71TYPO

“it’s fractional form” => “its fractional form”

2013-01-29
75ERROR

“infinite series” => “infinite sequence”

2013-01-29
77TYPO

Missing closing “]” in def toString

2013-01-29Actually a truncation by the typesetting process; \nI reformatted the code.
77ERROR

“FloatCfrac” => “DoubleCFrac”, if that’s what was intended?
CFracZero is not defined.

2013-02-10
77TYPO

“to get the next convergent of the result of a continued fraction” =>
“to get the next convergent of the result of an operation on two continued fractions”, if that’s what was intended

2013-02-10
78TYPO

“in a way that’s allows you” => “in a way that allows you”

2013-01-29
82TYPO

“There’s another very useful logic called intuitionistic logic, A or not A is not necessarily true”: insert “in which”

2013-02-10
82TYPO

“toreduce” => “to reduce”

2013-02-10
86TYPO

“or”(called disjunction), and “ (called negation)
insert “not”

2013-02-10
86ERROR

“A xor B can be written A ∨ B ∧ ¬(A ∧ B).” =>
“A xor B can be written (A ∨ B) ∧ ¬(A ∧ B).” (in the footnote)
might also want to introduce the term “xor” before using it here

2013-02-10
87ERROR

“and also the inverse: if the B part is false, then the A part must also be false.”
Maybe you’re using “inverse” colloquially, but technically the inverse of A => B is ~A => ~B.
~B => ~A is the contrapositive.

2013-02-10
87SUGGEST

Might want to point out that A <=> B is equivalent to A => B & B => A, as the notation suggests.

2013-02-10
88ERROR

" P is true for all possible values of a." => " P (a) is true for all possible values of a."

2013-02-10
88SUGGEST

Explain how to read out an existential: “There exists an x such that x is Mark’s father”

2013-02-10
89SUGGEST

Be consistent about using P and Q vs P (x) and Q (x) in Modus Ponens and Weakening.

2013-02-10
90TYPO

In the example, be consistent about “axiom” vs “AXIOM”

2013-02-10
91SUGGEST

This example doesn’t appear to be very symbolic or mechanical. Suggestion:

AXIOM 1: P (0) & (\\forall n: P (n) => P (n+1)) => \\forall n: P (n)
P (n) = “the sum from 0 to n is n*(n+1)/2”
Want to prove that \\forall n: P (n) is true.
Proof:
1. P (0) = … is true by inspection
2. pick n arbitrarily.
3. assume P (n) is true
4. do the algebra to show P (n+1) is true
5. from steps 3 and 4 infer P (n) => P (n+1)
6. since n was arbitrary (step 3), \\forall n: P (n) => P (n+1) is true
7. from steps 1 and 6 we have P (0) & (\\forall n: P (n) => P (n+1))
8. apply modus ponens to step 7 and AXIOM 1 to get \\forall n: P (n), completing the proof

One nit is that AXIOM 1 really needs to quantify over predicates and I think that’s technically a second-order logic thing.

2013-02-10Yes, the axiom really is second-order. I think it's usually described as an axiom-schema, but I didn't want to get into that - early readers already complained that this chapter was getting too bogged down in formalisms. \n
13ERROR

If you have two objects from our model of the Integers,
they’re defined as pairs of Natural numbers: M=(m1, m2) and
N=(n1, n2). Addition and subtraction on them are defined by
the following rule:

M + N = (m1 + n1, m2 + m2)
error? m2+m2?
expected: m2+n2

M - N = (m1 + n2, m2 + m1)
error? m2+m1?
expected: m2+n1

2013-01-29
5TYPO

Under “Equality Rules” the phrase “equality xs symmetric” should be “equality is symmetric”

2013-02-10
8TYPO

“Sort-of.” should be “Sort of.”

2013-02-10
97SUGGEST

In the example, in step 3, it’s not clear what “add” means. Later in step 5 you say “add to the tree”, so I get what’s going on. A clearer presentation might be to actually draw the tree. You and I have a clear idea of what a tree is in this context, but a lay audience might not. It’s also not clear where in the tree these things are being added, so drawing out the tree at each step would help.

2013-03-13
98SUGGEST

If this is a definition of Cousin(a, b), do you just want to write it as
Cousin(a, b) = ∃ m: ∃ n: Sibling(m, n) ∧ Parent(m, a) ∧ Parent(n, b)
?

2013-02-10
99TYPO

In the original statement to prove, it was just an implication (=>), but in steps 1-3 you have it as <=>.

2013-02-10
99TYPO

step 14, “Parent(e’ d’)” => “Parent(e, d’)”

2013-02-10
99TYPO

step 17: “you’ll get: Grandparent(g, d’)” => “you’ll get: Grandparent(g, e’)”

2013-02-10
99SUGGEST

For readability, 2 suggestions:
1. Put the current statement on a line by itself, separate from the explanation, so it’s easier to scan
2. If a step draws from a previous step, reference that step explicitly. For example, step 15 should reference steps 10 and step 13 (btw should the statements in steps 15 and 16 have an \\exists in front of them?) and step 16 should reference steps 14 and 15.

2013-03-13
100SUGGEST

“Since we never branched”
Seems like the point of trees is branching, but your first 2 examples don’t have any branching. Maybe find a simple proof to introduce that does involve branching, and draw out the tree. I think that would help get the gist across. I see you have that coming up in the Branching Proofs section on page 100, so maybe put that example first?

2013-02-10
101SUGGEST

The constructive proof of this theorem is a lot simpler: assume A, 2 modus ponens later derive C, introduce A => C.

I’ll attempt to draw it here, but there’s another treelike way to draw proofs.


A => B & B => C
———————-&e —u ———————
A => B A A => B & B => C
——————————— =>e ————————&e
B B => C
——————————————————=>e
C
———-=>i(u)
A => C

&e = & elimination
=>e = => elimination (modus ponens)
=>i(u) = => introduction using the assumption u

Not sure if this is what you’re after, but it’s a simpler proof and the treelike structure is more apparent (at least to me).

2013-02-10
7TYPO

In steps 3 and 4, the superscript 2’s are cut off above their horizontal axes, leaving only their bottom half visible. Viewed under Linux using xpdf, evince, and acroread.

2013-02-10Sorry for the trouble. I can't reproduce - looks fine using xpdf and acrobat for me. Can you wait for the next beta (this friday), and then look again? I'm hoping that it's a random typeset glitch that's causing trouble for your specific screen res, and will hopefully just go away with a new version. if it doesn't, please let me know. \n
59SUGGEST

“…so it looked sort of like the greek
letter psi.” I don’t know the Greek alphabet, so had to look it up. Would including an actual psi (Ψ) be good here?

2013-02-10It would be good, but we've got issues with the typesetting software for kindle, which makes it unfeasible.
59TYPO

“…so it looked sort of like the greek
letter psi.” “greek” should be capitalized.

2013-02-10
64TYPO

‘it’s true that “IIII” and “VIII” really do look better
than “IV” and “VIII”’

This seems to say that “VIII” looks better than itself.

2013-02-10
82SUGGEST

“In first order
predicate logic…” might be improved by adding the acronym, so that the first use of the acronym and the acronym’s definition are together: “In first order predicate logic (FOPL)…”

2013-02-10
86TYPO

“There are two
kinds of implication: simply if, and if-and-only-if.” Should that be “simple if” instead of “simply if?”

2013-02-10
106TYPO

The Prolog definition for parent lies where the text claims the definition of grandparent should be; the Prolog definition of grandparent is missing.

2013-02-10
107TYPO

The prolog snippet for sibling and cousin also contains definitions for nat and plus. Should the definitions for nat and plus be in the next section instead?

2013-02-10
26ERROR

At the end of the first paragraph, the value of e^(iπ) should be –1, not 1.

2013-02-10
50TYPO

In the last sentence of the first paragraph, “someimes” should be “sometimes”.

2013-02-10
52TYPO

In the second paragraph of the “What i means” section, “you’re computer” should instead read “your computer”.

2013-02-10
55TYPO

At the end of the third sentence in the second paragraph, there is an extra period.

2013-02-10
55TYPO

In the last sentence of the second paragraph, it should read “a pair of ancient systems of notation”. You could also use “two ancient systems of notation” if the usage of two “of”s is awkward.

2013-02-10
57TYPO

In the second sentence of the first paragraph, it should read “Western culture” instead.

2013-02-10
57TYPO

In the fourth sentence of the first paragraph, “texbooks” should be “textbooks”.

2013-02-10
58TYPO

In the second sentence of the second paragraph, it should read “Middle Ages”.

2013-02-10
58TYPO

In the last sentence of the third paragraph, there should be a space following “after”.

2013-02-10
58TYPO

The end of the second to last paragraph needs a period.

2013-02-10
59TYPO

Change “Xo XCIX = 99” to “So XCIX = 99”.

2013-02-10
65TYPO

I’m not sure of a proper suggestion, but the following sentence is either missing some words or has a typo: “… its inventors decided to it, but chose to use their own, custom variant of Roman numerals”.

2013-02-10
68TYPO

In the first paragraph of the “Fibonacci’s Greedy Algorithm” section, “egyptian” should be capitalized.

2013-02-10
73TYPO

First sentence in first paragraph is missing an ending period.

2013-02-10
86TYPO

In the first paragraph, “relationships then” should be “relationships, then”.

2013-02-10
88TYPO

In the top paragraph, the set membership symbol (\\in) is not rendered.

2013-02-10
88TYPO

In the first paragraph in the “Show me something new!” section, “No” should be “Now”.

2013-02-10
93TYPO

In the third paragraph, “al of the cases” should be “all of the cases”.

2013-02-10
95TYPO

In the second paragraph, “an mistakes” should be “any mistakes”.

2013-02-10
95TYPO

In figure 10, the first two rules use “equilavent” instead of “equivalent”.

2013-02-10
96TYPO

The second to last sentence of the first paragraph needs an ending period.

2013-02-10
96TYPO

In the first paragraph, “ceate” should be “create”.

2013-02-10
97TYPO

“infererrence” should be “inference”.

2013-02-10
99TYPO

In step 17, “GrandParent” should be “Grandparent”.

2013-02-10
103TYPO

The first sentence in the last paragraph has an extra period.

2013-02-10
106TYPO

There is an extra period before “I can ask the Prolog interpreter”.

2013-02-10
106TYPO

In the source code, the definition of the predicate should be named “sibling”.

2013-02-10
107TYPO

“afact” should be “a fact”, and “in incorrect” should be “is incorrect”.

2013-02-10
108TYPO

“the the result” should be “the result”.

2013-02-10
109TYPO

“definining” should be “defining”.

2013-02-10
112TYPO

In the second paragraph of the “A Quick Quicksort Refresher” section, “Then is goes” should be “Then it goes”.

2013-02-10
113TYPO

“followeb” should be “followed”.

2013-02-10
114TYPO

“If the lists to partition” should be “If the list to partition”.

2013-02-10
118TYPO

“diffult” should be “difficult”.

2013-02-10
118TYPO

“real-word” should be “real-world”.

2013-02-10
129SUGGEST

In the description of a subset, the two predicates should be consistently defined, that is, either “IsNatural(n) and IsEvenNatural(n)” or “IsNatural and IsEvenNatural”.

2013-02-10
130ERROR

The formal statement for a subset should use implication, instead of if-and-only-if.

2013-02-10
131TYPO

“Cantors” should be “Cantor’s”.

2013-02-10
131TYPO

“He called the this kind of collection a set” should be “He called this kind of collection a set”.

2013-02-10
132TYPO

“then set with extra elements” should be “then a set with extra elements”.

2013-02-10
132TYPO

The subscript for the set of even natural numbers is not rendered correctly.

2013-02-10
133TYPO

“Thas” should be “This”.

2013-02-10
136TYPO

“Russel’s” should be “Russell’s”.

2013-02-10
140ERROR

For the axiom of extensionality, “C \\in A \\implies C \\in B” should be “C \\in A \\iff C \\in B”.

2013-02-10
141TYPO

“We follow a the” should be “We follow the”.

2013-02-10
141TYPO

In the second sentence of the axiom of pairing section, a comma should be before “then”.

2013-02-10
141ERROR

Both axiom of pairing and axiom of union use \\implies when \\iff is correct.

2013-02-10
142TYPO

“set-referential sets” should be “self-referential sets”.

2013-02-10
143TYPO

Remove the extra “N,” from the second line.

2013-02-10
145TYPO

I’m not sure what to suggest but there is something missing from this line: “every set like the problematic set of all sets that do not contain simply can’t be expressed in a paradoxical way”.

2013-02-10
145SUGGEST

Disregard erratum #50684.

2013-02-10
148TYPO

“caled” should be “called”.

2013-02-10
150TYPO

“they d provide” should be “they provide”.

2013-02-10
151TYPO

“Mathematicians like to say that can recreate” should either be “Mathematicians like to say that they can recreate” or “Mathematicians like to say they can recreate”.

2013-02-10
152TYPO

Change “The axioms for” to “The axioms form”.

2013-02-10
154TYPO

Change “So – the we’ve” to “So – we’ve”.

2013-02-10
101ERROR

When reading on kindle - there is problem displaying proof, when it’s in frame - it’s impossible to read whole proof, only beginning of it.

2013-02-10
155ERROR

Change “-(1+1)/2 = –2” to “-(1+1)/2 = –1”.

2013-02-10
155TYPO

Change “What we have no show” to “What we have to show”.

2013-02-10
161TYPO

Change “ever-rager infinities” to “ever-larger infinities”.

2013-02-10
156TYPO

Change “modelled” to “modeled”.

2013-02-10
157TYPO

Change “modelled” to “modeled”.

2013-02-10
165TYPO

Change “Groups cotpure what what” to “Groups capture what”.

2013-02-10
167TYPO

Change “That’s a simple of example” to “That’s a simple example”.

2013-02-10
168TYPO

Change “anther” to “another”.

2013-02-10
171TYPO

Change “undestand” to “understand”.

2013-02-10
172TYPO

The second sentence in the first paragraph is incomplete (probably missing words or punctuation).

2013-02-10
173TYPO

Change “recieved” to “received”.

2013-02-10
9TYPO

3rd paragraph: instead of “They money is flowing”, write: “The money is flowing”.

2013-02-10
10TYPO

lines 1 and 2: instead of “Negative numbers
allow you do move in the other direction.”, write: “allow you to move”.

2013-02-10
11TYPO

instead of: “that will obey you axioms that we’ve defined.”, you should probably write: “obey the axioms”.

2013-02-10
12SUGGEST

“When we’re doing things like building a model of the Integers, very often the way we define doesn’t create exactly one value in the value for each Integer.”

The second part of this sentence (after the comma) is incomprehensible to me: 1. “the way we define” WHAT? 2. What does “one value in the value” mean to say?

2013-02-10
16TYPO

“Any place on that line that you look is a real real number.”

Is the repetition of the word “real” intended here?

2013-02-10Yes, it is. It's an attempt at a sort-of pun. That is, there's a "real" thing there, which is a "real number". I'll do some typesetting tweaks to try to make that clearer.
17TYPO

instead of: “you can add r + s or multiple r × s.”, write: “multiply”.

2013-02-10
17TYPO

“you can find pairs of real numbers like r and s,
or t and u where r + s = x and t × u = s.”

Shouldn’t that read: “t × u = x.” !?

2013-02-10
19TYPO

in: “written out in formal logical form A set of values”, a period sign is missing after “form”.

2013-02-10
20TYPO

in “and use it define ratio equivalence.”, the word “to” is missing.

2013-02-10
20TYPO

in “Mathematicians have have a bunch of tricks”, delete one “have”.

2013-02-10
20TYPO

instead of: “is an mathematical object”, write “is a”.

2013-02-10
14SUGGEST

“To describe division as a well-defined operation, we need
to have another kind of numbers—the rational numbers—
which we’ll talk about next.”

I agree with Tom Verhoeff that it is not a good idea to mix rational and real numbers the way you do in Chapter 3. At the end of Chapter 2, you say: “—the rational numbers— which we’ll talk about next.” … but then you still continue with the real numbers, and just mix in the rationals in a quite confusing way. I strongly suggest to add a separate chapter on rationals before proceeding to the reals and the Dedekind cut. You could also introduce countable infinity (integers, rationals) and over-countable infinity (reals) this way.

2013-02-10
23SUGGEST

“No calculation that involves them can ever be solved exactly.”

I think that’s not correct. The square of the square root of 2 can be solved exactly.

2013-02-10Trying to find an alternate phrasing for that. \n \nThe idea that I want to get across is that if you try to write them out and do arithmetic with them, you're not going to get precise answers. When we write that the sqrt(2)*sqrt(2)=2, we're doing symbolic manipulations. Write it out, to however many digits you want, in any representation you want, and try to do the arithmetic, you'll only get approximations. \n
25TYPO

“trigonometry” instead of “triginometry”

2013-02-10
26TYPO

Instead of “Once e was shown to be transcendentals”, write “transcendental”.

2013-02-10
32TYPO

“actually” instead of “actualy”.

2013-02-10
32TYPO

“that looked like a pair of backslashes (//)”

slashes or backslashes?

2013-02-10
33TYPO

“He was the first to use zero as a real number, and work out a set of algebraic rules about how zero, and positive and negative numbers worked.”

I think both commas are wrong.

2013-02-10
33TYPO

“(1048-1131)who”: a space is missing after “)”.

2013-02-10
34SUGGEST

instead of “the way that we define what division means, it’s
meaningless.”, I’d rather write: “according to the way that…”

2013-02-10
35TYPO

in line 2: “dividing by zero makes no sense: it’s meaningless”, the period sign is missing.

2013-02-10The period is definitely there in the book source, and in PDF when I view it from my local build. Must be a glitch in the PDF view.
39TYPO

instead of “Leibniz discovery”, write: “Leibniz’s discovery”.

2013-02-10
41SUGGEST

“The thing is, the value of the Golden Ratio is (1+sqrt(5))/2, or roughly 1.6”: the expression is only an approximation of the golden ratio, so you’d better write:

“the Golden Ratio is approximately (1+sqrt(5))/2, or roughly 1.618”

2013-02-10The golden ration isn't approximately (1+sqrt(5))/2 - it's exactly that. The numeric vversion, 1.6 (or 1.618, or whatever approximation you want), is approximate.
42SUGGEST

The continued fraction you give on page 42 reflects the fact that 1/phi = phi-1. The continued square root reflects the fact that phi*phi = phi+1. I think these two equations make the Golden ratio a truly remarkable number!

2013-02-10
41SUGGEST

My note on the equation for the golden ratio on page 41 is wrong, so just delete it. The equation is exact. I’m sorry!

2013-02-10
44TYPO

“Euclid wrote about it” instead of “write”

2013-02-10
45TYPO

“in many of this sketches and paintings”: it’s probably “his” instead of “this”.

2013-02-10
49TYPO

“the same people who really first understood
the number.”: obviously, you mean to say “the number zero” here.

2013-02-10Very strange - the book source has a zero there, and I see it in the PDF. Which file format/device are you using?
49TYPO

“and various scholars, like the Greeks,
encountered them in various ways”: it is not clear what the word “them” refers to.

2013-02-10
49SUGGEST

“The first real step towards i was in Italy”

Better: “was made in Italy”.

2013-02-10
50TYPO

“i got its unfortunate misnomer, the “imaginary number” as
a result“: after ”imaginary number", a second comma is missing.

2013-02-10
50TYPO

instead of “Rene Descartes”, write: “René”.

2013-02-10
50SUGGEST

“he discovered one of the most fascinating and bizarre mathematical discoveries ever”. In order to avoid the word repetition, better write either: “made one of the … discoveries” or: “discovered one of the … equations…”

2013-02-10
51TYPO

instead of “Algebraic numbers are really two dimensional”, write: “two-dimensional”.

2013-02-10
50SUGGEST

“I have no idea how many years it’s been since I was first exposed to this, and I still have a hard time wrapping my head around why it’s true.
eiθ = cosθ + isinθ”

At least, I found the trigonomety involved here quite intuitive when explained by a circle of unit radius around the origin of the imaginary plain, with a rectangular triangle with unit hypotenuse, real part cos theta, imaginary part i*sin theta and angle theta at the origin inscribed in this unit circle. Less intuitive is the fact that raising e to the power of i*theta corresponds to a counter-clockwise rotation of the unit vector by an angle of theta, as it’s not so obvious what e has to do with that.

2013-02-10
71TYPO

instead of “But fractions are terribly for that”, write “terrible”.

2013-02-10
73TYPO

The explicitly written continued fraction on top of page 73 seems to contain two typos: wrong repetition of 3 after 2;2,3 and the 1 + in front of the 4.

I must confess that I don’t understand the offsets (“of by …”) in your example, and how they are calculated.

2013-02-10
76TYPO

In “All of the square roots of integers that are non-perfect squares square roots have repeated forms in continued fractions.”, delete the second “square roots” after “squares”.

2013-02-10
79TYPO

In “What we’ll see in this part of the book what logic is, what a proof is,”, delete the first “What”.

Better: “In this part of the book, we’ll see what logic is …”

2013-02-10
81TYPO

In “But there’s one one thing about Star Trek”, delete the repeated “one”.

2013-02-10
83TYPO

in “try toreduce things”, a space is missing.

2013-02-10
82SUGGEST

After: “In first order predicate logic”, I’d insert “(FOPL)” in order to explain the abbrevation you are using in the following text. Otherwise, one might wonder what “FOPL” means to say.

2013-02-10
85TYPO

In “we’ll write predicates an uppercase”, insert “as an”.

2013-02-10
94TYPO

Instead of: “to prove there there isn’t a largest even number”, write: “that there isn’t”.

2013-02-10
94TYPO

Instead of “to prove there there isn’t a largest even number”, write: “that there isn’t”.

2013-02-10
96SUGGEST

“The law of the excluded middle is a tautology, which means
that it’s a fundamental truth that must always be true,
regardless of what axioms we choose.”

I think this is not correct. A tautology is not always true “regardless of what axioms we choose”, but always true regardless of the Boolean values of the variables involved.

2013-02-10
94-95SUGGEST

I am sorry, but from your description “Building a Simple Proof with a Tree” on pages 94f, I get NO IDEA how a “truth tree” looks like and how it works. I understand that you can proof something by showing that its negation leads to a contradiction, but nonetheless I don’t understand the “truth tree” stuff.

2013-03-13
181TYPO

instead of “deep or nested patters.”, write: “patterns”

2013-02-10
91SUGGEST

The highlighted section on “Prove that for all N, that the sum of the natural numbers from 0 to N is N (N+1)/2.” in the “Show me something new!” section is cut off in the Kindle version from number 3 onwards. Some of the other similar highlighted sections suffer the same problem.

2013-03-13
111ERROR

Running the source code for p. 111 returns the following error:

ERROR: plus/3: Type error: `integer’ expected, found `s(s(z))’

found @ swi-prolog:

“True if Int3 = Int1 + Int2. At least two of the three arguments must be instantiated to integers.”

2013-02-24Stupid mistake. Fixed.
204TYPO

In ‘The result is “11111” (“8”, in decimal)’, ‘8’ should read ‘5’.

2013-03-13
213TYPO

“Designing bizaare programming languages”: bizaare -> bizarre

2013-03-13
165ERROR

“for any non-empty set S, the set of all subsets of S (also called the powerset of S) is strictly larger than S”: the condition of non-emptiness is not needed, also the powerset of the empty set (which contains one element, viz. the empty set) is strictly larger than the empty set (which contains no elements).

2013-02-24
165ERROR

“there’s got to be another infinite set larger than it [aleph0]; we’ll call that aleph1”: this formulation is not sufficiently precise. The powerset of aleph0 has larger cardinality, proving that there is a set with larger cardinality; aleph1 is defined as the smallest cardinality larger than aleph0; it is not (necessarily) the powerset of aleph0.

2013-02-24
167TYPO

“We use the symbol omega for the first trans- finite ordinal.”: further down, the Greek letter ω is used; I assume you want it here (and in other places) as well. The same holds for the word “aleph” and the Hebrew letter ℵ.

2013-03-13
59TYPO

Second bullet point should start XVI = 16 (not 15)

2013-03-13
85OK

End of first paragraph ‘you’ is duplicated.

2013-03-13I can't find a duplicate an the cited page number.
98SUGGEST

Paragraph 4 of the section headed “A Proof From Nothing” seems to repeat the contents of paragraphs 2 and 3

2013-03-13
215TYPO

“Designing bizzare programming languages”: change “bizzare” into “bizarre”

2013-03-20
217SUGGEST

“for any non-empty set S, the set of all subsets of S (also called the powerset of S) is strictly larger than S”: delete “non-empty”, because it is an unnecessary condition.

2013-03-20
222SUGGEST

“Python and Ruby both have strong λ-calculus influences, and even C template meta-programming is profoundly influenced by λ-calculus.”: Also Java 8 will have lambda expressions.

2013-03-20
222SUGGEST

Both “λ-calculus” and “λ calculus” are used (with and without hyphen). Is there a (grammatical) reason for that? If not, please unify.

2013-03-20
227TYPO

“It will only work correctly if, when it returns the function λ y . x + y, if the variable x gets”: delete the second “if”

2013-03-20
228TYPO

“because it contains n inner λ”: change “n” into “an”

2013-03-20
228TYPO

“and p” is still free“: delete the primes/apostrophes on ”p"

2013-03-20
229TYPO

“substituting (or αing)”: it is probably helpful to also use the notation α[x/3] here; maybe it is more readable to write α-ing (with hyphen)

2013-03-20
229TYPO

“One more example, just for the sake of being annoying.”: It might be good to show an example where the β reduction takes place inside another λ, i.e., not at the top level of the expression.

2013-03-20
229SUGGEST

“λx.Be = B[x : = e] …”: two remarks; (1) would it not be better to write “λx.Be” as “(λx.B)e”? (2) why use two different notations for substitution: α[x/y] and B[x : = e]?

2013-03-20
229ERROR

“if free(e) ⊆ free(B[x : = e])”: It is inconvenient (and unusual) that the condition for a definition involves the right-hand side of that definition. Moreover, the condition is not correct, because a free variable in e can occur both free in B and bound in B; if a free y in e happens to occur in the context of a y that is bound in B, then there is trouble. Here is an example: (λx.(λy.x y) y) (λz.y + z), where B = (λy.x y) y, containing y both free and bound; your condition is satisfied, but still there is an unintended capture of y. A sufficient condition would be “if free(e) and bound(B) are disjoint”, but this is a bit stronger than necessary, because the x being replaced, need not occur in a place where a variable free in e is bound in B. Making the condition minimal is tedious. Showing an example is more helpful, and also how α-conversion can be used to make the definition applicable.

2013-03-20
230SUGGEST

“eta-conversion”: why not write this also with a Greek letter: “η-conversion”?

2013-03-20
230TYPO

“as long as for all possible parameter values x, f x = f x”: the last “f” needs to be a “g”.

2013-03-20
231TYPO

“different evaluation strategies:eager”: insert a space before “eager”.

2013-03-20
232TYPO

“and perform the them”: delete “the”

2013-03-20
232SUGGEST

“the outmost expressions”: why not “outermost” (like “innermost”)

2013-03-20
233TYPO

“how to ready and write it”: replace “ready” by “read”

2013-03-20
235TYPO

“as we described in in the previous chapter”: replace first “in” by “it”

2013-03-20
235TYPO

“So far we have no way of doing choices, and repetition?”: replace “?” by “.”.

2013-03-20
236TYPO

“None of this is built in to the λ-calculus, but it’s all stuff that we can build.”: delete this sentence, as it duplicates the preceding phrases.

2013-03-20
236TYPO

“In this section, we’ll see how it’s done!”: another duplication.

2013-03-20
236TYPO

“treated as if the expression were: “(λ square . square 4)(λ x . x×x)”.“: the expression should be ”(λ x . x*x) 4" (also note the asterisk instead of a cross).

2013-06-05
236SUGGEST

“we get - once again! to create numbers”: insert another dash before “to”.

2013-03-20
236TYPO

“that we’l use to create numbers”: write “we’ll”

2013-03-20
237TYPO

“\\lambda”: probably should be “λ” (occurs twice).

2013-03-20
238TYPO

“hat you need to do is”: change “hat” into “what”

2013-03-20
238TYPO

“add the numbers 2and”: insert space after “2”.

2013-03-20
238TYPO

“make Two uses”: change “uses” into “use”.

2013-03-20
239SUGGEST

“You write functions that combine other functions in order to make it do what you want.”: Does not sound right grammatically, because “it” is singular and all those functions are plural; however, maybe it is supposed to refer back to combination (singular) of functions (as implied by “combine”). Suggestion: replace “to make it do what you want” by “to obtain what you want”, “to compute what you want”.

2013-06-05
239TYPO

“we’re closing in Turing”: insert “on” after “in”

2013-03-20
239TYPO

“If/then/else”: do not capitalize; to be consistent with preceding use hyphens “if-then-else”.

2013-03-20
241TYPO

“The other booleans work in much the same way.”: change “booleans” into “boolean operations”.

2013-03-20
242TYPO

“integers less than or equal to N” and “with N added onto the end”: some N are in in roman shape, others in italic; I’d prefer if they’re all in italic.

2013-03-20
242SUGGEST

“for any N N! = N * (N-1)!”: avoid adjacent formulae; e.g. switch the order to “N! = N * (N-1)!, for any N”.

2013-03-20
243TYPO

“3*2*1*0!3* 2 * 1 * 0 * -1!": replace "” by “=”.

2013-03-20
243SUGGEST

“the factorial of 0 = 1”: this looks strange; why not simply write “0! = 1”, or else “the factorial of 0 equals 1”.

2013-03-20
243SUGGEST

“the factorial of 0 = 1”: this looks strange; why not simply write “0! = 1”, or else “the factorial of 0 equals 1”.

2013-03-20
243SUGGEST

“• N!=1 if N=0
• NN-1 if N>0”: use italic N.

2013-03-20
245TYPO

Figure 18: the two “λ y” nodes on the middle level need to be “λ x”.

2013-06-05
246TYPO

“a copy of the book “The Little Schemer” [FFB95] It’s a wonderful little book": insert period after reference.

2013-03-20
39TYPO

“Why is a bizzare irrational number”: should be spelled “bizarre”

2013-06-05
250TYPO

“a function type α → δis”: insert a space before “is”

2013-06-05
250TYPO

“a function type α → δis a logical implication: passing a value of type α to the function implies that the return type will be β.”: The “β” should be “δ” (or conversely). However, why not write “γ → δ”, since “α” and “β” seem to be reserved for specific types.

2013-06-05
251SUGGEST

“First, we need modify”: insert “to” after “need”

2013-06-05
251TYPO

“first parameter is type α”: either change “is” into “has”, or insert “of” before “type”

2013-06-05
251TYPO

“shorthand for currying. is just …”: Something is missing before “is just”

2013-06-05
252SUGGEST

Explain the notation involving “⊧” before using it in examples; also the use of + with contexts.

2013-06-05
253TYPO

“Example:λ x y …”: insert space after “:”

2013-06-05
254TYPO

“(λ x:t y: t → u. (y x): u) t → (t → u) → u”: a colon is missing after “u)”

2013-06-05
255TYPO

“Let’s take another look at the types the simply typed lambda calculus.”: insert “in” after “types” (or fix the grammar in some other way).

2013-06-05
255TYPO

“the following grammar …”: the given grammar does not make sense.

2013-06-05
257SUGGEST

“a typed LC”: this seems to be the only place where the abbreviation “LC” (for Lambda Calculus" is used; write out in full.

2013-06-05
232TYPO

That would reduce our expression to (λ x y z . + (* x x) y)
5 20 4. Next, we’d reduce the outermost λ: (+ (* 5 5) 30),
which would evaluate to (+ 25 30), and finally to 55.

—>

That would reduce our expression to (λ x y z . + (* x x) y)
5 20 4. Next, we’d reduce the outermost λ: (+ (* 5 5) 20),
which would evaluate to (+ 25 20), and finally to 45.

2013-06-05
240TYPO

• And = λ x y . x y FALSE

—>

• BoolAnd = λ x y . x y FALSE

2013-06-05
240TYPO

• BoolNot = λ x . x FALSE TRUE*

Question on my part: what is TRUE*
Typo or special convention?

2013-06-05
242TYPO

In fact, we can say in general that for any NN! = N * (N-1)!.

—>

In fact, we can say in general that for any N! = N * (N-1)!.

2013-06-05
250TYPO

last line:
a function type α→ δis a logical implication: passing

—>

a function type α→ δ is a logical implication: passing

2013-06-05
252TYPO

252 and 253
the examples for the simplified version of type inference rules for
Type Invariance
Function Type Inference
Function Application Inference
have truncated numerators

2013-06-05
5SUGGEST

For consistency in description of Equality rules, use either “=”, or “is equal to” exclusively. The switch happens abruptly mid-sentence.

“equality is reflexive, which means that every number is equal to itself; equality is symmetric, meaning that if a number a is equal to a number b, then b = a; and equality is transitive”

2013-06-05
15SUGGEST

Remove some duplication from chapter introduction.

"But the next step in understanding numbers is looking at numbers that have non-integer parts, numbers that fit into the gaps between the integers, like 1/2, –2/3, and π.

For now, we’ll look at the next kind of numbers - numbers with a non-integer part, otherwise known as the real numbers."

This two parts could be folded into one, I think.

2013-06-05
105TYPO

Figure 11 is misnumbered. Steps 14-17 should be 13-16 to match the proof.

2013-06-05
112TYPO

Definition of parent relation not given in listing, but text refers to it.
“First, we have two lines that define what a parent is in terms of logic.”

2013-06-05
113TYPO

cousin relation is duplicated across two listings.

2013-06-05
120TYPO

Comment for partition relation is wrong. It should read “B = C + [A] + D” since A is the pivot, and B is the original list.

That said, it might be better to drop the comment, since it isn’t accurate in isolation, only in the broader sorting context.

2013-06-05
136SUGGEST

Can you provide an explanation of the use of ≨ in the set theory definitions? I expected an ‘=’ or ‘if’ or ‘iff’, and this “less than but not equal to” threw me.

2013-06-05
160TYPO

“indunction rule” should be “induction rule”

2013-06-05
153SUGGEST

“The easiest variation of the axiom of choice is called the well-ordering theorem.” This line feels a little weird, since it is like you are introducing it, even though you did it two sentences earlier. Maybe rearrange it to “The well-ordering theorem is the easiest variation of the axiom of choice”

2013-06-05
172TYPO

Table 3 is not symmetrical. Row j, Col b = 1(mistake). Row b, Col j = h. Row c, Col e = i. Row e, Col c = space(mistake). Row d, Col g = g. Row g, Col d = e(mistake).

2013-06-05
183TYPO

“we cake the blocks” -> “we take the blocks”

2013-06-05
251TYPO

“but since we know that “+” is a function with type “α → α”, we can infer that the result type of this function will be “α”"

Should probably be either, “+” has type “α → α → α”, or “+ 3” has type “α → α”.

2013-06-05
253TYPO

“* is a function from a number to a number, so since we’re using x as a parameter to *”

again, * is a binary operator. This should either by (3*) is a numbernumber or * is number>number->number

2013-06-05
254SUGGEST

“Since we don’t know what type it returns, we’ll use another new type variable u, and say y: u (function type inference). By doing function application inference, we can judge that the result type of the application of y is u.”

Here we assume the return type is u, and then “prove” it. This sounds somewhat circular. I suggest dropping the first sentence.

2013-06-05
263TYPO

“And, finally, the way that we would write that a program p doesn’t halt for input i as C (p, i) = _.” Underscore should be ⊥.

2013-06-05
264TYPO

“Or less formally, can I write a progrm which tells” progrm -> program

2013-06-05
264TYPO

“C (pair(p, i)) = _.” <- should be bottom

2013-06-05
264TYPO

Oracle definition uses Phi, but elsewhere you use O.

2013-06-05
20TYPO

" 3. If $x\\le y$, then for all $z\\le 0, (x \\times z) \\le (y \\times z)%$" should be “If $x\\le y$, then for all $x \\le 0, (y \\times z) \\le (x \\times z)$”, i.e. multiplying by a negative number reverses the order of x and y.

2013-06-05
13ERROR

In the sentence

“The definition of subtraction turns out to be pretty neat. 3 – 5 would be (3, 0) – (5, 0), which is equal to (3, 0) + (0, 5) = (3, 5), which is an element of the equivalence class of –2.”

the equivalence class elements have had their values reversed. It should be “(0, 3) - (0, 5)” and “(0, 3) + (5, 0) = (5, 3)”.

2013-06-17
163154SUGGEST

“that is the smallest positive number larger!” doesn’t make sense. The last sentence of the paragraph makes the point that this sentence does not.

7TYPO

At the bottom of the page, in step 1, below ‘So we can substitute that in and get this:’ it should be after the equal sign: (n + 1)(n + 2) / 2 instead of (n + 1)(n + 2) / n [denominator 2 instead of n]

248TYPO

Last line substitute ‘δ’ by ‘β’ or on the 2nd line of page 249 the other way round:
implication isn’t accidental: a function type α → δ is a logical
should be:
implication isn’t accidental: a function type α → β is a logical

5TYPO

The subset statement

N_2 [subset] N

(Section “Cantor’s diagonalization”; I’m reading
the sample pages, so I cannot give a page number)
should be

[ForAll] x: IsEvenNatural(x) => IsNatural(x)

not

[ForAll] x: IsEvenNatural(x) <=> IsNatural(x)

7qTYPO

States:

n(n+1) (n+1)(n+2)
——— + n + 1 = —————
2 n

should be:

n(n+1) (n+1)(n+2)
——— + n + 1 = —————
2 2

4TYPO

Page 4 of preview chapter irrationals.pdf:
“According to legeng” -> legend

Page 5
“…consists of a string of 0s and 1s where for digit x, 10^-x is a 1 if and only if there is some integer n such that n! = i.”
Shouldn’t that be ‘x! = i’? n is not defined previous to its use in the condition; x is not used in the condition.

6TYPO

Page 6 of preview chapter irrationals.pdf
“Since the value of e^(i*pi) is not transcendental — it’s 1 — then pi must be transcendental.”

The value of e^(i*pi) is –1, not 1.

10TYPO

Page 10 of cantor.pdf
[…] D (x,y) returns the yth digit of the decimal expansion of R (x)
[…]
D (x,3) is the third digit of the binary expansion of x.

‘binary’ -> should be ‘decimal’

7TYPO

In the equation on the bottom of the page, under “So we can substitute that in and get this:” shouldn’t the right hand denominator be a 2 rather then a n? (Or I could be really missing something….)

12xiiSUGGEST

There are two nearly identical sentences on this page:

“I figured that I’d probably get a couple of dozen people to read it and that I’d probably give up on it after a couple of weeks.”

“I thought that I’d probably be read by a couple dozen people, and I’d give up in disgust after a couple of weeks.”

Reading it the second time was jarring and disrupted the flow of the book. I did a double-take, wondering if my eyes had jumped around the page accidentally.

206SUGGEST

This was confusing to me:

Recursion For any natural numbers m and n,
m + s(n) = s(m + n)

…

It’s easier to read if you just rewrite it a tad to use +1 and –1:
m + n = 1 + (m + (n – 1))

I didn’t understand why this:
m + s(n)

…was represented as:
m + n

…instead of:
m + (1 + n)

And why this:
s(m + n)

…was represented as:
1 + (m + (n – 1))

…instead of:
1 + (m + n)

It seems to ignore the successor rule from the LHS, add the predecessor rule to the RHS.

7TYPO

Bottom of page
n(n + 1)/2 + n + 1 = (n + 1)(n + 2) / n

shouldn’t that be
n(n + 1)/2 + n + 1 = (n + 1)(n + 2) / 2

73ERROR

“Adding a single convergent to a continued-fraction approximation adds more information than adding a single digit.”
Not always true. The author’s “favorite” number, Phi, is a good counter-example. It takes 11 convergents to get the 4th decimal digit and 23 to get the 9th decimal digit

50ERROR

The description of electrical power is wrong. The power does turn on and off. If you apply AC to a resistive load, you can detect the change in power as a change in heat produced. The output of a small incandescent bulb can be read with a photo-sensor and will be seen to vary.

If you reduce the frequency of the AC the effect becomes easier to detect.

20TYPO

The 3th point of:

• “≤” is compatible with “+” and “×”:
1. If x ≤ y then (x + 1) ≤ (y + 1).
2. If x ≤ y, then for all z where 0 ≤ z, (x × z) ≤ (y × z).
3. If x ≤ y, then for all z ≤ 0, (x × z) ≤ (y × z).

looks not correct for me!
ex. x = 1, y = 2, z = –1 then (1 x –1) > ( 2 x –1).

99ERROR

In figure 1, the first line of the truth tree has (sorry, I can’t copy the symbols)
not((A impl B) and (B impl C)) impl (A impl C)
To be the contradiction of
((A impl B) and (B impl C)) impl (A impl C)
Shouldn’t the line be
not((A impl B) and (B impl C) impl (A impl C)) ?

131TYPO

So Parent is a subset of the values from the
Cartesian product of the set of people with itself. (Mark,
Rebecca) ∈ Parent, and Parent is a predicate on the set
Parent × Parent

Should be: “Parent is a predicate on the set of Person × Person”

140ERROR

The Axiom of Extensionality
∀ A, B : A = B ≨ (∀ C : C ∈ A ⇒ C ∈ B)
This is a formal way of saying that a set is described by
its members: two sets are equivalent if and only if they
contain the same members.

I’m not positive, but that looks more like the definition of “A is a subset of B”. Don’t you have to have
((∀ C : C ∈ A ⇒ C ∈ B)∧(∀ D : D ∈ B ⇒ D ∈ A)) ?

7TYPO

In the right side of last formula in Chapter 1 p.7 the denominator of the fraction should be 2 instead of n.

148TYPO

But it implies something absolutely crazy: the well-ordering
theorem says that there’s a single, unique value that is the
smallest positive real number larger!

larger than what??

141TYPO

but we had no way of creating a set containing
both the empty set and the set containing the empty set
({∅, {∅}).

Missing ‘}’ before ‘)’.

142TYPO

Axiom of infinity
∃ N : ∅ ∈ N ∧ (∀ x : x ∈ N ⇒ x ∪ { x } ∈ N)

It’s probably ok as written, but since you haven’t specified an operator precedence something like
∃ N : ∅ ∈ N ∧ (∀ x : x ∈ N ⇒ {x ∪ { x }} ∈ N)
would be clearer.

157TYPO

The natural number 0 will represent the integer 0; 0 is
even, because 0 * 0 = 0; so 0 is represented by the empty
set.
That should be “0 is even, because 2 * 0 = 0”

185TYPO

I’m torn between “Typo” and “Technical Error” here
“For example, we can create a machine that accepts strings
that consist of any string containing at least one a, followed by at least one b.”
then you go on showing examples with “baab” being a string that is not accepted. “baab” IS a string containing at least one ‘a’ followed by at least one ‘b’.
I know what you mean, but it’s not what you said.

190SUGGEST

“all of the different FSMs that
you can generate for a particular regular expression will
process exactly the same language and will do it in exactly
the same amount of time.”
You don’t mention “time” anywhere else in the chapter in the sense of an amount of time. Please either expand on what you mean or delete the sentence.

190TYPO

In formal terms, let S (r) be the set of strings accepted by the
regular expression r. Then if you have a regular expression
r and a character c, the derivative of r with respect to c
(written Dc®) is a regular expression r’ such that t ∈ S (r’) if
and only if ct ∈ S (r).
For example, if you had a regular expression ab*, then the
derivative with respect to a would be ab*.

That derivative would be b, not ab

192TYPO

A starred regular expression matches zero or one repetitions
of a pattern. Zero repetitions is the empty string,
so any starred regular expression can match the empty
string.

Should be A starred regular expression matches zero or more repetitions…

186ERROR

Figure 15 shows state A marked as final. This means that your machine would accept the string “a”, which is not
an element of the set of “strings that consist of any string containing at least one a, followed by at least one b.”

This error also shows up on P.194 item 5.b

15SUGGEST

Bit of a nitpick but…

The third paragraph starts as follows “There are a couple of ways to describe the real numbers. I’m going to take you through three of them” which feels a bit like Douglas Adams’ “trilogy in four parts”

(Now experiencing mild paranoia that I’ve missed a brilliant mathematical joke.)

238ERROR

The factorial function N! is defined for all natural numbers: for any natural number N, its factorial is the product of all of the integers less than or equal to N.

You are entitled to define N! any way you want, but with that definition, the “Well almost” at the bottom of the page is the way it is. No N! calculation will ever terminate.

You can avoid this by saying “The factorial function N! is defined for all natural numbers: for any natural number N, its factorial is the product of all of the natural numbers
less than or equal to N.” Then the only issue is defining 0!, which you should probably do by saying explicitly 0! = 1

245SUGGEST

The λ which is the very last character should really be on the next page.

246TYPO

The context is usually written as an
uppercase letter. If a type context G includes the judgement
that x : γ, we’ll write that as G :- x : γ”.
For the simply typed λ calculus, a simplified version of the
type inference rules are given here:
Type Identity
(overbar)
x : α ⊧ x : α

First, is the symbol ” in G :- x : γ”. part of the “judgement”, or is there a missing " before the G?

Next, you use :- in G :- x : γ” but for the rest of the discussion it looks like you are using the symbol ⊧

238ERROR

Please amend my earlier post to say
“The factorial function N! is defined for all natural numbers: for any natural number N, its factorial is the product of all of the natural numbers > 0
less than or equal to N”

257TYPO

“And finally, the way that
we would write that a program p doesn’t halt for input i is
C (p, i) = _.”

You should probably use the “⊥” you use in the description of the halting oracle at the bottom of the page.

95ERROR

In the explanation of Step 2, you used the “Or negation” rule, not “And negation”. Also in the table of rules you have two labeled “Or Negation” one on page 93 and one on 94.

21TYPO

the last equation on that page has the right hand side with a denominator of ‘n’, whereas I believe it should be ‘2’. Otherwise the rest of the proof makes no sense to me.

20TYPO

(My book version reads “P1.0—July 2013” and as such is not listed on the erratum entry page under “Version of Book With Error”.)

Shouldn’t the 4th line read

“3. if x <= y, then for all z <= 0, (y * z) <= (x * z)”

instead of

“3. if x <= y, then for all z <= 0, (x * z) <= (y * z)”

?

72TYPO

(My book version reads “P1.0—July 2013” and as such is not listed on the erratum entry page under “Version of Book With Error”.)

Shouldn’t the 2nd line of the last paragraph immediately before “Cleaner, Clearer, and Just Plain Fun” read

“1/(1+1/(1+1/(3+1/2))), or [0; 1, 1, 3, 2].”

instead of

“1/(1+1/(1+3/(1+1/2))), or [0; 1, 1, 3, 2].”

?

72TYPO

(My book version reads “P1.0—July 2013” and as such is not listed on the erratum entry page under “Version of Book With Error”.)

Shouldn’t lines 4 - 6 in the 2nd paragraph after “Cleaner, Clearer, and Just Plain Fun” read

“… Take a number like 2.3456, aka [2; 2, 1, 8, 2, 1, 1, 4]. The reciprocal is [0; 2, 2, 1, 8, 2, 1, 1, 4]. …”

instead of

“… Take a number like 2.3456, aka [2; 2, 3, 1, 3, 4, 5, 6, 4]. The reciprocal is [0; 2, 2, 3, 1, 3, 4, 5, 6, 4]. …”

?

13ERROR

This doesn’t seem correct to me:

The definition of subtraction turns out to be pretty neat. 3–5 would be (3,0)–(5,0),which is equal to (3,0)+(0,5)=(3,5), which is an element of the equivalence class of –2.

Shouldn’t this be:

The definition of subtraction turns out to be pretty neat. 3–5 would be (0,3)–(0,5),which is equal to (0,3)+(5,0)=(5,3), which is an element of the equivalence class of –2.

130TYPO

The symbol you’re using for equivalence in the definition of set union and subsequently throughout the book looks wrong. It’s used consistently throughout, but it isn’t formally introduced and I have always been taught that the equivalence symbol is three parallel horizontal lines.

202ERROR

The last state in the list should not contain the minus, since the transition eraseone minus writes space.

168TYPO

in table 3, the cell at row g column d
should be “g” if d = 0

there’s also a “1” in (j,b)

73ERROR

Since PI = 3.141592653589793…, a more accurate statement would be that our continued fraction is accurate to 9 decimal places, not 11.

206ERROR

The link for the Turing Machine written in Haskell points to the website for the book, but the source code zip does not include the TM simulation.

7TYPO

Peano induction rule proof for “Summation of N+1 natural numbers”, the error is on the last line of the page on the right hand side divided by “n” is printed instead of 2.

18+19SUGGEST

The field axioms are already valid for the rational numbers, and the ordering as well. Both are not specific for the real numbers. Really new is only the continuity. If the real numbers are defined as the set of limits (as far as they exist) of sequences of rational numbers, it can be proven that the arithmetic operations are continuous and are therefore also defined in the real numbers.

24TYPO

A small omission: “There’s no finite sequence of … and roots with only integer numbers that will give you the value of a transcendental number.”

186TYPO

In the Figure 15, the arrow describing the transition from state A to state A itself does not have a label.
It should be labeled with “a”.

106ERROR

There’s no definition of parent as the text suggests.
The definition should probably be:
parent(X, Y) :- father(X, Y);
parent(X, Y) :- mother(X, Y).

215ERROR

In the second item on the page 215, words “a backward branch by a [” should be “a backward branch by a ]”.

171TYPO

folloiwng instead of following.

225TYPO

An expression “λ y . (λ x . x + y)) q” should be “(λ y . (λ x . x + y)) q”.

228TYPO

“we’d evaluate (/ 24 6), (* 10 2), + 3 2” should be “we’d evaluate (/ 24 6), (* 10 2), (+ 3 2)”.

228TYPO

“giving us (+ (* (+ 3 2) (+ 3 2)) (* 10 2)” should be “giving us (+ (* (+ 3 2) (+ 3 2)) (* 10 2))”.

236TYPO

In the fifth item of the list to describe how “BoolAnd TRUE FALSE” is evaluated, “(λxf yf.yf)” should be “(λ ft ff. ff)”.

233TYPO

At the bottom of the page 233, “add λ s z x y . x s (y s z)” should be “add = λ s z x y . x s (y s z)”.
An equal sign has been dropped.

238TYPO

In the second paragraph, “If you you look at the sequence of examples,” should be “If you look at the sequence of examples,”.
A word “you” was duplicated mistakenly.

261ERROR

The sentence “+ is a function with type α → α,” is not true. Actually, a function “+” has a type α → α → α.
It should be fixed with “+ 3 is a function with type α → α,”.

0ERROR

Love the book. Incorrect Y combinator diagram though (figure 18 in chapter 25): it depicts λy.(λy.yxx)(λy.yxx) rather than λy.(λx.yxx)(λx.yxx)

248ERROR

“and say y: u (function type inference)” should be “and say y: t → u (function type inference)”.

255TYPO

In the second paragraph of the section “A Brilliant Failure”, “A brief except” should be “A brief excerpt”.

254TYPO

I am sorry that I have submitted the following typo report with a wrong page number. A correct page number is 254.

> #78188: In the second paragraph of the section “A Brilliant Failure”, “A brief except” should be “A brief excerpt”.—Tomohiko Kinebuchi

257TYPO

“interleave them to give you 10001011, or 139” should be “interleave them to give you 10000111, or 135”.

228TYPO

“Next, we’d reduce the outermost λ:(+(* 5 5) 30), which would evaluate to (+25 30), and finally to 55.”

Should be

“Next, we’d reduce the outermost λ:(+(* 5 5) 20), which would evaluate to (+25 20), and finally to 45.”

97TYPO

A missing closing parenthesis.
“¬ (∀ d: ∀ e: Cousin(d, e) ⇔ ∃ g: Grandparent(g, d) ∧ Grandparent(g, e)” should be “¬ (∀ d: ∀ e: Cousin(d, e) ⇔ ∃ g: Grandparent(g, d) ∧ Grandparent(g, e))”.

97TYPO

“(∃ d: ¬ ∀ e: Cousin(d, e) ⇔ ∃ g: Grandparent(g, d) ∧
Grandparent(g, e))” might be “∃ d: ¬ (∀ e: Cousin(d, e) ⇔ ∃ g: Grandparent(g, d) ∧
Grandparent(g, e))”.

97TYPO

“∃ d: ∃ e: ¬ (Cousin (d, e) ⇔ ∃ g(Grandparent(g, d) ∧ Grandparent(g, e))” should be “∃ d: ∃ e: ¬ (Cousin (d, e) ⇔ ∃ g: Grandparent(g, d) ∧ Grandparent(g, e))”.

99TYPO

“7: ¬(¬A ∨ C)” should be “7: ¬(A ⇒ C)”.

99TYPO

A statement number 13 is skipped, and numbers after it are pushed back.

110TYPO

“the sum of A and S (B)” should be “the sum of A and s(B)”.

114TYPO

Comparing the head and the pivot with “@=<”, the smaller case “If the Head of the list to be partitioned is smaller than the Pivot,” should be “If the Head of the list to be partitioned is smaller than or equal to the Pivot,”.

191TYPO

“and Empty, which is a regular expression that only matches an empty string.” should be “and EmptyRE, which is a regular expression that only matches an empty string.”

245ERROR

Sorry, #78109 is a report for P.245

(quoted from #78109) The sentence "+ is a function with type α → α," is not true. Actually, a function "+" has a type α → α → α. It should be fixed with "+ 3 is a function with type α → α,".

245ERROR

Since the return type of α→δ is δ, a sentence “the return type will be β” should be “the return type will be δ”.

248TYPO

A colon sign for a type ascription on “(λ x:t y: t → u. (y x): u) t → (t → u) → u” is omitted. It should be “(λ x:t y: t → u. (y x): u): t → (t → u) → u”.

257ERROR

The function φ in “∀p,∀i: C (O, pair(p, i)) = { 0 if φ(p,i) = ⊥ 1 if φ(p,i) ≠ ⊥” might be the function C, which is a model of ECS.

258ERROR

On “C (pair(p, i)) = _”.

First, “C (pair(p, i))” should be “C (p, i)”.

Second, as same as #52634, “_” should be “⊥”.

236TYPO

“And=λxy.xyFALSE.” should be “BoolAnd=λxy.xyFALSE.”

157ERROR

“a negative integer equal to (N+1)/2” should be “a negative integer equal to -(N+1)/2”.
A minus sign was omitted.

165ERROR

“ω + 1 is greater than ω + 1” should be “ω + 1 is greater than ω”.

168ERROR

In table 3, the cell at row e column c should be “h”, since the cell at row c column e is “h”.

168ERROR

I am sorry.

In erratum report #79746, I really meant that “In table 3, the cell at row e column c should be ”i“”.

12TYPO

“(a, b) and (b, c)” might be “(a, b) and (c, d)”, since the second element of the former tuple and the first element of the latter tuple does not necessarily equal to each other.

20ERROR

In the subsection “Field Axioms Part 3: Continuity”, the explanation for continuity of real numbers — “they’re continuous—meaning that given any two real numbers, there’s an infinite number of real numbers between them” — is technically wrong.
This might be better: “they’re continuous—meaning that pointing anywhere on a number line, some real number must be there.”

20ERROR

“the smallest number that’s larger than” should be “the smallest number that’s larger than or equal to.”

22ERROR

In the first item in the list which about “Addition”, what does Z = (Z_L, Z_R) mean?
For me, Z seems to mean X + Y.

22ERROR

In the second item in the list which is about “Equality”, “if and only if X_L is a subset of Y_L and X_R is a subset of Y_R” should be “if and only if X_L is equal to Y_L and X_R is equal to Y_R”.
This is follow directly from a definition of Dedekind cut.

84ERROR

In the footnote of P.84, a statement “A ∨ B ∧ ¬(A ∧ B)” is ambiguous. It should be written as “(A ∨ B) ∧ ¬(A ∧ B)”.

19ERROR

In “Field Axioms Part 2: Ordering” section, total order requires reflexive relation which omitted from the list.

244ERROR

“a Cantor-esque self-refer- ence problem” might be “a Goedel-esque self-refer- ence problem.”

47TYPO

The sentence “the same people who first really understood the number” has dropped the following “0”, which exists in the original blog post.

247ERROR

“* is a function from a number to a number” should be “3 * is a function from a number to a number” or “4 * is a function from a number to a number”.

166ERROR

“A set with N elements is isomorphic to the ordinal N+1.” should be “A set with N elements is isomorphic to the ordinal N.”

22SUGGEST

Ordering: Should the second condition be X_R is subset of Y_R?
This whole page would benefit from a rewrite / more examples - it’s extremely dense compared to the rest

42ERROR

The formula of phi as continued square roots is
phi = sqrt( 1 + sqrt( 1 + sqrt( 1 + …)))
instead of
phi = 1 + sqrt( 1 + sqrt( 1 + sqrt( 1 + …)))

42ERROR

As described here: mathworld.wolfram.com/GoldenRatio.html
phi as a continued square root is:
phi = sqrt( 1 + sqrt( 1 + sqrt( 1 + … ) ) )
instead of
phi = 1 + sqrt( 1 + sqrt( 1 + sqrt( 1 + … ) ) )

70TYPO

In the example section there is an error in continued fraction representation of 2.3456. On the first line it should be 2 + …
Now is writed like 2 multiplied for the rest of the fraction.

72ERROR

The final representation of the continued fraction of 9/16 is not
1/(1+1/(1+3/(1+1/2)))
But it should be
1/(1+1/(3+1/(1+1/2)))

21TYPO

In the equation below "So we can substitute that in and get this:
The right hand side is ((n+1)(n+2))/n, while I believe it should be ((n+1)(n+2)/2
especially since it reverts back to ‘2’ in the next expansion :-).

Categories: