home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky sci.logic:1903 sci.philosophy.meta:2347
- Path: sparky!uunet!charon.amdahl.com!pacbell.com!decwrl!olivea!spool.mu.edu!uwm.edu!linac!unixhub!stanford.edu!CSD-NewsHost.Stanford.EDU!Sunburn.Stanford.EDU!pratt
- From: pratt@Sunburn.Stanford.EDU (Vaughan R. Pratt)
- Newsgroups: sci.logic,sci.philosophy.meta
- Subject: Re: Natural Kinds (was re: Are all crows black?)
- Message-ID: <1992Nov4.200546.2196@CSD-NewsHost.Stanford.EDU>
- Date: 4 Nov 92 20:05:46 GMT
- References: <1992Nov3.214913.25344@dcs.qmw.ac.uk> <Bx73nu.DMy@unx.sas.com> <1992Nov4.163618.17991@dcs.qmw.ac.uk>
- Sender: news@CSD-NewsHost.Stanford.EDU
- Organization: Computer Science Department, Stanford University.
- Lines: 142
-
- In article <1992Nov4.163618.17991@dcs.qmw.ac.uk> arodgers@dcs.qmw.ac.uk (Angus H Rodgers) writes:
- >The analogy with grammars is a favourite one of mine, too. (If Vaughan
- >Pratt is reading this, perhaps he'll explain this analogy using enriched
- >categories??)
-
- Actually 2-categories are the right tool here, namely the case of
- categories enriched in Cat. :-)
-
- I've been following this thread with some interest. Let me first give
- my background. I ran the theory division in Stanford's computer
- science department the past three years (I'm on sabbatical this year
- and mixing writing papers and proposals with reading physics and
- Usenet). I've had plenty of opportunity in those years to wax
- philosophical about theory's relationship with the other CS divisions,
- systems, AI, and scientific computing. This has led me to propose on a
- couple of occasions to restructure the department orthogonally to its
- present organization, a proposal that has been met with both some
- interest and considerable inertia. So although it's not going to
- happen overnight there's hope. In the meantime the department will
- continue to segregate the scientists and the engineers, which has its
- good points and bad.
-
- The variation in degrees of science vs. engineering is much greater
- within computer "science" than between the subjects CS, math, physics,
- medecine, biology, electrical engineering, mechanical engineering,
- operations research, psychology, and philosophy, this being a nearly
- complete list of the subjects that CS-ers at Stanford tend to interact
- with a lot. All of these subjects except perhaps for math and
- philosophy have both experimentalists and theoreticians, creating a
- diversity of research styles that is replicated across departments.
-
- To me engineering is the "how" of our universe and science is the
- "wh-": "why," "whether," "when," and "where." "Universe" here is
- broadly construed to include neutrons, nematodes, numbers, and
- nebulae. Some computer scientists want to know how to make their
- computers faster and their users more productive. Others want to know
- why this edge-follower is correct, whether that logic is complete, when
- this matrix-multiplier halts, and where that root-finder converges.
-
- There is no clear boundary separating "how" from "wh-". If the goal is
- a product then "how" has priority, "wh-" is usually a luxury, but on
- occasion a necessity. Conversely if the goal is pure science, the
- "how" may be merely the data from which the scientist starts, the "wh-"
- is the goal, though the search may yield additional "how"'s in the
- natural course of things.
-
- Anyone who thinks that computer science puts more emphasis on "how"
- than "wh-" may have experienced CS departments that emphasized computer
- engineering over computer science. As a prime counterexample, the
- Cornell CS department has for much of its ~25 years of existence been
- very theoretical, and I would think few familiar with that department
- would deny its claim to be truly concerned at least as much with the
- science of computation as with its engineering. While it has in recent
- years moved somewhat closer to an even mix of science and engineering,
- my assessment is that Stanford, MIT, and Berkeley have all been well
- balanced in that general regard from the beginning. (This is not to
- say they don't all have curriculum gaps of one kind or another; in that
- respect I consider Stanford to have fewer glaring omissions today than
- any of the other top handful of schools.) CMU, which previously had an
- engineering slant, has evened things up quite well within the past
- decade by a consisiderable strengthening of its theory group, though
- Dana Scott's move to Linz this year is quite a blow. CMU plus Cornell
- would be a dynamite combination!
-
- When someone puts down any discipline as not being a science, an easy
- test for whether they know what they're talking about is to ask them a
- few of the elementary questions from the science of that discipline,
- questions that any Ph.D. student taking the comprehensive exam should
- be able to answer. Here are some candidate questions for the science
- of computation based on introductory courses I've taught recently at
- Stanford. Perhaps others would care to draw on their experience to add
- to this list.
-
- 1. Give upper and lower bounds, tight to within a constant factor,
- on the number of comparisons required to (a) sort an n-element
- array (b) merge two n-element arrays.
-
- 2. How can the Fourier transform help with polynomial
- multiplication? By how much?
-
- 3. Define the complexity classes P and NP. How are they related?
- Which class corresponds to the easy problems? Which of the set
- of (a) primes (b) composites are in either of these classes
- when written in decimal? Would the problem of testing
- primality become easier or harder in the above sense if the
- numbers are written instead in unary (tally) notation?
-
- 4. Show how to find an occurrence of a pattern in a file in time
- proportional to the sum of their lengths.
-
- 5. Is the halting problem decidable for a nondeterministic
- automaton equipped (a) with a stack (b) with a writable input
- tape (no writing permitted beyond each end) (c) both?
-
- 6. What is a context-free language? Give two definitions, in
- terms of grammars and in terms of automata, and define the
- grammars and automata you need.
-
- 7. What is the distinction between ambiguity in a grammar and
- inherent ambiguity in a language? Are there any inherently
- ambiguous (a) regular languages (b) context-free languages?
- If so give an example.
-
- 8. Which definitions have a greater variety of fixpoints,
- primitive recursive or general recursive? Why? Can either kind
- have no fixpoint?
-
- 9. Show that a set is recursive if and only if both it and its
- complement are recursively enumerable.
-
- 10. In what sense can there be no programming language for the
- recursive sets, and why? Can there be a programming language
- for the primitive recursive sets?
-
- 11. What does it mean for a theorem proving method to be complete?
- Is Robinson's resolution method complete? Explain.
-
- 12. Name a logical system supporting program verification and give
- axioms or inference rules for it illustrating its use with two
- of the four program constructs, assignment, begin-end
- sequencing, conditional statement, iteration.
-
- 13. Define and compare deadlock, starvation, and livelock. Which
- are safety conditions and which liveness?
-
- 14. Can a circle be drawn as a Bezier cubic, and if so how, (a) exactly
- (b) approximately? What if rational cubics are permitted?
-
- 15. In filtering an image to remove aliasing, what difference does
- it make whether you filter before or after sampling, and why?
-
- 16. Is the CIE chromaticity diagram convex? Why/why not?
-
- 17. Can a color filter defeat color camouflage? Explain.
-
-
- I'd be interested in hearing from anyone who knows the answers to at
- least twelve of these questions but who feels that computation has no
- substantive underlying science.
-
- --
- Vaughan Pratt There's no truth in logic, son.
-