| Instructor |
J. Misra office: TAY 3.102 email: misra@cs.utexas.edu phone: 471-9550 office hours: MW 3:30-4:30P or by appointment |
||||||||||||||||||||
| Teaching Assistants |
Jacob Schrum email: schrum2@cs.utexas.edu office hours: M 11:30-12:30 and W 12:30-1:30 in ENS 31NQ Desk #1 Balaji Villupuram email: vvbalaji@cs.utexas.edu office hours: M 10:30-11:30 and W 10:30-11:30 in ENS 31NQ Desk #4 |
||||||||||||||||||||
| Class |
MW 2:00-3:30P, Burdine 112 |
||||||||||||||||||||
| Class Webpage |
http://www.cs.utexas.edu/~schrum2/cs337/ |
||||||||||||||||||||
| The Subject Matter |
The major theme is applications of theory in practice; I will
demonstrate that theory can help in practical programming. I will draw
upon material ---both theoretical and practical--- which have been
taught in the prior courses: functions, relations (equivalence,
partial order), data structures (particularly, trees and graphs),
recursion and induction, logic, invariants, etc. Here is a tentative list of topics. 1. Data Compression and Encoding: Huffman coding, Ziv-Lempel codes. 2. Error Detection and Correction. 3. Cryptography 4. Finite State Machines and Regular expressions. 5. Recursion and Induction 6. Relational Databases 7. String Matching |
||||||||||||||||||||
| The Reading Material |
1. Class Handouts: see here. 2. (for reference) Haskell: The Craft of Functional Programming, by Simon Thompson, Publishers: Addison-Wesley-Longman, ISBN 0-201-40357-9. 3. (for reference) Introduction to Algorithms by Thomas Cormen, Charles Leiserson, Ronald Rivest, Publishers: MIT Press or McGraw Hill. 4. (for reference) Foundations of Computer Science, Chapter 10: Patterns, Automata and Regular Expressions Alfred V. Aho, Jeffrey D. Ullman, Publishers: W.H. Freeman, ISBN 0-7167-8284-7. |
||||||||||||||||||||
| Discussion Sections |
The main purpose of discussion sections is for students to discuss and
analyze the material presented in class. They are expected to take an
active role. Home works will provide the framework for the material
presented in class. Therefore, students should come to the discussion
sections prepared to work on those problems. Discussion sections will
also cover background material and questions about the programming
assignments. All discussions sections are held on Tuesdays. Times and locations of discussion sections are as follows:
|
||||||||||||||||||||
| Homeworks, Programs |
Home works will be discussed in the class and in the discussion
sections. There will be a week's lead time for each home work. There
will be 5 medium--sized programming projects. Programs will have to be
written in Java and run under Linux; one or two will use Haskell,
which will be described in the class. | ||||||||||||||||||||
| Newsgroup and Web Site | Web sites will be put up for
discussions and all handed-out material. | ||||||||||||||||||||
| The Tests | There will be several pop quizzes during the term to make sure you are
keeping up with the class. Three tests will be given; the first two
will be in-class tests on 2/20/08 (Wednesday) and 4/2/08 (Wednesday).
The final test will be on May 12 in CMA A2.320 (9am - 12 noon). All
quizzes and tests are open-book and open-notes. | ||||||||||||||||||||
| Grading Policy | The programming projects will count for
25% and pop quizzes for 10% of the final grade. Your best test counts
for 30%, the second best for 20% and the worst for 15%. Even though no
points are assigned for the home works, it is essential that you do
them, because the questions in the tests will be similar to the home
work problems. | ||||||||||||||||||||
| Student code of conduct |
This web site states the departmental policy on student (and
instructor) code of conduct. |