At The College of New Jersey, there is an on-going college-wide transformation of all the programs and curricula into more

Since I am new to teaching Discrete Math (since Fall 2003), there will be a lot of things I may be missing and I will need to learn. However, I felt that I must write this essay just to clarify my thoughts and to hopefully share them with some other people.

The way I perceive Discrete Math is a means to model real world, formally. That is, I view Discrete Math as the first step of transforming real-world problems. This places Discrete Math at a unique position in a Computer Science curriculum, in contrast to many other courses which focus on solving computational problems. When students want to write a program to solve some real-world problem, they will need to apply Discrete Math at some point. For example, I asked my students, "in order to write a program to automatic routing software (like the one on MapQuest or a GPS), how would you represent the necessary information? What about the game of musical chairs, social dance steps, or foreign policies?" At the heart of such a modeling process, I see the

The idea of logic-structure connection is implicit in many areas; but it is rarely explicitly discussed (except mainly in mathematical logic). But there seem to be many advantages in placing the logic-structure connection at the heart of representing real-world objects/phenomena, as described below.

- The process can be applied to virtually any objects/phenomena. Thus, it is possible to create examples, exercises, and mini projects that are relevant to students' life (e.g., exercise (Spring 2003), final comprehensive exercise, mini project).
- Since sets, relations, and functions are components of structures and they can be specified by logical statements, all these basic components of Discrete Math will be in need every time students model something.
- The topic of algebraic structures fits naturally as a special case of
structure, i.e., an operational structure with a single carrier/set with
some logical conditions on the operations, e.g.,
*x*+ (*y*+*z*) = (*x*+*y*) +*z*for al*x*,*y*,*z*(in a certain set). More generally, any logical statements would specify a collection of structures; conversely, a structure satisfy (typically multiple) collections of logical statements. - Pretty much all of other Discrete Math topics can be discussed in connection to this general scheme. For example, groups as an operational structure, orderings as relational structure, Boolean algebra (as both operational and relation structures), graphs and trees with slightly different logical conditions, languages/automata as tuples, discrete probability involving sample space, etc.
- Even proofs can be
viewed as a sequence of logical statements that is consistent with the intended collection of structures.

- Further more, logical specification is an important idea in software specification [e.g., Laeckx, et al., 1996].

As for the organization of the materials, I adopt a "spiral" approach, starting from informal discussion of logic-structure connection (with no math symbols) and gradually introducing formal notation. Such an approach may not work well with the traditional course organization of materials divided into topics (Hein, 2003 is somewhat different in this respect). However, the spiral approach seems to work well with the idea of logic-structure connection (e.g., exercise (Spring 2003)). In my course, the notion of "sets" are visited multiple times at various points in the semester. Such a non-traditional way of introducing materials has some potential drawbacks. For instance, it is not very straightforward to use currently available textbooks. However, there is no textbook focusing on the logic-structure connection anyway (I list Hein, 2003 as our text, or more as reference). In addition, at the end of the semester, I received a few comments that the informal part of the course was vague. But I do not necessarily take those comments negatively. Those students must have appreciated formal representation.

I think that students in general can understand and appreciate what we can do with the logic-structure connection. The overall response of the students has been positive. Naturally, there still are many things I want to improve on. But I feel that this is probably a good start and an interesting approach for discussion.

- My Discrete Math course (CMSC210 Discrete Structures of Computer Science) pages for Fall 2003
- James L. Hein. 2003.
*Discrete Mathematics, 2nd ed*. Jones & Bartlett. [course textbook for Fall 2003]

- Herbert B.
Enderton. 2000.
*A Mathematical Introduction to Logic, 2nd ed*. Academic Press. [Section 2.2 discusses the logic-structure connection] - J. N. Crossley, et al.
1990.
*What is Mathematical Logic?*Dover. [Chap 3 is a 11-page discussion of Model Theory] - Patrick Suppes. 2002.
*Representation and Invariance of Scientific Structure*. CSLI.. - Jacques Loeckx, Hans-Dieter
Ehrich, and Markus Wolf. 1996.
*Specification of Abstract Data Types*. John Wiley & Sons. - Fink, L. Dee. 2003.
*Creating significant learning experiences: an integrated approach to designing college courses*. Jossey-Bass. [associated web site] - Huba, Mary E. 2000.
*Learner-centered assessment on college campuses**: Shifting the Focus from Teaching to Learning*. Allyn and Bacon. - Integrating Mathematical Reasoning into Computer Science Curricula [by Doug Baldwin]

<End>