

PROGRAMS OF STUDY &
COURSE DESCRIPTIONS
Computer Science (COM)
Major: Yeshiva College
COM 1300, 1320, 1504,
1621, 2113, 2545,
3610 3640, and 6 credits in advanced
electives (AE) chosen with the approval of the discipline advisor;
MAT 1412, 1413,
2105. Recommended:
PHY 1041–1042R&L,
1724. Note also the Computer Track of
the Mathematics major.
Minor: Yeshiva College
COM 1300, 1320, 1504,
2545, and 3 additional credits in COM electives approved
by the discipline advisor; MAT 1412, 1413.
COM 2545 is a prerequisite for all AE (Advanced Electives).

1115C Introduction to Computer Applications and Programming. Three hours of lecture.
Two hours of lab. 3 credits.
Windows operating system, basic concepts, and techniques of an office
productivity suite; Microsoft OFFICE Professional; fundamentals of problem
solving using computers; Visual Basic for Applications as a basis for extending
and customizing the basic applications; extending Workgroup computing to the
Internet.
1300 Introduction to Computer Science and Programming. Three hours of lecture.
Two hours of lab. 4 credits.
Components of a computer system; machine, assembly, and high-level languages;
numerical systems and coding; representation of data and instructions; data
types, constants, variables; arithmetic expressions; logical expressions;
assignment statement; sequencing, alteration, and iteration; arrays,
subprograms, and parameters; simple I/O; techniques of problem solving;
flowcharting; stepwise refinement; simple numerical examples; basic search and
sort algorithms. Principles of good programming style, expression, and
documentation; control flow; invariant relation of a loop; stepwise refinement
of statements and data structures or top-down programming.
1320 Data Structures. Three hours of lecture. Two hours of lab. 4 credits.
String processing, concatenation, substrings, matching, internal searching and
sorting, recursion, linked lists and linear allocation (stacks, queues, deques).
Elementary data structures, file structures and algorithms, searching and
sorting, trees and algorithms for their manipulation, notions of algorithm
complexity, memory and data management systems.
Prerequisite: COM 1300.
Co-requisite: COM 1504.
1422H Great Proofs in Mathematics. Three hours of lecture-recitation. 3
credits.
Landmark theorems from ancient to modern times. Geometry: Pythagorean theorem,
Euler’s formula, platonic polyhedra. Number Theory: irrational numbers,
infinitude of primes, unique factorization, Pythagorean triples. Set Theory:
sets, relations, functions, infinite cardinal numbers, Schroeder-Bernstein
theorem. Probability: expectation, conditioning, independence, the law of
averages. Theory of computation: Turing machines, decidable and undecidable
problems.
Prerequisite: Permission of the instructor.
1504 Discrete Structures. Three hours of lecture.
Two hours of lab. 4 credits.
Boolean algebra and predicate calculus; proof methods; sets, functions and
relations; combinatorics ; graph theory and algorithms; mathematical induction
and recursion; probability and average case analysis of algorithms.
Prerequisite: three years of high school mathematics.
1621 Theory of Computation. 3 credits.
Deterministic and nondeterministic finite state automata; regular grammars and
regular expressions; equivalence of regular expressions and finite automata;
pumping lemma for regular languages; context-free grammars; languages generated
by context-free grammars; parse trees and ambiguity; Chomsky normal form;
push-down automata; equivalence of context-free grammars and push-down automata;
pumping lemma for context-free languages; Turing machines; Universal Turing
machine; Halting problem; solvable and unsolvable problems about automata and
languages; Introduction to complexity theory; NP-complete problems.
Prerequisite: COM 1504.
2113 Computer Organization and Assembly Language. Three hours of lecture.
Two hours of lab. 4 credits.
Basic logic functions. Synthesis of more complex combinational circuits.
Electronic implementation of these functions. Simple synchronous circuits. Major
components of a computer. Machine and assembly language instruction set.
Implementation of the instruction set electronic circuits. Circuits needed to
perform arithmetic operations. Memory and I/O implementation.
Prerequisite: COM 1300.
2146C Minicomputer and Microcomputer Systems. One hour of lecture.
Three hours of lab. 3
credits.
Real-time programming on a dedicated computer. Microprocessors, data
communication protocol, packet switching.
Laboratory fee: $50.
Prerequisite: COM 2113 or permission of the instructor.
2512. Networking and Communication. 3 credits. AE
Fundamentals of networking and communications; network concepts, hardware,
software and programming. Data communications, wide and local area networks;
communications architecture and protocols; network programming in C/C++ and
JAVA.
Prerequisite: COM 2545.
2545 Algorithms. Three hours of lecture. Two hours of lab. 4 credits.
Sorts (Insertion sort, merge sort, heapsort and quicksort); Growth of functions
and recurrences; Hash tables; Binary Search Trees and Red-Black Trees; Huffman
codes; Graph algorithms including Minimum Spanning Trees and Shortest Path
problems; Cryptography, String Matching and Computational Geometry.
Prerequisites: COM 1320, COM 1504,
MAT 1412.
3511 Algorithmic Processes. 3 credits. AE
Design of algorithms and applications of data structure permutations,
polynomials, derivations, matrices, sorting, discrete simulation; list marking,
garbage collection, analysis of algorithms; space and time efficiency;
comparison of sorting techniques; discrete Fourier Transform; pattern matching;
computational models, Turing machines, complex hierarchies.
Prerequisite: COM 2545.
3563 Database Systems. 3 credits. AE
Goals of DBMS, including data independence, relationships, logical and physical
organization, schema and subschema; hierarchical, network, and relational modes;
examples of implementation of various models; first, second, and third normal
forms of data relations; canonical schema; data independence; data description
languages: forms, applications, examples, design strategies; query facilities:
relational algebra, calculus, data structures for establishing relations; query
functions; file organization; index organization; file security; data integrity
and reliability.
Laboratory fee: $50.
Prerequisite: COM 2545.
3610 Introduction to Operating Systems and Computer Architecture. 3 credits.
Review of instruction sets. I/O and interrupts, addressing schemes,
microprogramming; dynamic procedure activation; dynamic storage allocation;
design methodology, monitors, kernels, networks of operating system modules;
elementary queuing; memory management: virtual memory, paging, segmentation;
memory protection; multiprogramming.
Laboratory fee: $50.
Prerequisites: COM 2113, COM 1320.
3640 Programming Languages. 3 credits.
Formal language concepts, including basic characteristics of syntax and
grammars; regular, context-free, and ambiguous grammars; constructs for
specifying and manipulating data types; language features affecting static and
dynamic storage management; control structures and data flow; subroutines,
procedures, block structures, interrupts, decision tables, recursion;
relationship with good programming style; run-time considerations;
interpretative languages, lexical analysis and parsing.
Prerequisites: COM 1320, COM 1621.
3645 Compiler Theory. 3 credits. AE
Grammars, languages, and their syntax and semantics; parsing and ambiguity;
scanners; implementation of symbol tables; parsers; major parsing algorithms;
techniques for machine-independent code generation; code optimization;
syntax-directed translation schema.
Prerequisites: COM 2545, COM 3640.
3760 Artificial Intelligence. 3 credits. AE
Heuristic vs. algorithmic methods, cognitive processes, investigation of methods
of making machines behave intelligently, problem solving, theorem probing, game
playing, pattern recognition, question answering, learning self-organization,
methods of programming such procedures, data structures and program
organization, the mind-brain problem; and the nature of intelligence.
Prerequisite: COM 2545.
3764 Expert Systems. 3 credits. AE
Introduction to expert systems; components of an ideal expert system: knowledge
base, rules, interpreter; secondary components: justifier, scheduler,
consistency enforcer, blackboard; search space size, exhaustive search, single
line of reasoning, hierarchical, generate, and test; combining evidence from
multiple sources; utilizing metaknowledge; metarules and their source; detecting
simple errors in rules; justification of rules; expert system tools: EMYCIN,
OPS5, HEARSAY—III.
Prerequisite: COM 2545.
3772 Computer Graphics. 3 credits. AE
Software, hardware, and mathematical tools for the representation, manipulation,
and display of topological and two- and three-dimensional objects; display
devices; problems and objectives of computer graphics; point, vector, curve, and
character generation; interactive vs. passive graphics; graphics data
structures, graphics packages and graphics languages; 2-dimensional graphics:
generation, transformation, window clipping, segmented display files and display
procedures; interactive graphics: input devices, input techniques, event
handling, and input functions; raster graphics fundamentals; 3-dimensional
graphics: hidden-line problems, windowing, transformations, perspective
projections, and shading.
Prerequisites: COM 2545,
MAT 1412,
MAT 2105
3905; 3906; 3907; 3908; 3909 Individual and Group Projects. 1–3 credits per semester.
Faculty and students choose from among a number of term projects.
Laboratory fee: $50 per semester. Prerequisite: 21 credits in COM courses or
senior status.
4512. Advanced Java Programming.
3 credits. AE
Review of Java Standard Edition: classes, interfaces, event handling, GUI,
applets, strings, streams and files. Multithreading, advanced GUI, advanced data
structures, network programming, Java Beans. Introduction to Java Enterprise
Edition: servlets and JSP. Design Patterns: Model-View-Controller, Value object,
Data Access, Business Delegate, Front Controller. Security.
Prerequisites: COM 2545, COM 3640
4541 Numerical Analysis. 3 credits. AE
Arithmetic and precision; finite difference calculus; interpolation;
approximation: numerical integration and differentiation; solution of nonlinear
equations, differential equations; linear systems of equations; iterative
methods; computation of eigenvalues and eigenvectors.
Prerequisites: COM 2545,
MAT 1413.
4550 Bioinformatics 4 credits.
This course introduces the student to current bioinformatics tools and databases
by presenting an overview of the theoretical and practical applications of
Computer Science to Biological Science. The management of Biological
information, and the application of the state-of-the-art in Information
Technology towards the analysis and organization of scientific data are covered. A principle focus is on the Molecular Biology
discipline due the large amounts of data in this area. The course covers
database structures and tools currently used for the facilitation of the
collection and organization of data (e.g. GenBank) and methods and resources
which deal with the study of three-dimensional structures of Biological models
(e.g. PDB). Occasional guest lecturers share their knowledge and practical
experiences in the field. The course covers algorithms, systems and databases used to facilitate and
expedite biological research, for the analysis of Biological data, the
prediction of Biological functions based on structural data, and information
management issues such as the fundamental principles of data mining.
4901 Independent Study.
4911 Guided Project.

Classical Languages
Economics
