skip to main content
article

New directions in teaching the fundamentals of computer science — discrete structures and computational analysis

Published:01 January 1973Publication History
Skip Abstract Section

Abstract

Since the publication of the Curriculum 68 report of the ACM Committee [CUR 68], undergraduate computer science programs have undergone substantial changes. Notably, many courses previously taught at the graduate level have shifted down to the undergraduate level; new areas have developed and consolidated but were not covered by the ACM report. These facts make it necessary to revise and update the Curriculum 68 report. An important factor which could help the revision is the actual experience gained through the development of many new undergraduate computer science programs since the publication of Curriculum 68 report five years ago. More specifically, most recommendations of the ACM report contain just the subject areas to be taught. The actual teaching experiences of these courses have formulated certain basic philosophies and formats of presentation. It is helpful, in our opinion, to compare the merits of these philosophies and formats of presentation.

In this paper, we shall discuss the basic philosophies and formats of presentation of two undergraduate computer science courses—Introduction to Discrete Structures, and Computational Analysis. The former coincides with the B3 course of the Curriculum 68 report; the latter is a new course not covered by the ACM report.

References

  1. 1 Structural Programming and Top Down DesignGoogle ScholarGoogle Scholar
  2. 1.1 Baker, F. T. Chief Programmer Team Management of Production Programming, IBM Systems Journal, ii, i (1972).Google ScholarGoogle Scholar
  3. 1.2 Dijkstra, E. W., Notes on Structural Programming TH-Report 70-WSK-03, Dept. of Mathematics, Technological University Eindhoven The Netherlands, April 1970.Google ScholarGoogle Scholar
  4. 1.3 Henderson, P. and Snowdon, R. An Experiment in Structured Programming, BIT 12 (1972).Google ScholarGoogle Scholar
  5. 1.4 Mills, H.D. Mathematical Foundations for Structured Programming, IBM Report FSC 72- 6012, May, 1972.Google ScholarGoogle Scholar
  6. 1.5 Mills, H.D. Top Down Programming in Large Systems, In Debugging Techniques in Large Systems, R. Rustin (Ed.), 1971.Google ScholarGoogle Scholar
  7. 1.6 Wirth, N. Program Development by Stepwise Refinement, Comm. ACM 14, 4(April 1971). Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. 2 Computational CorrectnessGoogle ScholarGoogle Scholar
  9. 2.1 Burstall, R.M. Proving Properties of Programs by Structural Induction, Computer Journal 12, (Feb, 1969).Google ScholarGoogle Scholar
  10. 2.2 Elspas, B.; Levitt, K.; Waldinger, R.; Waksam, A., An Assessment of Techniques for Proving Program Correctness, Computing Surveys 4, 2 (June 1972). Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. 2.3 Good, D. I., Developing Correct Software, In Proc. of First Texas Symposium on Computer Systems (June 1972).Google ScholarGoogle Scholar
  12. 2.4 Hoare, C. A. R. An Axiomatic Basis for Computer Programming. Comm. ACM 12, 10 (Oct. 1969). Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. 2.5 Hoare, C.A.R. Procedures and Parameters: An Axiomatic Approach, Symposium on Semantics of Algorithmic Languages, E. Engeler (Ed.) Springer-Verlag (1970).Google ScholarGoogle Scholar
  14. 2.6 Hoare, C.A.R. Proof of a Program: FIND. CACM 14, (Jan. 1971). Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. 2.7 Hull, T.E. Enright, W. H., Sedgwick, A. E., The Correctness of Numerical Algorithms, Proc. of Conference on Proving Assertions about Programs, ACM (Jan. 1972). Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. 2.8 King, J.C. Proving Programs to be Correct, IEEE Transactions on Computers, (Nov. 1971).Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. 2.9 Lee, J.A.N. The Definition and Validation of the Radix Sorting Technique, Proc. of Conf. on Proving Assertions about Programs., ACM (Jan. 1972). Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. 2.10 London, R.L. Bibliography on Proving the Correctness of Computer Programs" In Machine Intelligence 5, B. Meltzer & D. Michie (Eds) Amer. Elsevier Publ. Co., New York, 1970.Google ScholarGoogle Scholar
  19. 2.11 London, R.L. Proofs of Algorithms: a new kind of certification (certification of algorithm 245, Treesort 3). Comm. ACM 13 6 (June, 1970). Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. 2.12 London, R.L. The Current State of Proving Programs Correct, In Proc. of ACM Annual Conf. ACM (Aug. 1972). Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. 2.13 Manna, Z., Properties of Programs & the First-Order Predicate Calculus, JACM 16, 2(Apr. 1969). Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. 2.14 Manna, Z.; Ness, S.; Vuillen, J.: Inductive Methods for Proving Properties of Programs. In Proc. of Conf. on Proving Assertions about Programs, ACM (Jan. 1972). Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. 2.15 Maurer, W.D., State Vectors: A Preliminary Survey, Memo No. ERL-M347, Univ of Calif. Berkeley, (Aug., 1972).Google ScholarGoogle Scholar
  24. 2.16 Naur, P. Proof of Algorithms by General Snapshots BIT 6, 1966.Google ScholarGoogle Scholar
  25. 3 Computing Time AnalysisGoogle ScholarGoogle Scholar
  26. 3.1 Knuth, D.E., The Art of Computer Programming, Addison-Wesley, Vol. 1, 1968; Vol. 2, 1969; Vol. 3, 1972. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. 3.2 Knuth, D.E. Mathematical Analysis of Algorithms, IFIP Congress Proc. I, 135-143, 1972.Google ScholarGoogle Scholar
  28. 3.3 Russell, E.C. Automatic Program Analysis, UCLA Report 69-12, A.D. (March 1969).Google ScholarGoogle Scholar
  29. 4 Collins, G.E. The Calculation of Multivariate Polynomial Resultants, Proc. of the 2nd Symp. on Symbolic & Algebraic Manipulation, Los Angeles, March, 1971. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. 5 Curriculum 68 Report of ACM Committee, Comm. of ACM, Vol. 11, No. 3, March, 1968.Google ScholarGoogle Scholar
  31. 6 Heindel, L.E., Computation of Powers of Multivariate Polynomials over the Integers, JCSS 6, 1-8 (1972).Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. 7 Knuth, D.E. The Art of Computer Programming, Vol. I: Fundamental Algorithms, Addison-Wesley Publ. Co., Reading, Mass., 1968. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. 8 Liu, C.L., Introduction to Combinational Mathematics, McGraw-Hill, 1968.Google ScholarGoogle Scholar

Index Terms

  1. New directions in teaching the fundamentals of computer science — discrete structures and computational analysis

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGCSE Bulletin
        ACM SIGCSE Bulletin  Volume 5, Issue 1
        Proceedings of the 3rd SIGCSE symposium on Computer science education
        February 1973
        171 pages
        ISSN:0097-8418
        DOI:10.1145/953053
        Issue’s Table of Contents
        • cover image ACM Conferences
          SIGCSE '73: Proceedings of the third SIGCSE technical symposium on Computer science education
          January 1973
          185 pages
          ISBN:9781450373753
          DOI:10.1145/800010

        Copyright © 1973 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 1 January 1973

        Check for updates

        Qualifiers

        • article
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!