SI340 Theory of Computing
Coordinator: Prof. C. W. Brown, x3-6817, firstname.lastname@example.org
Course Policy, Fall AY18 (v2.0)
Course Description: This course presents the theoretical foundations for computing, including the study of formal languages, finite state machines, pushdown automata, Turing machines and computability.
- Understand the various models of computation, from both the
formal language and the corresponding machine model
- Understand some of the practical applications of these formal
models of computation and language; (supports Outcome CS-6)
- Apply the mathematical methods that let us describe computation
and language in order to understand formal algorithms.
1. Analysis. An ability to analyze a problem, and to identify and define the computing requirements appropriate to its solution.
2. Implementation. An ability to design, implement, and evaluate a computer-based solution to meet a given set of computing requirements in the context of the discipline.
3. Communication. An ability to communicate effectively with a range of audiences about technical information.
4. Ethics. An ability to make informed judgments in computing practice based on legal and ethical principles.
5. Teamwork. An ability to function effectively on teams to establish goals, plan tasks, meet deadlines, manage risk, and produce deliverables.
CS-6. Theory. An ability to apply theory in the design and implementation of computer-based solutions.
CS-7. Reasoning. An ability to reason about and explain computer-based solutions at multiple levels of abstraction.
IT-6. Requirements. An ability to identify and analyze user needs and to take them into account in the selection, integration, evaluation, and administration of computer-based systems.
Theory of Computing: A Gentle Introduction, Kinber
& Smith, Prentice Hall, 2001.
Extra Instruction: Extra instruction (EI) is strongly encouraged and should be scheduled by email with the instructor. EI is not a substitute lecture; students should come prepared with specific questions or problems.
Collaboration: The guidance in the Honor Concept of the Brigade of Midshipmen and the Computer Science Department Honor Policy must be followed at all times. See:
Specific instructions for this course:
All collaboration and outside sources should always be cited. The same rules apply for giving and receiving assistance. If you are unsure whether a certain kind of assistance or collaboration is permitted, you should assume it is not, work individually, and seek clarification from your instructor.
- Homework: You may collaborate as much as you like on homeworks,
but the actual pencil-to-paper or fingers-to-keyboard effort must be
your own. As always, all collaboration must be cited.
- Exams: All work on exams must be your own.
Classroom Conduct: The section leader will record attendance and bring the class to attention at the beginning and end of each class. If the instructor is late more than 5 minutes, the section leader will keep the class in place and report to the Computer Science department office. If the instructor is absent, the section leader will direct the class. Drinks are permitted, but they must be in reclosable containers. Food, alcohol, smoking, smokeless tobacco products, and electronic cigarettes are all prohibited. Cell phones must be silent during class.
Late Policy: Penalties for late submission of graded work may vary among courses or from semester to semester, but they will be the same for all sections of a given course. For this course:
- Homework assigned with class x is due at the beginning of
class x + 1, unless stated otherwise. Late homeworks are
not generally acccepted. With an excused absence, arrange the
turning in of homework with your instructor.
|6 weeks||12 weeks||16 weeks||Final|