next up previous
Next: About this document Up: My Home Page

What is CSE 113?

The course title is Foundations of Computer Science, not Introduction to Computer Science.

This is not a course in computer programming, but on fundamental concepts of computing.

We will stress mathematical problem solving skills and the use of formal concepts as tools for computer science.

The goal is to develop thinking skills and discipline necessary to understand computer science.

Do You Really Want to Take CSE 113?

This course is very demanding and meant to be very demanding.

Last year, in a typical CSE 113 section, 182 students started the semester. Only 74 of these got the C+ or better to have a good possibility of being admitted to the CS major (101 C or better)

Expect to spend about 20 hours per week outside of class on this course.

There are challenging homeworks (7) and exams (3 midterms plus final).

You are responsible for all the material in the handouts.

If you don't have the time or maturity or mathematical background to take CSE 113, don't take it.

Academic dishonesty will be punished.

Administrative Matters

Getting into CSE 113 - Fill in form to establish that you have the prerequisites, then add.

Staying in CSE 113 - Fill out the form to show us you have the prerequisites, or else you will be deregistered.

Getting out of CSE 113 - Take the Challenge Exam!

Course handouts include:

All CSE 113 handouts will be available on the course WWW page, www.ug.cs.sunysb.edu/ tex2html_wrap_inline309 cse113.

Semester lecture notes are available from both the bookstore and the course WWW page.

Do not use this as an excuse to miss class!

Organization

Lecture: Twice each week I'll present material on mathematics and the foundations of Computer Science.

Recitation: Once each week, starting the second week of the term. The TA will reinforce lecture material, answer questions, and guide problem solving sessions.

Review sessions: Scheduled during (part of) the lecture before the recitation.

Getting Help

Many of you will find CSE 113 a stressful experience.

Keep up with the reading and homeworks!

Remember that nobody understands everything - ask questions if you are lost.

Don't be afraid to see me or the TAs!

Form a study group and work together to learn the material - not just copy homework solutions.

If you are having personal problems, help is available. Call the Counseling Center, 632-6720. They also have workshops on building better study habits.

What is Computer Science?

Why are we studying mathematics and problem solving in a first course in CS?

Computer Science is not computer programming - although programming is part of it.

Computer Science is an engineering discipline - we seek to build things that serve a purpose.

Computer Science is a mathematical science - we study the capabilities and limitations of computers and how people can use them effectively.

Why Isn't CS ``Just Programming''?

Many of you already have some programming experience, but programs of only a few hundred lines are easy for one person to build with little training.

Real-world software systems are large - perhaps millions of lines long. Developing and understanding such complicated objects requires mental and mathematical discipline.

Real-world software systems must be reliable - they control economies, airplanes, nuclear weapons, and the breaks in your car. Failure is so expensive (e.g. the Millenium bug) that systematic approaches and discipline are necessary to avoid errors.

Mathematics provides the language to reason about such systems. Problem solving techniques teach you how to think in a disciplined, systematic fashion.

Mathematics and Computer Science

Computer programming requires that the exact sequence of steps to perform a task must be specified completely and precisely.

This is difficult, and requires careful reasoning about abstract entities and operations.

Mathematics has developed over thousands of years as a method of abstract reasoning.

Mathematics provides a powerful language for precisely describing abstract ideas (logic, set theory, sequences, functions, relations), and powerful reasoning methods for use with abstract ideas (proof techniques, induction, problem solving).

Mathematical Objects and Operations

Sets are collections of other objects, such as the set of all students in this room, or the set of all prime numbers less than 100,000.

Operations on sets include:

Sequences are ordered collections of objects, such as the alphabet tex2html_wrap_inline319 , and subsequences of the integers tex2html_wrap_inline321 .

Operations on sequences include:

Functions and Relations

Functions are operations taking objects in one set to objects in another, such as the ``father-of'' function which takes people to parents.

Operations on functions include:

Relations are correspondences between sets, such as the ``friend-of'' relation.

Operations on relations include:

Graphs and Trees

Graphs are diagrams of relationships between objects (binary relations).

Operations on graphs include finding paths, cycles, and components.

Trees are diagrams of hierarchical relationships, such as family trees or corporate hierarchies.

Problem Solving Methods

Recursion is a problem solving method in which the solution to a large problem is obtained by combining solutions to smaller instances of the same kind of problem.

For example, to find all the descendents of x, concatenate the lists of descendents of each of x's children.

Induction is a reasoning method in which large objects are shown to have some property by combining proofs that smaller subobjects have the property.

For example, to show that every even integer n is divisible by 2, use the fact that the previous even integer n-2 is divisible by 2. If (n-2)/2 = k, then n/2 = k+1.

Logic

Logic objects are statements that can be either true or false, such as ``Socrates dies of old age'', ``Every man is mortal'', ``for every number n, there exists another number m such that m>n.''

The primary operation in logic is inference, testing whether a statement is true.

If ``Every man is mortal'' and ``Socrates is a man'', then we can infer ``Socrates is mortal''.

Cheating in CSE 113 Bill, Sue and Fred are suspected of having cheated on a 113 exam.

Bill says: Sue is guilty and Fred is innocent.

Sue states: If Bill is guilty, then so is Fred.

Fred claims: I am innocent, but at least one of the others is guilty.

Who is in the Picture?

Fun example: A man looking at a painting says, ``Brothers and sisters, I have none, but that man's father is my father's son.''

Who is in the picture?

x has no brothers and sisters.

father(y) = son(father(x)) = x

Therefore, y = son(x).




next up previous
Next: About this document Up: My Home Page

Steve Skiena
Tue Aug 24 13:01:58 EDT 1999