CS 173: Skills list for first examlet
- Course logistics
- Know the day and time of your assigned discussion section. (We may deduct
one or more points from examlets missing this information.)
- Math prerequisites
- Algebraic manipulations with
- equations
- inequalities
- fractions
- absolute value
- squares and square roots
- i (square root of -1)
- 2nd order polynomials: solving, factoring, finding roots.
Easy cases only: don't worry if you don't remember the quadratic
formula.
- Basic rules for manipulating exponents and logs
- Defining and composing numerical functions.
E.g. if f(x) = x-6 and g(x) = 7x,
then g(f(x)) = 7(x-6).
- Numbers and sets
- Know what sets these symbols represent: R, N, Z, Z+,
Q, C.
- Notation for set membership, e.g. x ∈ Z
- Know that 0 belongs to N but not Z+.
(There's two conventions about what's in N. This is the one we
are using this term.)
- Know the notation and definition of n factorial (n!).
- Know the notation and formula for "n choose k".
- Know the notations [a,b] and (a,b) for closed and open
intervals of the real line.
- Know the definitions of the floor and ceiling functions,
i.e. ⌈ x ⌉ and ⌊ x ⌋
- Propositional and predicate logic
- Know the truth tables for basic logical operators,
especially implies. Know that, unless there is specific indication
otherwise, "or" means inclusive or.
- Know the meaning of the universal and existential
quantifier,
shorthand notation, and basic terminology such as "scope" of a
quantifier.
- Translate between English and logical shorthand. But we
realize that
it's hard to pin down the exact meaning of some English sentences.
- Know the distributive, commutative, and associative laws and
that "p implies q" is equivalent to "(not p) or q".
- Given a new, fairly simple, logical equivalence,
figure out whether it's correct or not and
explain why using a truth table or counter-example.
- Identify non-statements (e.g. questions) and
statements which are neither true not false,
because they contain variables not bound by a quantifier.
- Decide whether a complex statement is true, given
information about
the truth of the basic statements it's made out of.
- Identify the hypothesis and the conclusion of an if/then statement.
- Given a statement, give its negation.
- Given an if/then statement, give its converse, and
contrapositive.
Know that the contrapositive is equivalent to the original statement,
but
the converse is not.
- Simplify a negation or contrapositive by
moving all negations onto individual propositions.
This requires knowing certain
key logical equivalences:
double negation, DeMorgan's laws, and the rules
for negating if/then statements and quantifiers.
- Number Theory
- Quote back definitions, decide if simple statements
involving them are true, understand the corresponding shorthand
notation:
- a divides b, b is a multiple of a,
- x is odd, x is even
- x is prime, x is composite
- x is a perfect square
- x is a rational number
- x and y are relatively prime
- Special cases for divides:
zero is even, zero divides itself
but not any other integer, and every integer divides zero.
- Prime numbers, factoring a number into primes.
(Where we only consider numbers >= 2.)
- Special cases for prime: 0 and 1 are not prime (primes must
be greater than or equal to 2).
- Know the definitions of gcd(a,b) and lcm(a,b) and
be able to compute gcd(a,b) and lcm(a,b) for specific (smallish) values
of a and b.
- Write any (small) positive integer as a product of primes.
- Know that sqrt(2) is not rational.
- Know that there are infinitely many primes.
- Be able to state the Fundamental Theorem of Arithmetic:
Any integer >= 2 can be written as the product of
primes and each integer has only one prime factorization
(except for the order in which you write the factors).
- Define what it means for x and y to be congruent mod k
- Be able to state the "Division Algorithm" theorem.
- Compute the gcd of two larger numbers using the Euclidean algorithm,
i.e. trace the execution of the algorithm. Be able to reproduce
its pseudocode.
- Prove simple number theory claims using direct proof and the
definitions of the terms involved.
For example, if a divides b and a divides c, then
a divides b+c.
- Logic and Proof techniques.
- Write a simple direct proof, using familiar concepts,
with good mathematical style. Make sure your statements are in logical order,
starting with the given information and ending with what you needed to show.
- Write a proof by cases
- Convert a claim to its contrapositive and prove that using
direct proof.
- Know the following standard ways to approach parts of a proof:
- prove a universal claim by choosing a representative object
of the appropriate type
- prove an if/then statement by assuming whatever's in the
hypothesis and proving the conclusion,
- disprove a universal claim by giving a concrete counterexample.
- prove an existential claim by giving specific values that make
the claim true
- Modular arithmetic
- For congruence mod k, know which integers are in the equivalence class
of x. Know the shorthand notation [x].
- Know when [x] and [y] are equal as elements of Zk.
- Do arithmetic in Zk (e.g. addition, multiplication,
taking integer powers), keeping intermediate results small.