Please do not make these materials publicly available elsewhere, and do not make your solutions public. Don't deprive others of the pleasure and challenge of solving the problems, and don't place temptation in the path of others.

*Lab: Python—modules and control structures—and inverse index*

- Playing with ℂ
- plotting.py
- image.py
- img01.png
- png.py Module used by image.py

- Playing with
*GF*(2)

- Dictionary-based representations of vectors
- Our implementation of
`Vec` - Solving a triangular system of linear equations
*Lab: Comparing voting records using dot-product*- voting_record_dump109.txt
- US_Senate_voting_data_109.txt This is the same as voting_record_dump109.txt, just with a more informative name
- UN_voting_data.txt A different dataset that can be used for the same purpose

- Problems
- vec.py The tests formerly located in test_mat.py have been added to this file as doctests.
- test_vec.py This file is not needed since its doctests have been added to vec.py.

- What is a matrix?
- Matrix-vector and vector-matrix multiplication in terms of linear combinations
*Lab: Error-correcting codes**Lab: Transformations in 2D geometry*- image_mat_util.py which uses...
- png.py

- Problems
- mat.py The tests formerly located in test_mat.py have been added to this file as doctest.
- mat_sparsity.py This file contains some simple doctests that should take very little time if your implementations of transpose, matrix-vector multiplication, vector-matrix multiplication, and matrix-matrix multiplication exploit sparsity.
- UN_voting_data.txt

- Perspective rendering
*Lab: Perspective rectification*- board.png
- image_mat_util.py which uses...
- png.py
- cit.png

- Problems

- Dimension and rank
- The annihilator
- Problems

- Gaussian elimination over
*GF*(2) - Using Gaussian elimination for other problems
- cracking_rand.py Some code for cracking Python's rand function
- echelon.py

*Lab: Threshold Secret-Sharing**Lab: Factoring integers*

- Orthogonality
*Lab: machine learning*- train.data File with data on which to train your classifier
- validate.data File with data on which to test your classifier
- cancer_data.py The procedure returns a pair (A, b) consisting of a P-by-D matrix A and a P-vector b where P is a set of patient IDs. This differs slightly from the spec given in this chapter of Edition 0.

- Projection orthogonal to multiple vectors
- Problems

- Discrete Fourier transform
*Lab: Using wavelets for compression*

- Closest dimension-
*k*vector space *Lab: Eigenfaces*- faces.zip
- unclassified.zip
- image.py
- png.py used by image.py
- eigenfaces.py

*Lab: Pagerank*

- The simplex algorithm
*Lab: Learning through linear programming*- train.data File with data on which to train your classifier
- validate.data File with data on which to test your classifier
- cancer_data.py The procedure returns a pair (A, b) consisting of a P-by-D matrix A and a P-vector b where P is a set of patient IDs. This differs slightly from the spec given in this chapter of Editions 0 and 1.