COMPUTER SCIENCE (C S)




C S 5100. Seminar in Computer Science/(1).F.
Discussion and presentation of current topics in
computer science. Each student will make oral and
written reports on the results of research
conducted on an instructor approved topic.
Prerequisite: graduate status in computer science.




C S 5110. Design and Analysis of Algorithms/(3).F.
Algorithmic paradigms, worst-case and average-case
analysis, recurrence relations, lower bounds,
classes of P and NP, and NP-complete problems.
Applications including sorting, searching, dynamic 
structures, set algorithms, graph algorithms,
randomized algorithms, and pattern matching.
Prerequisite: CS 3460.
                                                 


C S 5120. Applications of Graph Theory and
Combinatorics/(3).S.Odd-numbered years.
Basic concepts of graph theory and combinatorics
as they are applied in computer science, including
such topics as connectivity, colorability,
planarity, distribution of distinct and
nondistinct objects, generating functions and
recursion, partitions, Latin squares, and block designs.
Prerequisite: CS 3460.


                                        
C S 5310. Numerical Analysis With Computer
Applications/(3).F.On Demand.
A study of methods of solving systems of linear
and non-linear equations, differential equations
and numerical integrations with emphasis on
convergence properties and error analysis.
Prerequisites: linear algebra, real variables,
computer programming (CS 1400 or 1440).
Corequisite: MAT 5610. (Same as MAT 5310.)




C S 5440. Topics in Artificial
Intelligence/(3).F.Odd-numbered years. 
This course will cover such topics as natural
language processing, automated theorem-provers,
expert system shells, and machine learning.
Student projects will involve advanced logic
programming techniques. Prerequisite: CS 4440.




C S 5450. Computer Networking/(3).S.Even-numbered
years. 
Computer network architectures and protocols. The
OSI model. Specification, modeling, analysis, and
implementation of protocols. Prerequisite: CS
4450.




C S 5465. Advanced Computer
Graphics/(3).F.Odd-numbered years.
Review of 2D coordinate systems, primitives and
transformations.  Anti-aliasing. Theory of light.
Color models. Homogeneous coordinates and
perspective transformations. Curve and surface
representation. Solid modeling. Reflection and
refraction. Image rendering. Visualization and 4D
computer graphics. Parallel computer graphics
hardware and algorithms. Prerequisite: CS 4465.




C S 5483. Computer Architecture/(3).S.
An in-depth study of current concepts in computer
architecture, including such topics as concurrent
execution, parallel architectures, RISC
architectures, pipelined and array processors,
data-flow machines, and special purpose
processors. Prerequisite: CS 3482.




C S 5500. Independent Study/(1-3).F;S.
Individual students study topics of interest under
the direction of a faculty member. Prerequisite:
12 hours of graduate credit in computer science.




C S 5520. Operating Systems/(4).S.
Study in depth of the various parts of operating
systems including schedulers, memory management,
interrupt handling and time sharing. Lecture three
hours, laboratory three hours. Prerequisites: CS
3482, STT 2810 or STT 4250. (Dual-listed with 
CS 4520.)                   




C S 5525. Database Implementation/(3).S.
Odd-numbered years.
An advanced database course covering topics
related to database implementation.  Topics
include disk organization, file structures, file
indexing structures such as B-trees, query
operations and optimization, transaction
processing, concurrency control, recovery
techniques, and security. Prerequisites: C S 3430
and C S 3460. (Dual-listed with CS 4525.)                   




C S 5530-5549. Selected Topics in Computer
Science/(1-4).On Demand. 
Topics of current interest in computer science not
covered in existing courses. May be repeated for
credit when content does not duplicate.
Prerequisite: permission of instructor.




C S 5550. Theoretical Computer Science/(3).S.Even
numbered years.
A rigorous treatment of some theoretical aspects
of computer science including formal definition of
the notion of an algorithm, abstract machines, and
formal grammars. Prerequisite: CS 2490. (Dual-listed with 
CS 4550.)                   




C S 5560. Advanced Operating
Systems/(3).F.Even-numbered years.
Principles of operating system design applied to
state of the art computing environments such as
object-oriented systems, multiprocessors, and
distributed systems. Prerequisite: CS 5520.




C S 5569. Human-Computer Interfaces/(3).S.Even
numbered years.
This course covers topics related to the design
and evaluation of human-computer interfaces (HCI). 
Topics include: understanding the user audience,
HCI architectures, design issues related to
various interface components, measuring HCI
usability, incorporating HCI design into system
development, and social issues.  Students are
required to complete a group project in HCI
presented in written form and orally to the class. 
Prerequisite: permission of the instructor.
(Dual-listed with CS 4570.)                   




C S 5570. Design and Analysis of User
Interfaces/(3).F.Even-numbered years.
This course covers systematic methods for design,
development, testing and evaluation of
human-computer interfaces (HCI). Students are
required to apply these concepts to a specific HCI
problem. Current research topics in HCI are
discussed. Prerequisite: CS 5569.




C S 5620. Real-time Systems/(4).S.Odd numbered
years.
Real-time hardware and software. Data acquisition
and data reduction. Real-time algorithms and data
structures. Advanced programming topics including
buffering, input-output, and interrupts. Lecture
three hours, laboratory three hours. Prerequisite:
CS 3482. (Dual-listed with CS 4620.)                   




C S 5630. Programming Language Translation/(4).F.
Techniques for the translation of
programming languages into machine or assembly
language. Each student will participate in the
writing of a compiler. Lecture three hours,
laboratory three hours. Prerequisites: CS 3482 and
3490. (Dual-listed with CS 4630.)                   




C S 5666. Software Engineering/(3).F.
Methodical development of large software systems.
Topics include: models, project life cycle, 
requirements and specification, structure charts
and design criteria, incremental implementation, 
software metrics. Use of module and source code
management, symbolic debugging, and project
planning software. Students will participate in
the realization of both group and individual
software systems. Prerequisite: CS 3481. (Dual-listed
with CS 4667.)                   




C S 5667. Advanced Software
Engineering/(3).S.Odd-numbered years.
Review of the system life cycle. Software metrics.
System engineering. Analysis and system
specification. Object-oriented modeling.
Computer-aided software engineering (CASE).
Verification, validation and formal specification.
Both individual and group projects are required.
Prerequisite: CS 5666.




C S 5730. Object-Oriented Design and
Programming/(3).S.Even-numbered years.
A study of the factors involved in creating
object-oriented programs, including object
structure, behavior and implementation. Comparison
of contemporary object-oriented programming
languages. Prerequisite: CS 3460. (Dual-listed with 
CS 4730.)                   




C S 5989. Graduate Research/(1-9).F;S. 
This course is designed to provide access to
University facilities for continuing graduate
research at the master's and specialist's levels. 
It is graded on an S/U basis and does not count
toward a degree.




C S 5990. Numerical Linear Algebra/(3).S.On
Demand.
Methods for solving systems of linear equations
with an emphasis on large, sparse systems. LU
factorization including storage schemes, graph
theory, ordering algorithms, and block
factorization. Iterative methods including 
Jacobi, SOR, and conjugate gradient. Eigenvalue
methods including power method, QR factorization,
and Lanczos methods. Parallel matrix computations.
Prerequisite: MAT 4310. (Same as MAT 5390.) 
(Dual-listed with CS 4990.)                   




C S 5999. Thesis/(4-6).F;S.
Prerequisite: departmental approval.
Graded on an S/U basis only.