SIGCSE'98 Panel on Logic in the CS Curriculum
Logic has been called "the calculus of computer science".
The argument is that logic plays a fundamental role in computer
science, similar to that played by calculus in the physical sciences
and traditional engineering disciplines. Unlike calculus, however, the
central place of logic in the computer science curriculum is far from
universally accepted. For example, the ACM/IEEE Computing Curricula
1991 lists logic only as one of many mathematics requirements. Yet
logic plays an important role in areas of Computer Science as disparate
as architecture (logic gates), software engineering (specification and
verification), programming languages (semantics, logic programming),
database (relational algebra and SQL), artificial intelligence
(automatic theorem proving), algorithms (complexity and expressiveness),
and theory of computation (general notions of computability). Some
might even argue that much of computer science can be seen as a
generalization or outgrowth of logic. On the other hand, there are
those who claim that logic is just an academic exercise, of no
practical import. The focus of this panel the role of logic in the
computer science curriculum.
- M. David: Influences of mathematical logic on computer science.
In The Universal Turing Machine: A Half-Century Survey ,
R. Herken (ed.), 1988.
- J.P. Meyers: On the central role of mathematical logic in
computer science. Proc. 21st ACM SIGCSE Symp. on Computer Science
Education, 1990, pp. 22-26.