Date: Wed, 20 Nov 1996 22:32:38 GMT Server: Apache/1.0.3 Content-type: text/html Content-length: 9291 Last-modified: Wed, 19 Jun 1996 02:05:21 GMT C251 Course Description

C251 - Foundations of Digital Computing, Summer I 1996 (3 cr)

Section 2124, Computer Science Department, Indiana University.

Contents



Course description Textbook
General information Communication
Grading Policies
Study Aids

General Information

Instructors

Michael Jahn mjahn@cs.indiana.edu

James Newkirk jnewkir@cs.indiana.edu

Office Hours

Michael Jahn: Immediately after lecture, LH 230
Jim Newkirk: LH 330-I, Monday 12:00 to 1:00, and Tuesday 2:30 to 3:30.

Meeting times

Lectures: Daily 10:20-11:35 in LH 102
Discussion: TR 1:10-2:25 BH 222

Prerequisites

C211, M215, and as a prerequisite or corequisite C212.

Textbook

Alfred V. Aho and Jeffrey D. Ullman, Foundations of Computer Science, C Edition, Computer Science Press, New York, 1994.

Course Description

Almost every course in computer science uses concepts from mathematics. It is the aim of this course to present many of the mathematical topics that are frequently encountered while learning computer science. Those who have taken C201 using Scheme know the importance of recursion in programming. We start by examining in more detail the concept of recursion in Chapter 2 entitled "Iteration, Induction, and Recursion." In preparation for study in the analysis of algorithms, we shall look at the big-Oh notation in Chapter 3. Throughout mathematics we find that graphical representation of ideas make them easier to comprehend. The same is true in computer science, and we next go to Chapter 5 to discuss special graphs, called trees, as they are used as a data model in computing. Sets are another important mathematical concept underlying much of computer science, and these are treated in Chapter 7. Those who work in database theory know the importance of the relational databases. We next study functions and relations from a set theoretic point of view. Chapter 9 presents a more general discussion of graph theory than the previous discussion of trees. Logic underlies all of computer science. We next cover propositional logic, which makes up Chapters 12 and 14 of Aho and Ullman. If time permits, in the last part of the course we shall investigate finite state automata, a way of modeling computation. This material is is contained in Chapter 10. If time permits, we shall also discuss Turing machines and the halting problem.

Note that we have skipped many of the chapters in our text. We shall also skip over many of the sections within chapters. This text is designed for a year-long course which introduces students not only to the fundamental ideas underlying computer science but also to the important data structures used in computing. It would be nice to have enough time during the semester to cover the whole text, but since this is not the case, and since the material that we skip is so interesting, you might consider reading some of the sections or chapters we skip to get a head start for some of the future courses.

Homework assignments will be posted to the class web page regularly, usually due the next discussion section. Late assignments will not be accepted. Please write your solutions to the problems in a way that will be easy for the graders to read and understand. Presentation of the answers is a significant factor in grading homework.

In this course, you may discuss assignments with other students. (Do not assume this is true in all your courses!) We expect you to actually think through and fully understand assignment solutions. We have found that students who copy someone else's work and turn in something they do not fully understand usually do poorly on the examinations, which carry much more weight in grading.

Teamwork in doing assignments is good as long as each member of the team contributes, and fully understands the assignment. If you are working with a group, please indicate it on your homework papers. If someone has given you a lot of help, acknowledge them; you will not be penalized and they will get the thanks they deserve.

Study Aids

Assignments

No late assignments will be accepted.

Communication

The course newsgroup, ac.c.251, will be used to post announcements, such as assignments, exams, and any exceptions to our usual office hours. You are also encouraged to use it to post questions related to the course or share related information with the class. Make a habit of looking for new notes a few times each week.

On individual matters, please feel free to contact us in person or via email. This course description is accessible as an HTML (hypertext markup language) file on the WWW (World Wide Web) with the URL (Universal Resource Locator) http://www.cs.indiana.edu/classes/c251/home.html. It will be updated with additional information, such as homework assignments, as the course progresses.

To view a resource given its URL, use the netscape or mosaic program on a networked PC or Mac. These programs underline HTML hypertext links; to follow a link, click on it. The URL for the computer science department's home page is http://www.cs.indiana.edu/, from which all sorts of information can be obtained, including a thread to this home page.

Grading

No special assignments or projects will be given to help students raise their grades.

Policies

Academic Integrity

Read the Computer Science Department's Statement on Academic Integrity to be sure you understand the rules under which computer science courses operate. Cases of academic dishonesty will be reported to the Office of Student Ethics, a branch of the Office of the Dean of Students.

Withdrawal

May 24 is the last day (until 4:00pm) to drop a course or withdraw from all courses with an automatic W. After that date, a student may withdraw only with the permission of his or her dean. This approval is normally only for urgent reasons related to extended illness or equivalent distress.

June 5 is the last day for deans to approve a course drop.

Incomplete grade

An incomplete (I) final grade will be given only by prior arrangement in exceptional circumstances conforming to university and departmental policy which requires, among other things, that the student must have completed the bulk of the work required for the course with a passing grade, and that the remaining work can be made up within 30 days after the end of the semester. If these conditions cannot be met withdrawal is the appropriate course of action.

Special accomodation

Students who need any special accommodation must contact the the professor during the first week of class to discuss arrangements.

Questions

If you have questions about any of these policies, please ask the instructor.

This page was posted on May 7, 1996.