CMPSCI 250: Introduction to Computation
David Mix Barrington
Fall, 2007
Errata in the Textbook
Errors in the fourth draft of A Mathematical Foundation for
Computer Science
be listed here as they are discovered. We are starting with the list from
Spring 2006 -- course packet 10 from this term contains the same text of
Chapters 1-3. My thanks to all who have
reported errors!
- Cover (of course packet 10): Says "Chapters 1-4" but only 1-3 are there
(though solutions to exercises cover 1-4). Also, the top should say "Fall
2007" rather than "Fall 2004".
- Page 1-14, Problem 1.2.2: The first line should be "Let A be any finite
alphabet, and let u and v be strings over A." No reference to the alphabet
of Problem 1.2.1 is intended.
- Page 1-16, Problem 1.2.7 (b): This would be more clearly stated as "strings
such that the first letter exists and is the same as the last letter", to take
care of the case where the string is empty.
- Page 1-23, second full paragraph: The text does not match the diagram --
it refers to a four-row diagram where both p and q range over both boolean
values.
- Page 1-23, Definition: The first "p" on the second line of the Definition
should be a "q".
- Page 1-27, Exercise 1.4.8(c), add a comma after "fish" to remove ambiguity.
- Page 1-28, Problem 1.4.5 (h): Add a left paren at the beginning and a
right paren before the first ↔. Because the ⊕ and ↔ operators
are commutative and associative with each other, the original
formula has only one
interpretation, but that is not obvious at this point in the book.
- Page 1-35, longest formula in the middle of the page: There should be
a "not" sign in front of the last "x ∈ C".
- Page 1-40, footnote: In the third line the second "zero" should be "one".
- Page 1-42, Exercises: The second "Exercise 1.6.2" should be "Exercise
1.6.3".
- Page 1-44, first Example: The tautology
discussed here isn't exactly the one from Section 1.6.
- Page 1-47, "Proof By Cases" formula: Parentheses are wrong --
one of the ")"'s after the ¬r should be moved to after the second q so
the whole formula is
(((p∧r)→q)∧((p∧¬r)→q))→(p→q).
- Page 1-48, Problem 1.7.1: In the fourth line, "he demands to have the
instance..."
- Page 1-52, second paragraph: Capitalize "If" after "Fantasy Rule:"
- Page 1-53, Problem 1.8.4: On the third line it should say
"p2=2q2" rather than "q2=2p2".
On the fourth line, the new proposition should be "p is even".
- Page 2-6, Problem 2.1.4: in the third line, it should say "...whose
second element is in B × C."
- Page 2-23, Problem 2.6.1: Add the additional premise "Every animal is
either angry or happy."
- Page 2-24, Problem 2.6.4 (b): The two "strict subset" symbols should just
be ordinary subset symbols.
- Page 2-37, Problem 2.9.3: The statement to be proved is false as given.
It should say "Prove that f must be one-to-one and that g must be onto, but that
it is possible for either of f and g to not be a bijection."
- Page 2-44, Problem 2.5.10: In part (b), the definition of the relation S
must be changed to make S reflexive, e.g., "S(x,y) means x=y or x defeated y
or x defeated some team z such that S(z,y)". In part (d), the final question
should be "What are the possible Hasse diagrams of the S relation of such a
tournament?"
- Page 2-48, second line: "transitivity" is misspelled.
- Page 3-18, Problem 3.3.5: The first line should say "two positive numbers"
because in the special case where a=0 and b=1, the first statement is true and
the second is false.
- Page 4-26, second line: should say "x + 0 = x".
- Page 4-36, Problem 4.7.5: label should be "P4.7.5", last word of first
line should be "pseudo-Java".
- Page 4-29, Exercise 4.6.5: The last expression should be
"∀x:∀y: (w > 0) → x · pred(w) = x · w - x".
- Pages 6-2 and 6-3: In course packet 72, these are reversed for some reason,
with 6-2 following 6-3.
- Page 6-24, Problem 6.4.7: In the first line, |A| should be n and |B|
should be k. In the second line of part (d), it should say "the n-1 elements
of B". The hint should end with a right paren. An additional hint should read:
"You may find it easier to prove the formula S(n,k) = k(S(n-1,k) + S(n-1,k-1))
and then use this formula to prove a formula for S(n,n-1) by induction. To
prove the formula, first count the functions f from A to B where f(1) is needed
to make f onto, then count the functions where it is not."
- Page 6-38, top: The first exercise on the page should be "E6.7.5", not
"E6.7.4".
- Page 8-15, Problem 8.2.4: The last line of code should be
entry =
new natural[rows][columns];
.
- Page 8-15, Problem 8.2.5: The
Semiring
interface should also
require a class to have constructors giving zero and one elements of the
semiring.
- Page T-25, last line: "bound" should be "found".
- Page T-26, Figure T-7: In the rightmost diagram, node e should be
between node d and node g, with a tree edge from d to e and a tree edge from
e to g instead of the tree edge from d to g.
- Page T-27, Figure T-9: The rightmost diagram should be labeled "root c".
The caption should refer to "nodes a and c" rather than "nodes A and B".
- Page T-31, second full paragraph of page: Delete the text from "(If we
allow..." through "we must check on".
- Page T-33, Problem T.6.3: The third and fourth bullets should say "from
(i,j) to (i, j+1)" and "from (i,j) to (i, j-1)" respectively.
- Page T-34, second paragraph of Subsection T.7.2: In the third line,
"from s to v" should read "from v to a goal node".
- Page T-34, third paragraph of Subsection T.7.2: In the fourth line,
"by going to u" should read "by going to v".
- Page T-37, Exercise T.7.5: Change the final comma to a period.
- Page 11-6, solution to Exercise 1.5.7: The last sentence is incorrect --
A\B and B\A are equal if and only if they are both empty, which is true
if and only if A and B are equal.
- Page 11-7, Figure 11-2: The region for P - (Q∪R) should also be shaded.
- Page 11-9 (vol 1),
solution to Exercise 1.7.2 (d): The header line of the truth
table is wrong. The head of the fourth column after the vertical bar should be
"∧", and each column after that should have the header that is now on the
column to its left. Thus the formula being evaluated is
"((p∧q)∧r)↔(p∧(q∧r))".
- Page 11-10, solution to Exercise 1.7.7: The third line should be
"q ∨¬p" rather than "q∨¬q".
- Page 11-22 (vol 1), solution to Exercise 3.3.3 (a): First number in first
equation should be 453, not 553.
- Page 11-23 (vol 1), solution to Exercise 3.3.3 (b): First number in first
equation should be 453, not 553.
- Page 11-28 (vol 1), solution to Exercise 3.9.1: second line, "greater
than 1 divided..."
Last modified 27 November 2007