Mathematical Computer Science (MCS)
Courses for Fall 1998
MCS 401 (Same as EECS 460) Computer Algorithms I
Time=10am MWF Room=238SES Call=06342 Instructor=tba Time=2pm MWF Room=310AH Call=62228 Instructor=Joel Berman Catalog description:
Design and analysis of computer algorithms; divide and conquer,
dynamic programming, greedy method, backtracking; algorithms for sorting,
searching, graph computations, pattern matching; and NP-complete problems.
Prerequisites:
Grade of C or better in MCS 360
and
Stat 381; or EECS 360.
Undergraduate students must register for 3 hours;
graduate students for 4 hours.
Click Here for EECS 460 (MCS 401) Homepage
MCS 411 (Same as EECS 473) Compiler Design
Time=12pm MWF Room=302AH Call=07289 Instructor=J. Hummel, EECS
(Section Closed) Catalog description:
Same as Mathematical Computer Science 411. Lexical analysis, parsing
schemes, semantic flow models, symbol table generation, run-time
storage management, compile-time management of declarations, error
detection techniques, and code generation.
Prerequisites:
Grade of C or Better in either EECS 361 or
MCS 441, and in either EECS 360 or MCS 360.
Undergraduate students must register for 3 hours;
graduate students for 4 hours.
Click Here for EECS 473 (MCS 411) Homepage
MCS 415 (Same as EECS 476) Programming Language Design
Time=9am MWF Room=306AH Call=09379 Instructor=tba, EECS Catalog description:
Definition, design and implementation of programming languages; syntactic
and semantic description; variable bindings, control and data structures;
parsing, code generation, optimization; exception handling; and data
abstraction.
Prerequisites:
MCS 261 and MCS 270 or EECS 370
Undergraduate students must register for 3 hours;
graduate students for 4 hours.
Click Here for EECS 476 (MCS 415) Homepage
MCS 421 Combinatorics
Time=1pm MWF Room=307AH Call=62249 Instructor=Uri N. Peled Catalog description:
The pigeonhole principle, permutations and combinations, generating
permutations and combinations, binomial coefficients, inclusion-exclusion
principle, recurrence relations and generating functions, special counting
sequences, Polya theory of counting.
Prerequisites:
Grade of C or better in MCS 261;
and Math 310 or 320 or 330.
Undergraduate students must register for 3 hours;
graduate students for 4 hours.
Click Here for MCS 421 Syllabus page
MCS 425 Codes and Cryptography
Time=11am MWF Room=208TH Call=00826 Instructor=Vera Pless Catalog description:
Mathematics of communications theory, basic information theory
necessary to understand both coding theory and cryptography, basic
ideas and highlights for both coding theory and cryptography,
including public-key cryptosystems.
Prerequisites:
Grade of C or better in MCS 261; and Math 310 or 320 or 330.
Undergraduate students must register for 3 hours;
graduate students for 4 hours.
MCS 441 Theory of Computation I
Time=12pm MWF Room=305TH Call=06935 Instructor=tba Catalog description:
Introduction to formal languages; relations between grammars and automata;
elements of the theory of computable functions.
Prerequisites:
Grade of C or better in MCS 261.
Undergraduate students must register for 3 hours;
graduate students for 4 hours.
MCS 471 Numerical Analysis
Time Table:
Time=2pm MWF Room=306 AH Call=62255 Instructor=Hanson
Catalog description:
Introduction to numerical analysis; floating point arithmetic,
computational linear algebra, iterative solution to nonlinear
equations, iterpolation, numerical integration, numerical solution
of ODEs, computer subroutine packages (including Maple and
Matlab/Octave).
Prerequisites:
A grade of C or better in MCS 360 Structured Programming II or EECS
270 Introduction to Programming languages or MCS190 Introduction
to Scientific Computing or EECS 170 Fortran Programming for Engineers
or MCS 260 Introduction to Computer Science I or EECS 171 Introduction
to Programming. 3U4G hours.
Core Course:
Mathematical Computer Science Master's Program and Examination.
Target Audience:
Students in Mathematics, Computer Science and Natural Sciences.
Class Web Page:
http://www.math.uic.edu/~hanson/mcs471syllabus.html
MCS 481 Computational Geometry
Time=10am MWF Room=312TH Call=62261 Instructor=Glenn K. Manacher Course description:
Algorithmic problems on sets of points, rectangles, intervals,
arcs, chords, polygons. Counting, reporting, location, intersection,
pairing; static and dynamic data structures.
Prerequisites:
Grade of C or better in MCS 401 or consent of instructor.
MCS 548 Mathematical Theory of Artificial Intelligence
Time=1pm MWF Room=317TH Call=62368 Instructor=William A. Howard Course description:
Artificial Intelligence and expert systems, with emphasis in writing
expert systems in PROLOG.
Textbook:
"Prolog and Expert Systems," by Kenneth Bowen.
Prerequisites:
Consent of instructor.
Click Here for MCS 548 Syllabus page
MCS 565 Mathematical Theory of Databases
Time=11am MWF Room=321TH Call=00834 Instructor=Stephen S. T. Yau Catalog description:
Abstract systems of databases, syntax, semantics of operational
languages, dependencies, and normal forms, axiomatics, queries and
query optimization, null values, algebraic interpretations. 4 Hours.
Prerequisites:
Consent of Instructor.
MCS 590 Advanced Topics in Computer Science:
Advanced Object-Oriented Languages
Time=10am MWF Room=309TH Call=62402 Instructor=Jeffrey S. Leon Catalog description:
Advanced topics in object-oriented languages, illustrated via C++.
Inheritance and dynamic binding, exception handling, handle classes and
reference counting, advanced aspects of operator overloading, memory management,
the C++ library classes supporting IO streams, container classes and the
Standard Template Library.
4 Hours.
Prerequisites:
A first course in C++, such as MCS494 (Object-Oriented Languages).
Consent of Instructor.
Texts:
Andrew Konig and Barbara Moo, "Ruminations on C++", Addison-Wesley, 1997.
Steven Teale, "C++ IO Streams Handbook", Addison-Wesley, 1993.
The Draft ANSI C++ Standard (available on the internet).
MCS 590 Math and Information Sciences for Industry (MISI) Workshop
(Special Topics in Computer Science) Time=1pm MWF Room=311AH Call=62396 Instructor=Robert L. Grossman Description:
This course is centered around one or more "industrial" problems. The goal of
the course is to provide an opportunity for students to use mathematics to work
on problems arising from industrial applications. The course will cover:
mathematical modeling, problem formulation, problem analysis, problem solution,
developing software to implement the solution, validating the software,
analyzing the results, documenting the problem and its solution, and
communicating the results.
Prerequisites: Prior coursework in algorithms, applied
mathematics, and C programming, or consent of instructor.
Core course: Proposed Industrial Mathematics (MISI) Program.
Target Audience:
Mathematically Oriented Students in Mathematics, Computer Sciene, Engineering
and Sciences.
Click Here for MCS 590 (Grossman) Homepage Click Here for MISI Program Homepage
MCS 591 Advanced Topics in Combinatorial Theory:
Combinatorial Designs
Time=9am MWF Room=320TH Call=62417 Instructor=Vera Pless Topics to be Covered:
Latin Squares, Hadamard Matrices and Reed-Muller Codes,
Combinatorial Designs, Codes and Designs, Strogly Regular Graphs and
Partial Geometries, Orthogonal Latin Squares, Projective and
Combinatorial Geometries.
4 Hours.
Text: "A Course in Combinatorics" by van Lint and Wilson,
Cambridge University Press, 1992
Prerequisites:
MCS 421 and MCS 423. Consent of Instructor.
Web Source: http://www.math.uic.edu/~hanson/MCS-S98Courses.html