Document

3.4/3.5 The Integers and Division/
Primes and Greatest Common Divisors
• Let each of a and b be integers. We say
that a divides b, in symbols a | b, provided
that there exists an integer m for which
b=am.
• Other ways of saying the same thing:
– a is a divisor of b
– a is a factor of b
– b is a multiple of a
– a goes evenly into b
Theorem
For all integers a, b, and c:
1. If a | b and a | c, then a | (b + c).
2. If a | b then a | bc.
3. If a | b and b | c, then a | c.
Corollary: If a | b and a | c, then for all integers
m and n we have a | (mb+nc).
Prove that if 𝑎|𝑏 and 𝑎|𝑐, then 𝑎|(𝑏 + 𝑐).
Primes
• A prime is ….
The Fundamental Theorem of
Arithmetic
Every positive integer is either a prime or
can be expressed as a product of primes
in a unique way
A composite is defined to be a positive integer
> 1 which is not a prime.
Divisibility by 3 and 9
• Theorem: An integer is divisible by 3 if
and only if the sum of the digits in its
decimal representation is divisible by 3.
• Theorem: An integer is divisible by 9 if
and only if the sum of the digits in its
decimal representation is divisible by 9.
Divisibility by 7
• Theorem: A number of the form 10x + y is
divisible by 7 if and only if x – 2y is
divisible by 7.
Examples:
399
2164
Theorem
If n is a composite, then n has a prime divisor less
than or equal to n
Let us use this fact to prove that 197 is prime.
Performing Prime Factorizations
• Use the above theorem, applied iteratively
• Example: 980
Theorem
There are infinitely many primes
The Sieve of Eratosthenes
The “Division Algorithm”
Let a be an integer and d a positive integer.
Then there exist unique integers q and r for
which
(i) a = dq + r, and
(ii) 0 ≤ r < d
Our symbolism for q is a div d (the quotient),
and for r it is a mod d (the remainder).
Greatest Common Divisor and
Least Common Multiple
Theorem: Let p be a prime appearing m times in the prime
factorization of a and n times in the prime factorization of b. Then
(a) p appears
times in the prime factorization of gcd(a,b),
and
(b) p appears
times in the prime factorization of lcm(a,b).
Modular Arithmetic
•
Define, for integers a and b and positive
integer m,
a  b (mod m)  m | (b – a)
•
Theorems:
1. a  b (mod m)  a mod m = b mod m
2. a  b (mod m)  k  Z such that a  b  km
Theorem
If
a  b (mod m) and c  d (mod m) then
(a) a+c  b+d (mod m), and
(b) ac  bd (mod m)
Prove 𝑎
𝑏 (𝑚𝑜𝑑 𝑚) and 𝑐
𝑑 (𝑚𝑜𝑑 𝑚) then 𝑎𝑐  𝑏𝑑 (𝑚𝑜𝑑 𝑚).
General Principle for Modular
Arithmetic
• When the answer to your computation is to
be a “mod m” result, you may discard
multiples of m freely as you compute!
• Note that the remainder mod 9 of any
integer is the same as the remainder mod
9 of the sum of its digits.
• Example:
– What is (23459  49823 + 297) mod 9?
Example
• Today is
• On what day of the week will today’s date
fall…
– Next year?
– Ten years from now?
• When will today’s date next fall on a
?
Definition
• Two integers a and b are said to be
relatively prime provided gcd(a,b) = 1
Theorem
• For two positive integers a and b, the
product gcd(a,b) lcm(a,b) is equal to the
product ab.
Does the mod n Function work well
as a hashing function?
KEYS:
1880
1890
1900
1910
Etc.
n = 15
Linear Congruential PseudoRandom Number Generators
xn = (axn-1 + c) mod m
Example: m = 11, a = 5, c = 2, x0=3
Example: m = 231–1, a = 75, c = 0
3.6 Integers and Algorithms
Theorem:
If a and b are positive integers, then
gcd(a,b) = gcd(a, b mod a)
The Euclidean Algorithm
procedure gcd(a, b: positive integers)
x := a
y := b
while y  0
begin
r := x mod y
x := y
y := r
end
{ The gcd of a and b is now stored in the variable x }
Theorem
Let bZ, b > 1. Then any positive integer n can be
uniquely expressed as
n = akbk+ak-1bk-1+…+a1b+a0
where k is a non-negative integer, and a0, a1, …, ak are
non-negative integers < b, and ak  0.
This is our authority for using the “base b” expansion of
the positive integer n, where specific symbols (like the
arabic digits) are assigned to the integers a with 0 ≤ a < b
and we can write the number n as akak-1ak-2…a1a0
Examples
• Binary
• Octal
• Decimal
• Hexadecimal
Converting from Decimal to Binary
• Example: 190
Conversions Continued
• Decimal to hexadecimal
• Decimal to octal
Conversions Continued
• Hexadecimal to Decimal
• Octal to Decimal
Conversions Continued
• Binary to and from Hexadecimal
• Binary to and from Octal
Conversions Continued
• Octal to and from Hexadecimal – Just use
binary as a go-between
3.8 – Matrices
• A matrix is a rectangular array of
numbers
 a11 a12 ... a1n 
• Notation
a
21

A
 ...

am1
a22
...
am 2
... a2 n 
... ... 

... amn 
Special Cases
 a11
a
21

A
 ...

am1
a12
a22
...
am 2
... a1n 
... a2 n 
... ... 

... amn 
• If m = 1 we have a row matrix
• If n = 1 we have a column matrix
• Shorthand notation: A = [aij]
Matrix Arithmetic
• Addition and Subtraction
1
0
2 1
2
+
1 3
−5
• Scalar product
5
1 2
=
2 7
1 4
=
6 −2
Matrix Multiplication
• If A = [aij] and B = [bij], where A is an m by n
matrix and B is an n by p matrix, then their
product AB is the m by p matrix C = [cij] whose
entries are given by
i  {1,2,..., m}, j  {1,2,..., p},
n
cij   aik bkj
k 1
Example of Matrix Multiplication
1
2
−1 −3
4
0
7 4
5 −1
3 6
Algorithm for Matrix Multiplication
procedure multiply(A: m by n matrix, B: n by p matrix)
for i:=1 to m do
for j:=1 to p do
begin
cij = 0
for k:=1 to n do
cij = cij + aikbkj
end
{ The matrix [cij] is the matrix product of A and B }
Matrix-Chain Multiplication
• What is the most efficient way to compute a
three-way product ABC, where A is m by n, B is
n by p, and C is p by q?
• Grouping as (AB)C, we get mnp + mpq
multiplications
• Grouping as A(BC), we get npq + mnq
multiplications
• Theoretically, the result is the same, so we
should choose the order which gives the fewest
multiplications.
• Example: 5 by 3 times 3 by 4 times 4 by 2
The Identity Matrix
• For any positive integer n, the n by n
matrices under matrix multiplication have
an identity. It is
 1 0 0 ... 0 
 0 1 0 ... 0 


I n   0 0 1 ... 0 


... ... ... ... ...
 0 0 0 ... 1 
Powers of a Square Matrix
• For an n by n matrix A = [aij], we can
define A2=AA, A3=AA2, etc.
• Example:
Example:
𝐴=
1 1
0 1
Find a formula for 𝐴𝑛 .
Transpose Matrix
• For an m by n matrix A = [aij], we can
define the transpose At of A to be the n by
m matrix whose rows are the columns of A
and whose columns are the rows of A. i.e.
if B = [bij] is A’s transpose, then for all
relevant values of i and j, bij = aji
• Example:
1
2
2 2 7
0 0 4
𝑡
Symmetric Matrices
• A square matrix A is said to be symmetric
if A = At
30 3
7 −1
3
0 12 50
7 12 17 16
−1 50 16 4
Zero-One Matrices
• A zero-one matrix is one in which all the
entries are zeros or ones.
• The join 𝐴⋁𝐵 of two matrices 𝐴 and 𝐵 is
the “pairwise ‘or’” of their entries
• The meet 𝐴⋀𝐵 of two matrices 𝐴 and 𝐵 is
the “pairwise ‘and’” of their entries
0 1
1 1
0 0
0
1
1 ∨ 0
1
1
1 0
0 0
1 1
Zero-One Matrix Multiplication
• If A = [aij] and B = [bij], where A is an m by
n zero-one matrix and B is an n by p zeroone matrix, then their boolean product A ⨀ B
is the m by p matrix C = [cij] whose entries
are given by
i {1,2,..., m}, j {1,2,..., p},
n
cij 
aik  bkj
k 1
Examples
1 0
1 0
⨀
=
0 1
1 0
1 1
Zero-One Matrix Powers
For 𝐴 = [𝑎𝑖𝑗 ] a zero-one matrix, define
𝐴[2] =
𝐴3 =
Example:
𝐴[2] =
1 1
=𝐴
1 0
Inverses
For 𝑛 × 𝑛 matrices (i.e. square matrices), we say that matrix
𝐴 has an inverse 𝐵 provided 𝐴𝐵 = 𝐵𝐴 = 𝐼. We call 𝐵 the
inverse of 𝐴 and denote 𝐵 by 𝐴−1 . Not all square matrices
have inverses. If a matrix does have an inverse, then it is
unique.
𝐴=
𝑎
𝑐
𝑏
𝑑
𝐴−1 =
Example:
1 2
1 0