mathematics + computer science

Course Descriptions
COMPUTER SCIENCE / MATHEMATICS

MCS0023 Basic Mathematics

MCS0035 Essential Mathematics

MCS0044 Basic Algebra

MCS0054 Intermediate Algebra/Geometry

MCS0055 Essential Algebra and Analytical Geometry

MCS0060 Algebra Workshop

MCS0074 Precalculus

MCS0083 College Algebra

MCS0085 College Algebra and Analytical Geometry

MCS0093 Trigonometry

MCS1003 Introduction to Computer Applications

MCS1023 Technical Computer Applications

MCS1102 Introduction to Fortran

MCS1113 Technical Mathematics 1

MCS1123 Technical Mathematics 2

MCS1142 Introduction to C

MCS1203 Logic

MCS1214 Introduction to Mathematical Analysis 1

MCS1224 Introduction to Mathematical Analysis 2

MCS1254 Geometry in Art

MCS1414 Calculus 1

MCS1424 Calculus 2

MCS1514 Computer Science 1

MCS1524 Introduction to Discrete Mathematics

MCS1603 Cobol

MCS1623 Introduction to Visual Basic

MCS1632 Introduction to Programming

MCS2023 Statistical Methods

MCS2113 Statistics 1

MCS2123 Statictics 2

MCS2313 Technical Calculus

MCS2323 Applied Differential Equations

MCS2414 Calculus 3

MCS2423 Differential Equations

MCS2513 P.R. Computer Science

MCS2514 Computer Science 2

MCS2523 Discrete Mathematics

MCS2533 P.R. Data Structures

MCS2534 Data Structures

MCS2613 C

MCS3403 Probability and Statistics

MCS3413 Advanced Engineering Mathematics

MCS3503 Computer Graphics Programming

MCS3513 Assembler

MCS3523 Mathematical Modelling

MCS3543 Introduction to Database Systems

MCS3603 Java

MCS3613 C++

MCS3623 Unix System Operation and Programming

MCS3633 Introduction to Functional Programming

MCS3653 Computer Architecture

MCS3663 Computer Architecture and Assembly Programming

MCS3673 Network System Administration

MCS3723 Advanced Calculus

MCS3733 Partial Differential Equations

MCS3743 Complex Analysis

MCS3863 Linear Algebra

MCS4613 Computer Networks

MCS4623 Introduction to Software Engineering

MCS4633 Artificial Intelligence

MCS4643 Comparative Programming Languages

MCS4653 Theory of Computation

MCS4663 Operating Systems

MCS4813 Numerical Analysis 1

MCS4823 Numerical Analysis 2

MCS4833 Senior Project

MCS4863 Modern Algebra

MCS4981-3 Directed Study in Math/Computer Science

MCS4993 Topics in Math/Computer Science

MCS5003 Essentials of Computer Science

MCS5013 Web Server Programming

MCS5023 Java Programming

MCS5033 Object Computing

MCS5043 Programming Language Implementation

MCS5053 Computability

MCS5083 Visual Programming

MCS5103 Software Engineering

MCS5203 Introduction to Computer Graphics

MCS5213 Computational Geometry

MCS5223 Computer Aided Geometric Design

MCS5233 Introduction to Theory of Computation

MCS5303 Introduction to Database Systems

MCS5403 Robotics Programming

MCS5503 Intelligent Systems

MCS5523 Virtual Environment and Scientific Visualization

MCS5703 Introduction to Distributed Computing

COOPERATIVE EDUCATION IN MATH/COMPUTER SCIENCE Course Descriptions

MCS3001 Co-op Practicum I

MCS3101 Co-op Practicum II

MCS4001 Co-op Praticum III


MCS0023 BASIC MATHEMATICS
Prerequisite: 0. Fundamental operations of arithmetic, fractions, decimals, percentage, conversion of units, simple trigonometry, algebra, solving equations in one unknown, ratio and proportion. Lect. 3 hrs. 3 hours credit

MCS0035 ESSENTIAL MATHEMATICS
Prerequisite: Placement or permission of department chair. Review of arithmetic operations as a basis for understanding algebraic operations. Algebra of exponents, polynomials, factoring and rational expressions. Solving linear equations and word problems. Graphing linear equations. Study skills, collaborative learning and lab work will be stressed. Lect. 5 hrs., Lab 3 hrs. 5 hours credit

MCS0044 BASIC ALGEBRA
Prerequisite: 0. Review of fractions, decimals, percentage, and absolute value. Algebra of exponents, polynomials, factoring, and rational expressions. Solving linear equations and word problems, and graphing of lines. Instruction will emphasize the development of math study skills and will include collaborative learning. Lect. 4 hrs., Lab 1 hr. 4 hours credit

MCS0054 INTERMEDIATE ALGEBRA/GEOMETRY
Prerequisite: Placement, or MCS0023, or MCS0044, or MCS0035. Fundamental operations, factoring, exponents, radical, linear equations, rectangular coordinates and graphing, systems of linear equations, introduction to quadratic equations, fundamental concepts and formulas of geometry. Students should keep the 5th hour in the same class period available for exams and study sessions. Lect. 4 hrs. 4 hours credit

MCS0055 ESSENTIAL ALGEBRA AND ANALYTICAL GEOMETRY
Prerequisite: MCS0035 or placement. Continuation of MCS0035 improving and extending skills in factoring, exponents, radicals. Graphing using the rectangular coordinates system. Quadratic equations, formulas, graphing. Collaborative learning, lab work and continued focus on successful study habits will be stressed. Lect. 5 hrs., Lab 3 hours 3 hours credit

MCS0060 ALGEBRA WORKSHOP
Prerequisite: Placement or permission of department chair. This workshop first assesses each student’s level of algebraic ability and then introduces the algebraic problems to fit his/her specific needs. Problems are presented using a variety of methods, and the students solve them individually and in group sessions. Upon successful completion of the workshop, students will receive a new placement in mathematics. Lab. 4 hrs. 0 hours credit

MCS0074 PRECALCULUS
Prerequisite: Placement. Quadratic equations, functions and graphs, systems of equations, theory of equations, inequalities, logarithms, trigonometric definitions, identities, equations. (This course is a faster-paced version of MCS0083 AND MCS0093 combined. Students should keep the 5th hour in the same class period available for exams and study sessions.) Lect. 4 hrs. 4 hours credit

MCS0083 COLLEGE ALGEBRA
Prerequisite: MCS0054 or MCS0055 or placement. Covers that part of MCS0074 which does not involve trigonometry. Lect. 3 hrs. 3 hours credit

MCS0085 COLLEGE ALGEBRA AND ANALYTICAL GEOMETRY
Prerequisite: MCS0055. Continuation of MCS0055. Quadratic equations, functions, graphs, systems of equations, theory of equations, inequalities. Successful completion prepares the student for MCS0093 Trigonometry. Lect. 5 hrs., Lab 3 hours 3 hours credit

MCS0093 TRIGONOMETRY
Prerequisite: MCS0083, MCS0085, or placement. Covers that part of MCS0074 involving trigonometry and logarithms. Lect. 3 hrs. 3 hours credit

MCS1003 INTRODUCTION TO COMPUTER APPLICATIONS
Prerequisite: 0. Introduction to applications involving use of a computer. E-mail, word processing, spreadsheets, data base applications, presentation software. (This course is required of those who do not successfully demonstrate knowledge of these topics upon entry to Lawrence Tech. No credit for mathematics/computer science majors.) Lect. 3 hrs. 3 hours credit

MCS1023 TECHNICAL COMPUTER APPLICATIONS
Prerequisite: 0. Introduction to computers and computer programming. Spreadsheet software will be utilized for a portion of the course. (For engineering technology students only.) Lect./Lab. 3 hrs. 3 hours credit

MCS1102 INTRODUCTION TO FORTRAN
Prerequisite: Computer placement or MCS1003; co-requisite: MCS0074, MCS0083, MCS0085, MCS1214 or math placement. Introduction to programming in FORTRAN. Assignment statements, choice of alternatives, arrays, loops, introduction to subroutines. Lect. 2 hrs. 2 hours credit

MCS1113 TECHNICAL MATHEMATICS 1
Prerequisite: Placement, or MCS0023, or MCS0044, or MCS0035. Fundamental operations, functions and graphs, trigonometric functions with right angle applications, systems of linear equations, factoring, fractions, quadratic equations, radian measure, general trigonometric functions. (For engineering technology students only.) Lect. 3 hrs. 3 hours credit.

MCS1123 TECHNICAL MATHEMATICS 2
Prerequisite: MCS1113. Vectors, oblique triangles, graphs of trigonometric functions, exponents, radicals, logarithms, determinants, matrices. (For engineering technology students only.) Lect. 3 hrs. 3 hours credit.

MCS1142 INTRODUCTION TO C
Prerequisite: Computer placement or MCS1003; co-requisite: MCS0074, MCS0083, MCS0085, MCS1214, or math placement. An introduction to the C programming language: arrays, functions, file  operations, and simple pointer types. Lect. 2 hrs. 2 hours credit

MCS1203 LOGIC
Prerequisite: Placement. Introduction to deductive and inductive logic. Aristotelian logic, truth functions and truth tables, formal deductions, analysis of fallacies, inductive reasoning. (No credit for mathematics/ computer science majors.) Lect. 3 hrs. 3 hours credit.

MCS1214 INTRODUCTION TO MATHEMATICAL ANALYSIS 1
Prerequisite: Placement, or MCS0054, or MCS0055. Equations and inequalities, functions and graphs, lines, parabolas, systems of equations, exponential and logarithmic functions, mathematics of finance, matrix algebra, linear programming. Introduction to trigonometry. Lect. 4 hrs. 4 hours credit

MCS1224 INTRODUCTION TO MATHEMATICAL ANALYSIS 2
Prerequisite: Placement, MCS1214, or MCS0083, or MCS0085. Limits and continuity, differentiation, curve sketching, applications of differentiation, integration, methods and applications of integration, multivariable calculus. Lect. 4 hrs. 4 hours credit

MCS1254 GEOMETRY IN ART
Prerequisite: Placement, MCS0055 or MCS0054. Diverse geometrical applications of mathematical concepts, linking the symbolic representation to the visual representation. Examples from the arts and architecture; computer applications. Topics covered may include conic sections, perspective, symmetry, tilings, shading of objects, fractals, trigonometry. Lect. 4 hrs. 4 hours credit

MCS1414 CALCULUS 1
Prerequisite: Placement, MCS0074, or MCS0083 and MCS0093, or MCS0085 and MCS0093. Limits and continuity, differentiation of algebraic and trigonometric functions, mean value theorem, applications of differentiation, antiderivatives, indefinite integrals, substitutions, definite integrals, the Fundamental Theorem of Calculus, applications of integration. Lect. 4 hrs. 4 hours credit

MCS1424 CALCULUS 2
Prerequisite: MCS1414. Calculus of transcendental functions, l’Hospital’s rule, techniques of integration, application to arc length and surface area, infinite series. Lect. 4 hrs. 4 hours credit

MCS1514 COMPUTER SCIENCE 1
Prerequisite: MCS1102 or MCS1142 or MCS1603 or programming experience, and math placement, MCS0054 or MCS0055. Introduction to computer science. Simple, iterative, and conditional statements. Enumerated variable types, procedures and functions, single and multidimensional arrays, bubble sort, linear search, simple file input/output (sequential). Lect. 3 hrs. Lab. 1 hr. 4 hours credit

MCS1524 INTRODUCTION TO DISCRETE MATHEMATICS
Prerequisite: Placement, MCS0083, or MCS0085. Logic and logic operators, proofs; sets and relations, functions; the integers, modular arithmetic, bases; induction and recursion, principles of counting, permutations and combinations, algorithms. Lect. 4 hrs. 4 hours credit

MCS1603 COBOL
Prerequisite: Placement or MCS1003. Introduction to COBOL programming; the study of the COBOL language and business applications. Sequential, random, and indexed file design and processing, keying schemes, subroutines, and the COBOL library facility. Emphasis on structured programming. Lect. 3 hrs. 3 hours credit

MCS1623 INTRODUCTION TO VISUAL BASIC
Prerequisite: Placement or MCS1003. Visual Basic integrated development environment (IDE) and its wealth of development tools, the use of the debugging and testing tools available in Visual Studio, business applications, design strategy for maintainability and reusability, building effective user interfaces with Visual Basic controls, forms, and other GUI components, Database access. Lect. 3 hrs. 3 hours credit

MCS1632 INTRODUCTION TO PROGRAMMING
Prerequisite: Placement, MCS0083, or MCS0085. Introductory course in programming constructs, conditional statements, loops, branching and subroutines. No previous programming is assumed. (Credit cannot be earned for both this course and any other introductory programming course: MCS1102, MCS1142, MCS1603, MCS1623.) Lect. ?? hrs. 2 hours credit

MCS2023 STATISTICAL METHODS
Prerequisite: MCS1123 or MCS1214. Introduction to the theory of statistics and some of its applications, use of mathematical models to predict outcomes, data representation, probability, sampling theoretical  distributions, estimating, correlation, time series, number usage. (For engineering technology students only.) Lect. 3 hrs. 3 hours credit.

MCS2113 STATISTICS 1
Prerequisite: MCS1224 or MCS2313. Frequency distributions, descriptive measures of populations and samples, probability, discrete and continuous probability distributions, payoff tables, Bayes’ theorem, decision theory. Lect. 3 hrs. 3 hours credit

MCS2123 STATISTICS 2
Prerequisites: MCS2113. The central limit theorem, estimation of means, hypothesis testing, goodness of fit, regression and correlation analysis, statistical computer software. Lect. 3 hrs. 3 hours credit

MCS2313 TECHNICAL CALCULUS
Prerequisite: MCS1123. Introduction to plane analytic geometry, basic concepts of calculus, derivatives of simple functions, tangents, curve sketching, indefinite and definite integrals. (For engineering technology students only.) Lect. 3 hrs. 3 hours credit.

MCS2323 APPLIED DIFFERENTIAL EQUATIONS
Prerequisites: MCS1023 and MCS2313. Introduction to differential equations, differential equations with initial values, numerical methods. The computer is used as a tool throughout the course. (For engineering technology students only.) Lect. 3 hrs. 3 hours credit.

MCS2414 CALCULUS 3
Prerequisite: MCS1424. Polar coordinates, three-dimensional analytic geometry. Vectors, vector-valued functions, motion in space, functions of several variables,  partial differentiation, multiple integrals, integration in vector fields. Lect. 4 hrs. 4 hours credit

MCS2423 DIFFERENTIAL EQUATIONS
Prerequisite: MCS2414. Ordinary differential equations including principal types of first order equations. Techniques of solution of higher order linear equations with constant coefficients. Applications of first order and higher order equations. Introduction to Laplace transforms. Systems of linear differential equations. Lect. 3 hrs. 3 hours credit

MCS2513 P.R. COMPUTER SCIENCE
Prerequisite: Restricted to students in the Pacific Rim program. Programming, Simple, iterative and conditional statements. Data types, procedures, and functions. Arrays. File input/output. Classes and methods. Introduction to data structures, linked lists, trees, queues. Sorting and searching. Lect. 4 hrs. 3 hours credit

MCS2514 COMPUTER SCIENCE 2
Prerequisite: MCS1514. Records, advanced file input/output (random access), dynamic memory allocation. Static and dynamic implementation of stacks, linked lists (ordered and unordered), queues (regular and priority), circular queues. Selection and insertion sort, binary search. Lect. 3 hrs., Lab. 1 hr. 4 hours credit

MCS2523 DISCRETE MATHEMATICS
Prerequisite: MCS1514, and either MCS1424 or MCS1524. Number theory, review of induction and recursion, advanced counting, equivalence, partial ordering, graphs, trees. Lect. 4 hrs. 3 hours credit

MCS2533 P.R. DATA STRUCTURES
Prerequisite: Restricted to students in the Pacific Rim program. Continuation of MCS2513. Analysis of algorithms, big Oh notation, asymptotic behavior. Advanced sorting, external sorting. Binary, multiway and AVL trees. Lect. 4 hrs. 3 hours credit

MCS2534 DATA STRUCTURES
Prerequisite: MCS2514 and MCS2523. Analysis of algorithms, Big Oh notation, asymptotic behavior. Advanced sorting (heapsort, quicksort), external sorting. Binary, multiway, and AVL trees. Lect. 4 hrs. 4 hours credit

MCS2613 C
Co-requisite: MCS2514. Programming using the C language. Emphasis on functions, pointers, arrays, and structures. Bitwise expressions, the pre-processor, storage classes, ragged arrays. Lect. 3 hrs. 3 hours credit

MCS3403 PROBABILITY AND STATISTICS
Prerequisite: MCS2414. Representation of data, probability, random variables, discrete and continuous distributions, sampling theory, central limit theorem, confidence intervals, tests of statistical hypotheses, regression analysis. Lect. 3 hrs. 3 hours credit

MCS3413 ADVANCED ENGINEERING MATHEMATICS
Prerequisite: MCS2423. Laplace transforms of continuous and piecewise continuous functions, inverse Laplace transforms, applications to ordinary differential equations. Complex variables, analytic functions, Laurent expansions, residue theory with applications, complex inversion integral and convolution integral. Lect. 3 hrs. 3 hours credit

MCS3503 COMPUTER GRAPHICS PROGRAMMING
Prerequisite: MCS2534.Application programming interfaces; interactive computer graphics; two- and three-dimensional representation and transformation; viewing and perspective projections; shading with illumination and material. Lect. 3 hrs. 3 hours credit

MCS3513 ASSEMBLER
Prerequisite: MCS2514. Machine and assembly language programming. Addressing modes, macros, and subroutines. Lect. 3 hrs. 3 hours credit

MCS3523 MATHEMATICAL MODELLING
Prerequisites:MCS1142, MCS1514 or EGE101/1202/1301; MCS2414 plus atleast one of MCS3403, MCS2423, or MCS3863 or permission of instructor. Building and analysing mathematical and computer models of various systems.Optimization,dynamucal systems, and probability models. Team projects, written and oral projects. Lect. 3 hrs. 3 hours credit

MCS3543 INTRODUCTION TO DATABASE SYSTEMS
Prerequisite: MCS1514. Organization of database systems. Data definition, retrieval, manipulation. Relational data bases, SQL. Practice using standard databases. Lect. 3 hrs. 3 hours credit

MCS3603 JAVA
Prerequisite: MCS1514. Introduction to Java; comparing Java to C++, Java building elements: control structures, methods, object-oriented programming, arrays and strings, inheritance, graphics programming, applets, multithreading and multimedia. Lect. 3 hrs. 3 hours credit

MCS3613 C++
Prerequisite: MCS1142. Object-oriented programming techniques introduced through the language C++. Lect. 3 hrs. 3 hours credit

MCS3623 UNIX SYSTEM OPERATION AND PROGRAMMING
Prerequisite: MCS1514. Unix standardization and implementations, files and directories, standard I/O library, system data files and implementations, process control, process relationship, signals, advanced I/O. Daemon processes, inter-process communication. Lect. 3 hrs. 3 hours credit

MCS3633 INTRODUCTION TO FUNCTIONAL PROGRAMMING
Prerequisite: MCS1514. An introduction to functional programming. Induction and recursion, symbolic computation, higher-order functions, polymorphism, data abstraction and modularity, invariants, demand-driven programming, exception handling, and computability. Lect. 3 hrs. 3 hours credit

MCS3653 COMPUTER ARCHITECTURE
Prerequisite:  MCS3513. Detailed study of the organization and structure of modern computer  systems. Lect. 3 hrs. 3 hours credit

MCS3663 COMPUTER ARCHITECTURE AND ASSEMBLY PROGRAMMING
Prerequisite: MCS2514. Basic structure of computer hardware and assembly programming. Internal representations, processing unit arithmetic, memory addressing modes, stack processing, CISC, RISC. Lect. 3 hrs. 3 hours credit

MCS3673 NETWORK SYSTEM ADMINISTRATION
Prerequisite: MCS1514. Introduction to network systems, daemons, booting the system, policy, NFS, NIS, serial lines, disks, kernal configurations, Internet, USEnet, www, FTP, electronic mail, resource management, performance analysis, accounting, system logging, security, backups, hackers and padlocks. Lect. 3 hrs. 3 hours credit

MCS3723 ADVANCED CALCULUS
Prerequisite: MCS2423. Line and surface integrals, Green’s Theorem, Stokes’ Theorem, Divergence Theorem. Topics from differential and integral calculus theory.  Power series solutions of differential equations. Bessel functions, Legendre’s equation. Lect. 3 hrs. 3 hours credit

MCS3733 PARTIAL DIFFERENTIAL EQUATIONS
Prerequisite: MCS2423. Orthogonality, orthonormal bases, Fourier series, Fourier integral. Solution techniques for first and second order equations. Solutions of homogeneous and non-homogeneous boundary value problems. Sturm-Liouville theory. Lect. 3 hrs. 3 hours credit

MCS3743 COMPLEX ANALYSIS
Prerequisite: MCS2423. Complex numbers. DeMoivres Theorem. Complex variables, analytic functions, Cauchy-Riemann equations, Laurent expansions, contour integration, residue theory. Lect. 3 hrs. 3 hours credit

MCS3863 LINEAR ALGEBRA
Prerequisite: MCS2414. Systems of linear equations, matrices, determinants, eigenvalues, eigenvectors. Finite-dimensional vector spaces, linear transformations and their matrices, Gram-Schmidt orthogonalization, inner product spaces. Lect. 3 hrs. 3 hours credit

MCS4613 COMPUTER NETWORKS
Prerequisite: MCS3663. Transmission media, local asynchronous communication (RS232), long distance communication, packets, frames, error detection, LAN technologies, network topologies, hardware addressing, LAN wiring, physical topologies, interface hardware, extending LANs, fiber modems, repeaters, bridges and switches, WAN topologies and routing. Lect. 3 hrs. 3 hours credit

MCS4623 INTRODUCTION TO SOFTWARE ENGINEERING
Prerequisite: MCS2514. Introduction to software engineering emphasizing technical concepts, team management, and product performance. Analysis, design, implementation, verification, validation, and maintenance of software. Lect. 3 hrs. 3 hours credit

MCS4633 ARTIFICIAL INTELLIGENCE
Prerequisite: MCS2534. Introduction to artificial intelligence. Knowledge representation and acquisition, decision trees, logic programming, non-deterministic and non-algorithmic problem solving, forward and backward chaining, symbol processing,  predicate logic. Expert systems. Lect. 3 hrs. 3 hours credit

MCS4643 COMPARATIVE PROGRAMMING LANGUAGES
Prerequisites: MCS2534. A survey of different types of programming languages done by comparing and contrasting the underlying concepts of their design and use. Information hiding, data abstraction, modularity. Lect. 3 hrs. 3 hours credit

MCS4653 THEORY OF COMPUTATION
Prerequisite: MCS2523. Beginning course on theory of computation. Regular languages, finite automata, context-free languages, Turing Machine, Chomsky hierarchy, applications to parsing. Lect. 3 hrs. 3 hours credit

MCS4663 OPERATING SYSTEMS
Prerequisite: MCS3653 or MCS3663. Principles of operating systems. Storage management, interrupts, paging, swapping, protection, file management. Lect. 3 hrs. 3 hours credit

MCS4813 NUMERICAL ANALYSIS 1
Prerequisite: MCS1102 or MCS1142, and MCS2423. Approximation and error. Roots of equations, approximation of algebraic and transcendental functions, differentiation, indefinite and definite integration. Quadrature, interpolation. Lect. 3 hrs. 3 hours credit

MCS4823 NUMERICAL ANALYSIS 2
Prerequisite: MCS4813. Numerical techniques for the solution of ordinary differential equations, matrix exponential computations, matrix inversion. Selected topics. Lect. 3 hrs. 3 hours credit

MCS4833 SENIOR PROJECT
Prerequisite: Permission of department chair. Intensive study of special problems in software system development. Students participate in specifying, designing, developing, coding,  and testing of complex software systems. Emphasis on team development of projects. Lect. 3 hrs. 3 hours credit

MCS4863 MODERN ALGEBRA
Prerequisite: MCS3863. Introduction to algebraic systems. Groups, homomorphisms, isomorphisms, subgroups, normal subgroups, factor groups. Rings and ideals, integral domains, fields. The real number system. Lect. 3 hrs. 3 hours credit

MCS4981-3 DIRECTED STUDY IN MATH/COMPUTER SCIENCE
Prerequisite: Permission of department chair. By arrangement. 1-3 hours credit

MCS4993 TOPICS IN MATH/COMPUTER SCIENCE
Prerequisite: Permission of department chair. Topics of current interest in mathematics and computer science. (May be taken more than once if the topic is different.) Lect. 3 hrs. 3 hours credit

MCS5003 ESSENTIALS OF COMPUTER SCIENCE
Prerequisite: Permission of department chair and approximately five years of professional software development. Concepts of computer science for the experienced software developer. Topics from MCS1514, MCS2514, MCS2523, MCS2534, and MCS3663 are highlighted. Lect. 3 hrs. 3 hours credit

MCS5013 WEB SERVER PROGRAMMING
Prerequisite: Permission of department chair. Introduction to the Web-server basis; Web authoring using HTML; Advanced Web authoring with dynamic HTML, XML; JavaScript programming; CGI programming in C, C++ and Perl. Introduction to ASP and the middle tier. Lect. 3 hrs. 3 hours credit

MCS5023 JAVA PROGRAMMING
Prerequisite: Permission of department chair. An advanced course in Java programming. Advanced multi-threading, multimedia and graphics. Networking and RMI. Database access with Java. Java Beans and EJB. Servlets and JSP. Multi-tier application development using CORBA. Java and embedded systems. JINI. Current topics in Java technology. Lect. 3 hrs. 3 hours credit

MCS5033 OBJECT COMPUTING
Prerequisite: Permission of department chair. Introduction to the fundamental concepts of building reusable software components and applications using COM and DCOM architecture. Programming with COM. Building and using ActiveX controls. Using MFC to build COM clients and servers. Using automation. Using ATL to create COM clients and servers. Programming with DCOM. Introduction to CORBA. Lect. 3 hrs. 3 hours credit

MCS5043 PROGRAMMING LANGUAGE IMPLEMENTATION
Prerequisite: Permission of department chair. Substantial programming experience is required. Issues associated with the design and implementation of higher-level programming languages. Concentrations are theory behind different components of a compiler, programming techniques used to put the theory into practice, and the interfaces used to modularize the compiler. Course project on compiler design and implementation. Lect. 3 hrs. 3 hours credit

MCS5053 COMPUTABILITY
Prerequisite: Permission of department chair. The second course on theory of computation. Introduces decidability, computability, and computational complexity. Church’s Thesis; undecidability; reducibility and completeness; recursive functions; time complexity and NP-completeness. Lect. 3 hrs. 3 hours credit

MCS5083 VISUAL PROGRAMMING
Prerequisite: Permission of department chair. Introduction to Windows programming. Principles of human-computer interaction. Graphical user interface programming. Event driven programming. Developing help systems. Evaluation techniques. Windows programming environments such as MFC and UNIX. Introduction to various RAD tools. Lect. 3 hrs. 3 hours credit

MCS5103 SOFTWARE ENGINEERING
Prerequisite: Permission of department chair. Selection of programming language; debugging techniques and tools; program maintenance; software economics; team programming and its application to projects; software life cycle. Lect. 3 hrs. 3 hours credit

MCS5203 INTRODUCTION TO COMPUTER GRAPHICS
Prerequisite: Permission of department chair. Introduction to fundamental computer graphics issues, hardware, algorithms, and software. Scan-conversion line generators; scan-line polygon; affine transformation; viewing and clipping; illumination and rendering; solid modeling; curves and surfaces; texture mapping; collision detection; animation; issues of virtual environments applications. Lect. 3 hrs. 3 hours credit

MCS5213 COMPUTATIONAL GEOMETRY
Prerequisite: Permission of department chair. Implicit and explicit representations of curves in the plane; vectors and transformations; curves and surfaces in space. Splines and other representations. Computational issues in intersection, minimum distance, edge detection and projection algorithms. Lect. 3 hrs. 3 hours credit

MCS5223 COMPUTER AIDED GEOMETRIC DESIGN
Prerequisite: Permission of department chair. Bezier and NURBS representations of curves and surfaces. Properties of B-Splines and resulting algorithms. Designing curves and surfaces. Issues surrounding topology, trimmed surfaces and triangulation. Other representations. Lect. 3 hrs. 3 hours credit

MCS5233 INTRODUCTION TO THEORY OF COMPUTATION
Prerequisite: Permission of department chair. A beginning course on theory of computation. Regular languages; finite automata; context-free languages; turing machine; Chomsky hierarchy; applications to parsing. Lect. 3 hrs. 3 hours credit

MCS5303 INTRODUCTION TO DATABASE SYSTEMS
Prerequisite: Permission of department chair. Design and implementation of relational, hierarchical and network database systems. Query/update data languages, conceptual data model, physical storage methods, database system architecture and normal forms. Database security and integrity. Relational database systems are emphasized. A project involving an on-line database system is normally assigned. No credit given after MIS6113. Lect. 3 hrs. 3 hours credit

MCS5403 ROBOTICS PROGRAMMING
Prerequisite: Permission of department chair. Characteristics of real-time computing. Introduction to robotics, control theories, modeling finite state machines, design methodologies for real-time systems, process synchronization using semaphores, Lego robots and developing robot programs using various programming languages and different real-time operating systems for autonomous mobile robots such as Khepera and Lego RIS. Lect. 3 hrs. 3 hours credit

MCS5503 INTELLIGENT SYSTEMS
Prerequisite: Permission of department chair. Introduction to artificial intelligence and computational intelligence. Problem solving by searching. Optimization methods. Knowledge representation and reasoning. Machine learning. Multi-agent systems. Pattern recognition. Introduction to evolutionary computation. Introduction to artificial neural networks. Fuzzy logic. Lect. 3 hrs. 3 hours credit

MCS5523 VIRTUAL ENVIRONMENT AND SCIENTIFIC VISUALIZATION
Prerequisite: Permission of department chair and technical proficiency in one of: architecture design, programming, modeling, or painting. A project based hands-on course. Teams with members of varied backgrounds build immersive virtual worlds to solve real world scientific visualizations problems. Lect. 3 hrs. 3 hours credit

MCS5703 INTRODUCTION TO DISTRIBUTED COMPUTING
Prerequisite: Permission of department chair. Introduction to data communications, network models, topologies and structures. Includes the OSI model, transport mediums (routers, bridges, gateways), and an overview of communication protocols, particularly TCP/IP. Lect 3 hrs. 3 hours credit


COOPERATIVE EDUCATION IN MATH/COMPUTER SCIENCE Course Descriptions

MCS3001 CO-OP PRACTICUM I
Prerequisite: Junior standing (60 credit hours), 2.25 LTU GPA, completion of all freshman and sophomore course requirements, departmental approval. First full-time work assignment providing computer science experience in the workplace. 1 hour credit

MCS3101 CO-OP PRACTICUM II
Prerequisite: Satisfactory completion of MCS3001, departmental approval. Second full-time work assignment providing computer science experience in the workplace. 1 hour credit

MCS4001 CO-OP PRACTICUM III
Prerequisite: Satisfactory completion of MCS3101, departmental approval. Third full-time work assignment providing computer science experience in the workplace. 1 hour credit