Abstract
Mathematics is one of the primary tools computer science students should learn to use for thinking and problem solving. This should be stressed earlier in the computer science curriculum. The first course at Stony Brook, Foundations of Computer Science integrates critical thinking, problem solving, modern discrete mathematics concepts and mathematical foundations of computer science before teaching computer programming. This approach has been used successfully at both the high school and college levels. These courses provide students with the mathematical tools they need for thinking and problem solving, especially in computer science. One key to achieving this goal is a laboratory experience which reinforces the basic course concepts and demonstrates their use in computer science. Using a network of Apple Macintoshs students are exposed to a wide range of ideas and applications of discrete mathematics. These include declarative vs imperative thinking, automatic theorem proving, logic programming, fundamental structures of computer science, functional programming, and algorithmic problem solving. This paper presents the motivation and objectives of these courses, the underlying philosophy of the laboratory courseware, and detailed descriptions of each courseware component. Readers primarily interested in this courseware may begin by reading Section 5.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have