CSc - Computer Science Course Descriptions

CSc I0400 Operating Systems

Underlying theoretical structure of operating systems; input-output and storage systems, data management and processing; assembly and executive systems, monitors; multiprogramming.

Credits

3

Prerequisites

CSC 33200 or an equivalent undergraduate course.

Contact Hours

3 hr./wk.

CSc I0500 Computer Graphics

An intensive introduction to computer graphics hardware, design of graphics packages, geometric transformations, 3D viewing and projections, raster scan conversion, visible surface determination, lighting and shading, 3D shape representation, and splines. Emphasis is on implementation of important graphics algorithms.

Credits

3

Prerequisites

CSC 32200 and MATH 34600 or equivalent.

Contact Hours

3 hr./wk.

CSc I0600 Fundamental Algorithms

An intensive study of advanced non-numerical programming techniques. Data representation; list, tree and string manipulation algorithms. Recursive programming. Introduction to searching and sorting. Storage management algorithms. Comparative efficiency of algorithms.

Credits

3

Prerequisites

CSC 22000 or equivalent.

Contact Hours

3 hr./wk.

CSc I0700 Compiler Construction

Techniques involved in analysis of source languages and generation of efficient object code. Parsing methods, storage allocation, programming language semantics, optimization techniques, interpreters, study of existing compilers and their special features.

Credits

3

Prerequisites

CSC 22000 and CSC 30400 or equivalent.

Contact Hours

3 hr./wk.

CSc I0800 Topics in Software Systems

Selected topics of current interest. Recent offerings have included computer games, concurrent and distributed processing, search technologies, internet programming and information management.

Credits

3

Prerequisites

CSC 33200 or equivalent.

Contact Hours

3 hr./wk.

CSc I0802 Web/Geograph Info Sys


Credits

3

Contact Hours

3 hr./wk.

CSc I0807 Image Processing

An intensive introduction to imaging intended for graduate students and advanced undergraduates. Topics include digital filtering theory, image enhancement, image reconstruction, anti-aliasing, warping, and state-of-the-art special effects. These topics form the basis of high quality rendering in computer graphics, as well as low-level processing for computer vision, remote sensing, and medical imaging. Emphasizes computational techniques for implementing useful image processing functions. Programming assignments will reinforce material covered in class.

Credits

3

Prerequisites

CSC 32200 or equivalent.

Contact Hours

3 hr./wk.

CSc I0900 Graph Theory and Algorithms

Extremal graph theory. Drawing planar graphs. Elementary graph algorithms (breadth-first search, depth-first search, topological sort). Minimum spanning trees. Single-source shortest paths. Maximum bipartite matching. Connectivity of graphs. Random graphs.

Credits

3

Prerequisites

CSC 22000 or equivalent.

Contact Hours

3 hr./wk.

CSc I1000 Database Systems I

An introduction to database architecture. Levels of abstraction in a database system, physical data organization, abstract data models, relational database systems, and their query language.

Credits

3

Prerequisites

CSC 22000 and CSC 33200 or equivalent.

Contact Hours

3 hr./wk.

CSc I1100 Database Systems II

Logical models for database management systems, especially relational, hierarchical and network. Case studies illustrating their implications for applications system development. Physical implementation of advanced data and storage structures.

Credits

3

Prerequisites

CSc I1000 or equivalent.

Contact Hours

3 hr./wk.

CSc I1200 Topics in Algorithms

Current developments in the design, analysis and implementation of algorithms and their applications. Recent offerings have included packing and covering, randomized algorithms, geometric graphs, computational geometry, combinatorics, and algorithms in bioinformatics.

Credits

3

Prerequisites

CSC 22000 and CSC 30400 or equivalent.

Contact Hours

3 hr./wk.

CSc I1400 Parallel Algorithms

Techniques of efficient program design. Analysis of parallel algorithms chosen from information storage and retrieval, graph theory, pattern matching, matrix operations, etc. as to their time, space, and other resource requirements. Lower bounds for the intrinsic computational difficulty of some of these programs.

Credits

3

Prerequisites

CSC 22000 and CSC 30400 or equivalent.

Contact Hours

3 hr./wk.

CSc I1500 Artificial Intelligence

The study of how to make the computer behave intelligently. State-space methods of problem solving, heuristic search techniques, representation and use of knowledge, mechanical theorem proving, psychological implications. Examples of game playing, problem solving, or other systems.

Credits

3

Prerequisites

CSC 22000 and CSC 30400 or equivalent.

Contact Hours

3 hr./wk.

CSc I1600 Natural Language Processing

Methods for processing English texts and dialogues on the computer. Parsing, transformational analysis, semantic analysis, interfacing; examples of natural language systems for carrying on dialogues and performing tests.

Credits

3

Prerequisites

CSC 44800, or CSc I1500 or equivalent.

Contact Hours

3 hr./wk.

CSc I1800 Topics in Artificial Intelligence

Selected topics from expert systems, automated systems and robotics; automated reasoning; computer vision.

Credits

3

Prerequisites

CSC 44800 or CSc I1500 or equivalent.

Contact Hours

3 hr./wk.

CSc I1896 Computer Vision

A survey of the techniques used in computer vision, which recovers information from images. Topics include: the geometry of image formation; multiple 2D techniques for feature detection, image segmentation, object recognition, and texture; 3D shape from shading, stereo and motion. Some mathematical maturity is assumed, including familiarity with linear algebra, multidimensional calculus and simple statistics.

Credits

3

Prerequisites

CSC 22000, CSC 22100 and MATH 34600 or equivalent.

Contact Hours

3 hr./wk.

CSc I1900 Pattern Recognition and Machine Learning

Generalization and classification; pattern recognition and perception; concept formation; remembering and forgetting; learning and hypothesis formation.

Credits

3

Prerequisites

CSC 44800 or CSc I1500 or equivalent, and knowledge of Linear Algebra.

Contact Hours

3 hr./wk.

CSc I2000 Introduction to Theoretical Computer Science

Fundamental concepts from logic, models of computation, and complexity theory. Scope and limitations of various formalisms. The Chomsky hierarchy of languages and machines. Basic ideas for recursive functions. Impact on programming systems.

Credits

3

Prerequisites

CSC 30400 or equivalent.

Contact Hours

3 hr./wk.

CSc I2100 Finite Automata and Models of Computation

A review of the basic definitions, concepts and results concerning finite automata (e.g. Myhill-Nerode Theorem). Applications of finite state automata in the modeling of circuits for fast arithmetic computation, exploring graphs and robotic computations, pseudorandom number generators for internet protocols, recent physical and biological applications (e.g. Watson-Crick finite automata).

Credits

3

Prerequisites

CSC 30400 or CSc I2000 or equivalent.

Contact Hours

3 hr./wk.

CSc I2200 Theory of Computability

Formulations of effective computability: Post machines. Turing-type models, recursive functions, and semi-Thue systems. The equivalence of the various formulations. Church's Thesis. Fundamental theorems of computability: universal machines, S-M-N, and recursion theorem. Unsolvable problems. Recursive and recursively enumerable sets.

Credits

3

Prerequisites

CSC 30400 or CSc I2000 or equivalent.

Contact Hours

3 hr./wk.

CSc I2300 Symbolic Computation

A comparative study of the structure and use of various functional, logical and sequential languages used in symbolic computation and artificial intelligence. Choice of appropriate programming tools for specific applications. Comparison of user/machine interfaces.

Credits

3

Prerequisites

CSC 30400 or CSc I2000, or equivalent.

Contact Hours

3 hr./wk.

CSc I2400 Formal Language Theory

Classification of languages by grammars and automata. The Chomsky hierarchy: regular, context free, context sensitive and recursively enumerable languages and their associated grammars and automata. Closure properties for families of languages. Decision problems for grammars and automata.

Credits

3

Prerequisites

CSC 30400 or CSc I2000 or equivalent.

Contact Hours

3 hr./wk.

CSc I2600 Computational Complexity

Complexity measures for algorithmic systems, determinism vs. non-determinism, time vs. space, complexity hierarchies, aspects of the P-NP question, inherent complexity of specific algorithmic problems, recent applications to cryptography.

Credits

3

Prerequisites

CSC 30400 and CSc I2000 or CSc I0600.

Contact Hours

3 hr./wk.

CSc I2800 Topics in the Theory of Computing

Topics of current interest, such as quantum computing, biological computing, automated reasoning , parallel computation, advanced topics in complexity, algebraic and symbolic computation, historical issues and open problems.

Credits

3

Prerequisites

CSc I2000 or departmental approval.

Contact Hours

3 hr./wk.

CSc I3100 Seminar in Information Systems

Topics of current interest in computer-based information systems. Possible topics include computer-human interaction, virtual organization, decision support systems, knowledge management, and systems analysis. Students are required to complete a project on an approved topic in the course.

Credits

3

Prerequisites

CSc I1000.

Contact Hours

3 hr./wk.

CSc I3110 The Information Marketplace

All aspects of the market for computer-based information products and services. Course objectives are to define and characterize the information marketplace, to present concepts and methods for analyzing behavior within the marketplace, and review public and private policy implications of the information marketplace.

Credits

3

Prerequisites

Strong background in Economics and permission of the instructor.

Contact Hours

3 hr./wk.

CSc I4200 Computer Architecture

Quantitative principles of computer design. Instruction -level parallelism (ILP).Exploiting ILP using Dynamic Scheduling, multiple issue, and speculation. Issues in thread-level parallelism using ILP. Multiprocessors and thread-level parallelism. Symmetric shared memory architectures. Distributed shared memory multiprocessors. Memory hierarchy design. Virtual machines. Advanced topics in storage systems.

Credits

3

Prerequisites

CSC 34200/CSC 34300 or equivalent.

Contact Hours

3 hr./wk.

CSc I4300 Computer Communications

Data transmission concepts: electro-magnetic energy propagation, bit-serial transmissions, synchronization, modulation. Data communication principles: packet switching, multiplexing, logical connections, protocols, layering. Network protocols: window-based schemes, flow & error control (TCP, X.25). Distributed MAC layer control: CSMA/CD, token-passing, wireless channels, spread-spectrum techniques (CDMA, DSM). Basic network security: encryption, authentication. Upper layer protocols: transport, session, and application layers.

Credits

3

Prerequisites

CSC 34200/CSC 34300 and CSC 32200 or equivalent.

Contact Hours

3 hr./wk.

CSc I4330 Advanced Topics in Internet Programming

The first part of the course will deal with platform independent software and data for Internet programming. The second part will address Web Services-messaging over standard web protocols. Students will be exposed to current technologies and standards. Topics discussed may include: distributed objects and remote invocation, messaging, name services, security.

Credits

3

Prerequisites

CSC 22100 or equivalent.

Contact Hours

3 hr./wk.

CSc I4600 Topics in Computer Architecture

Selected topics from the current literature in computer architecture.

Credits

3

Prerequisites

CSC 34200/CSC 34300 or CSc I4200 or equivalent.

Contact Hours

3 hr./wk.

CSc I4633 Multimedia

Algorithms and software that handle and manipulate interactively digital sound, image, animation and video. Topics covered include digital sound formats and conversion factors affecting sound quality, digital image formats and conversion, image compression and factors affecting image quality, digital video formats and standards, video compression methods, videoconferencing and interactive media.

Credits

3

Prerequisites

CSC 32200 and good programming knowledge.

Contact Hours

3 hr./wk.

CSc I4700 Topics in Computer Communications

Selected topics from the current literature in computer communications.

Credits

3

Prerequisites

CSc I4300 or equivalent.

Contact Hours

3 hr./wk.

CSc I4800 Codes, Cryptography, and Secure Communication

Concepts from probability and information theory entropy, codes for compression, error-correcting codes, secrecy codes, block ciphers and public key cryptosystems, cryptographic protocols for secure communication, introduction to quantum cryptography.

Credits

3

Prerequisites

CSC 30400 and CSC 34200 or equivalent.

Contact Hours

3 hr./wk.

CSc I4900 Computer Security

An introduction to the principles and practices of computer security in various computing environments. Conventional encryption systems and classical cryptography. Confidentiality using conventional encryption. Public key encryption and protocols for authentication and digital signatures. Recent cryptanalytic attacks on conventional and public key systems. Intruders, viruses, and trusted systems. Firewalls and internetwork security. A survey of applications and problems arising in contemporary computer security.

Credits

3

Prerequisites

CSC 30400 and CSC 22000 or equivalent.

Contact Hours

3 hr./wk.

CSc I6000 Mathematics for the Analysis of Algorithms

Those areas of mathematics necessary for the advanced analysis of algorithms: manipulation of sums, solving recurrences, number theory, binomial coefficients, special sequences, generating functions, and asymptotics.

Credits

3

Prerequisites

CSC 22000 or CSc I0600.

Contact Hours

3 hr./wk.

CSc I6100 Mathematical Programming I

The simplex method. Duality theory and related methods. The revised simplex method, decomposition, and partitioning methods for large structural problems. Network flow problems: max-flow, min-cut theorem, special algorithms for transportation, shortest route, and assignment problems. Aspects of computer implementation.

Credits

3

Prerequisites

CSC 22000 or CSc I0600, and MATH 34600 or equivalent.

Contact Hours

3 hr./wk.

CSc I6200 Mathematical Programming II

Convex functions and convex sets. Gradient, conjugant gradient, and variable metric methods. Kuhn-Tucker and duality theory. Nonlinear programming algorithms. Integer programming, branch and bound methods. Dynamic programming.

Credits

3

Prerequisites

CSc I6100.

Contact Hours

3 hr./wk.

CSc I6300 Decision Analysis

An introduction to decision-making under uncertainty. Bayes and minimax criteria. Utility theory, treatment of risk, and the value of information. Two-person and n-person games, stochastic linear programming models, policy improvement algorithm. Markovian decision processes. Application to system design, management, and production.

Credits

3

Prerequisites

CSC 22000 or CSc I0600, and an undergraduate course in probability.

Contact Hours

3 hr./wk.

CSc I6400 Topics in System Simulation

Simulation methodology, design, and analysis of simulation experiments. Generation and testing of random variates. Variance reduction techniques. Simulation languages. Analysis of queuing models on computer systems simulation.

Credits

3

Prerequisites

CSC 22000 and CSC 21700 or equivalent.

Contact Hours

3 hr./wk.

CSc I6600 Probabilistic Models in Computer Science

Introduction to queuing theory. Birth and death processes. Single server and multiple server queuing systems. Priority disciplines. Time sharing and multiprogramming models. Selected topics in system reliability theory.

Credits

3

Prerequisites

CSC 22000 or CSc I0600.

Contact Hours

3 hr./wk.

CSc I6700 Topics in Scientific and Statistical Computing

Selected topics from computer algebra, advanced numerical methods, advanced numerical computation, advanced operations research, combinatorial computing, graph algorithms, cryptography. Recent offerings have included computer vision, cluster computing, digital libraries, pattern recognition and satellite image processing.

Credits

3

Prerequisites

CSC 22000 or CSc I0600.

Contact Hours

3 hr./wk.

CSc I6730 Data Reduction in the Physical Sciences

A course in the reduction of data sets gathered by government agencies (NOAA and NASA). Data comes from satellite remote sensing and other atmospheric and oceanographic measuring systems.

Credits

3

Prerequisites

Permission of the instructor.

Contact Hours

3 hr./wk.

CSc I6744 Neural Computing

An introduction to neural networks and their applications. Material to be covered includes: models of a neuron, network architectures, visualization processes and artificial intelligence in neural networks, learning processes, the perceptron, multilayer perceptrons.

Credits

3

Prerequisites

MATH 20300, MATH 34600 and a working knowledge of C or Fortran.

Contact Hours

3 hr./wk.

CSc I9600 Special Topics in Contemporary Computer Science

A research seminar course, focusing on a specialized and contemporary topical areas of computer science. The course will present research articles and technology papers to students in the chosen topic, actively engaging them in the presented materials through their interactive discussions, writing of short summary reports, team projects, literature search and/or exams.

Credits

3

Prerequisites

Advanced graduate standing and permission of the instructor.

Contact Hours

3 hr./wk.

CSc I9700 Report

satisfies non-course requirement.

Credits

0

Corequisites

CSc I96XX

CSc I9800 Project

Experimental or theoretical project under the direction of a faculty advisor. Student submits proposal, performs the required studies, submits a written final report, and gives a comprehensive oral presentation to the department or an approved forum. satisfies non-course requirement.

Credits

3

Prerequisites

Departmental approval.

CSc I9900 Research for Master's Thesis

satisfies non-course requirement.

Credits

6

Prerequisites

Departmental approval required.