Teaching Formal Methods for Computational Linguistics at Uppsala University
|
|
|
- Millicent Bennett
- 9 years ago
- Views:
Transcription
1 Teaching Formal Methods for Computational Linguistics at Uppsala University Roussanka Loukanova Computational Linguistics Dept. of Linguistics and Philology, Uppsala University P.O. Box 635, Uppsala, Sweden Abstract In the first sections of this paper, I discuss some of the motivation for teaching Formal Methods for interdisciplinary programs, such as Computational Linguistics, that use computational apparatus. In the second section, I share my experience by teaching such courses in the program for Computational Linguistics and Language Technology at Uppsala University. In the last section, I will present existing gaps in education on Formal Methods in interdisciplinary and science subjects. Keywords: computability, automata, logic, computational linguistics, formal grammar, computational grammar, computational semantics, interdisciplinary program 1. INTRODUCTION Contemporary work in many, if not all sciences, inevitably requires interdisciplinary cooperation, especially by involving expertise on various branches of mathematics including pure numerical and symbolic computing and other formal methods. Computational Linguistics and Natural Language Processing are among the interdisciplinary subjects that depend heavily on theoretical results from both quantitative and symbolic mathematics. On the side of the quantitative math, Statistics and Probability methods have a special status for applications in Natural Language Processing. Most of the other subfields of Computational Linguistics originate from Logic and Theory of Computability and use various formal methods. Major studies in Linguistics have evolved into modern computational subjects such as Computational Syntax, Computational Semantics, Computational Morphology, etc. that have various applications for software development and computerised Natural Language Processing. The first decisive step for introducing formal methods in the study of syntax was done by Noam Chomsky. In the second half of the 50s, he published mathematical results that established 1 the study of so called Chomsky s Hierarchy of Formal Grammars and Languages in the now classical field Theory of Formal Languages. This field has been developed, by logicians and computer scientists, into a vast subject in theoretical computer science, which also has many applications in Natural Language Processing. Chomsky s book Syntactic Structures, Chomsky 1957, introduced formal syntax for English. That work initiated continuously emerging and developing of elaborate formalisms for syntax and computational grammar of human languages. On the side of semantics of human languages, Richard Montague (see [10]) introduced a version of Higher Order Intensional Logic and gave a formal analysis of a small fragment of English. From then, it has been recognised that the semantics of human languages can be studied in a 1 Logicians had been working in the field of automata and algebraic structures of formal languages before Chomsky, but predominantly, their work was considered, by logicians and linguists, as inapplicable to the studies of human languages. Teaching Formal Methods: Practice and Experience, 15 December
2 scientifically rigorous way with computational apparatus that is one or other variant of higher order logic. The field of Automata Theory is essential for implementations of context-free parsing algorithms specialized for natural language. Finite State Automata have proved to be highly efficient formal technique for building automatic morphological analysers. These and other research developments have already significant and very successful applications in mundane and advanced technologies involving natural language processing, from spellcheckers and grammar checking, to automatic speech recognition and machine translation. The nature of the field of Computational Linguistics is innately interdisciplinary. The object of study is human language. The methods and techniques are amalgamations of methods and techniques developed in different fields of mathematics (both numerical or symbolic), research in theoretical linguistics, and by using different techniques of computer science, including programming. Simultaneously with Computational Linguistics, other interdisciplinary subjects have been emerging, e.g. Artificial Intelligence, Cognitive Science, Neuroscience of Language and Bioinformatics, which also rely on formal methods in addition to pure mathematics. Advances in such interdisciplinary research, technology and industry open job market for specialists with appropriate education, including such in formal methods. To meet the needs of research and job markets for specialists, nowadays, many universities have established complete educational programs in Computational Linguistics or Cognitive Science. Other Universities offer individual courses, either in some specialized field of Computational Linguistics, or broad coverage courses in Natural Language Processing. By being interdisciplinary, these programs or individual courses can be located in Departments of Linguistics, Computer Science, or in Mathematics, and sometimes are joint educational programs. The major courses that students are required to take vary depending on the affiliation of the program to these departments. 2. FORMAL METHODS IN COMPUTATIONAL LINGUISTICS 2.1. Formal Methods in Computational Linguistics in Uppsala In this section I will describe the courses on formal methods in the program for Computational Linguistics and Language Technology at Uppsala University. However, these courses are typical for many others such programs, including in Cognitive Science and Artificial Intelligence. The number of the students in the program (as in general in Computer Science and Information Technology in Sweden) has dropped down significantly in the last years. This has lead to limited financial resources and the need to decrease the number of lectures per course. Typically, each course consists of 10 lecture units (2x45 min) and 5-6 computer labs or exercise units (2x45). Despite of this, the program has a good set of foundational courses in formal methods and specialized courses in computational methods, programming and software development for linguistics. Students usually understand that for their future professional well-being they need specialized courses. On the contrary, it seems that there is a world-wide general tendency of misunderstanding, at least among majority of students, that formal methods are abstract theoretical matter which were not of use in real-life practice and professional skills. As a motivation of all foundational courses, I use the argument that the specialized courses in computational subjects, including quality programing, are heavily dependent on abilities to work with formal and rigorous specifications and symbolic manipulations. The methods for such work are provided by the foundational courses in formal methods. Handling students with insufficient mathematical background is a significant problem, especially in the context of short course terms of 5 weeks. Typically, each class group consists of students with varying mathematical background. This puts challenges for the course level and pace in the presence of students with limited mathematics backgrounds, while in the same time maintaining Teaching Formal Methods: Practice and Experience, 15 December
3 sufficient interest for the more advanced students. My general approach to students with lower math background than required for the course is to provide them with additional consultation during office time and with supplementary literature for filling up the missing knowledge. Another useful way is to encourage work on homework and lab assignments in small groups of two to three students, where they help each other in understanding and solving problems Some Courses on Formal Methods and Dependent Specialized Courses In what follows, I will introduce the central goals of some of the courses in Formal Methods for Computational Linguistics, which I have experience with. Alongside, I will describe my techniques for teaching and point to software tools that I have been using in teaching logic, computational grammar, semantics and morphology. Most of the lectures are accompanied by computer labs for work with software that students use in assignments and project work. Foundations of Computer Science I (Introductory Logic) The course is an elementary introduction to the syntax and semantics of First Order Language. The emphasis is on understanding the relationship between syntax and semantics of a language, the similarity and distinction between a formal language and natural language. This is the very first introduction to finite descriptions of infinite languages via recursive definitions and Frege s Principle of Compositionality for the semantics of First Order Logic. In my practice with major and non-major students, the syntax and semantics of first order language is easily understood by using the software package LPL by Barwise and Etchemendy 1999 (see [1]). Often, when a Computational Linguistics course is located in a humanity department, students come into the program with limited background in mathematics and difficulties in understanding and carrying on formal proofs without extra care. Having in mind such students, the textbook gives various concepts and proofs in two parallel modes: informal and formal, which greatly facilitates learning the formal definitions and proof techniques. For more details, see the course website [6]. Foundations of Computer Science II (Formal Languages and Automata Theory) The goals of the course includes introductory understanding of some fundamentals of formal models of computation, in particular, techniques for finite representation of infinite objects by recursive definitions, formal grammars and automata. In a term of 5 weeks, it is an introduction mainly to naive set theory, finite state automata, context-free grammars and push-down automata, brief introduction to context-sensitive languages and Turing Machines, and an emphasis on the intuitions behind the various limitations to what different types of automata can compute. Typically, this course is rather challenging for most students since it is their first encounter with the methods of symbolic computations. This is why motivation is very important. I have been presenting arguments such as: it is very important one to know what problems can be solved algorithmically and what can not, and if a task is computable, what algorithm can be used, and how effective and efficient an algorithm can be. The course provides background for other specialized courses such as computational syntax, algorithms for parsing, applied automata for morphological analysis, etc. For more details, see the course website [7]. Applied Automata Theory The course is a continuation of the sequence of the courses in Foundations of Computer Science and most of the specialized courses in Computational Linguistics. This is why it is scheduled in the last year of the Master s program. Teaching Formal Methods: Practice and Experience, 15 December
4 The goals of the course are in two parallel directions: (1) acquiring knowledge on some of the mathematical theory of abstract automata and, in parallel, (2) practice with software for operations with formal languages and automata, and applications of automata to automatic processing of natural language. The computer lab work is mainly on the applications of the Finite State technology, which includes practice with Finite-State software developments and implementations of algorithms for the Finite State classes of languages and automata: closure properties, determinization, minimization, decision properties, regular languages and expressions, algorithms for conversions between Finite State Automata and regulr expressions, combinations of Finite State Automata with other systems. With lab assignments and course projects, students also experiment with processing natural language by using finite state tools: tokenization, morphological analyzers and generators, tagging, e.g. part of speech disambiguation, shallow parsing. For this purpose, in the computer labs, we use the Xerox Finite-State tools (see [2]). Computational Grammar The course introduces the concepts of formal and computational grammar of natural language. The formal description of grammar theory covering syntax, semantics and lexicon (see [11], uses the feature-value language and logic with the fundamental operator of unification. Linguistic information is represented from the perspective of linguistic generality and adequateness computational efficiency syntax-semantics relations computerized processing of natural language In this course, students experience the direct link between formal methods and software development for large scale grammars. In the computer labs, we use the LKB grammar tool for writing small grammars of natural language, see [5]. Students practice advanced applications of formal methods for grammar software development, chart parsing with feature-value descriptions, syntactic and semantic ambiguity and syntax-semantics interface. For more details, see the course website [9]. Computational Semantics I The goal of the course is to introduce the central concepts of language, information and math logic, and the relations between them via acquiring knowledge on formal semantics: in particular, by learning some of the methods of model theoretic semantics computational semantics: by using fundamental techniques for computing semantic representations of natural language expressions The technique of teaching is a combination of lectures on theoretical concepts of the formal apparatus of lambda calculus and practical work with logic software in computer labs, assignments and projects. In the combination of theoretical lectures and experimenting with computerized tools, students learn first order model building and checking first order theorem proving unification resolution systems the central concepts of quantifiers and scope ambiguities Students acquire experience with software for automated calculations of truth values and meaning representations (see [1] and [3]). Teaching Formal Methods: Practice and Experience, 15 December
5 For more details, see the course website [9]. Computational Semantics II The goals of course is to introduce the advanced methods of higher order logic for more adequate coverage of semantics of natural language and computing semantic representations of natural language expressions. The lectures are introduction to higher order logic and modern approaches to computational semantics: Possible World Semantics, Situation Semantics, Minimal Recursion Semantics, Discourse Representation. In computer labs, assignments and projects students practice on the meaning representations of quantifiers and scope ambiguities by using logic software [1] and [3]. Then we experiment on what they have learned in several courses by using grammar software handling semantic representations and syntax-semantics interface. For this purpose, we have used the LKB grammar tool, see [5]. For more details, see the course website [8] Learning Experiences From my experience, the difficulties in the above courses divide into two loci: one from the perspective of the students and the other, on the side of the lecturer. But both loci are grounded on one major problem: the limited time of the courses. When a course meets twice per week, it is typically given just in 5 weeks. For such a short period of time, students can not comprehend the nature of abstract theoretical concepts and have little time to practice on their computational aspects, computer implementations, programming, etc. On the side of the lecturer, the difficulties are on the choices of what and how much of the material to be presented, the level of introducing abstract concepts and how much to be left for self-study. Often, the course is limited to intuitive presentations of the concepts supplemented with examples, some formal definitions and little on major results, formal proofs, algorithms, methods and techniques for implementations. The limited time spent on major results and formal characteristics of abstract concepts compromises students comprehension of methods and techniques for computational implementations. On the positive side, despite of the above difficulties, by taking a set of courses which includes material on foundations and computability, students learn computational concepts, acquire sound senses for symbolic manipulations and algorithmic work. This reflects highly positively on their abilities to work on implementations by using or developing software, and after all, gives them a good start in developing professional skills. 3. GAPS IN EDUCATION ON FORMAL METHODS By my experience (in mathematics, informatics (computer science), linguistics) teaching formal methods to non-major students can be very successful. However, currently there is a strong tendency for cutting down course hours or entire courses, and wide spread attitude to formal methods as highly abstract material with little applications. For providing needed up-to date background, science students (e.g. in physics, chemistry, medicine, biology, etc.) are required to take relevant courses in pure math including material on Calculus, Differential Equations, Statistics and Probability, numerical methods, scientific computing, etc. This is needed in the professional life of specialists, either directly for their work, or indirectly for communicating and comprehending information including math. Then, the following questions arise: How many of the science researchers, say in medicine, biology, or even in bioinformatics, are aware about the advances in formal methods of logic and computability? How many logicians are involved in interdisciplinary work 2 in medical sciences and pharmaceutical industry? Even those medical graduates who have taken courses in Logic, or Discrete/Finite Math end up with vague memories of elementary set theory, boring truth tables of propositional calculus, 2 As some of the talks given at the Formal Methods 2006 Symposium, demonstrate, there are initiations for such work. Teaching Formal Methods: Practice and Experience, 15 December
6 and some elementary first order predicate logic. In most cases, natural science (medicine, biology, etc.) communities consider logic as a branch of philosophy without any practical use in their professional practice. This is often a view even of researchers working on top edge scientific advances on medical and biological models and simulations. How many of them know that logic and computability theory provide powerful methods for formal specification of models and verification? Currently, there are two vast areas, namely, medical and pharmaceutical research, which have fallen behind in using the advances in formal methods of mathematical and computational logic. Trial studies in medicine, pharmacology and biology, which include tests with animals and humans, use sophisticated methods of various branches of pure mathematics such as statistics and probability, multivariable analysis, and other numerical methods. There are powerful statistical methods for testing medical and biological models. However, those models are usually specified in natural language, which despite of the specialized terminology and style has all features of human language, especially, underspecification and ambiguity. Something more, models described in human language are vulnerable to inconsistency and gaps in the chains of compound information and reasoning. Educational programs in natural sciences, such as medicine and biology, should offer specialized introductory courses in formal methods. These courses would provide foundations for interdisciplinary and cooperative work on research and development of advanced industry technologies, building sound models and simulation, and automatic verification of complex systems. REFERENCES [1] Barwise, Jon and John Etchemendy, et al., Language, Proof, and Logic. CSLI. Stanford. ( [2] Beesley, Kenneth R. and Lauri Karttunen. Finite State Morphology. CSLI Publications [3] Blackburn, P. and Bos, J Representation and Inference for Natural Language. CSLI Publications and University of Chicago Press. [4] Chomsky, Noam Syntactic Structures. The Hague: Mouton. [5] Copestake, Ann Implementing Typed Feature Structure Grammars. CSLI Publications. [6] Loukanova, R., VT 2003, Foundations of Computer Science I (Logic) [7] Loukanova, R., HT 2006, Foundations of Computer Science II (Theory of Formal Languages and Automata) ling/syllabus.html [8] Loukanova, R., VT 2006, Computational Semantics II, 2/syllabus.html [9] Loukanova, R., HT 2006, Computational Grammar II, 2/syllabus.html [10] Montague, R English as a formal language. In B. Visentini et al., (eds.) Linguaggi nella Spocietà e nella Tecnica. Milan: Edizioni di Communità. Reprented in R. Thomason, editor, Formal Phylosophy, New Haven: Yale University Press. [11] Sag, Ivan A., Thomas Wasow, and Emily M. Bender. Syntactic Theory - A Formal Introduction. Stanford: CSLI Publications Teaching Formal Methods: Practice and Experience, 15 December
Module Catalogue for the Bachelor Program in Computational Linguistics at the University of Heidelberg
Module Catalogue for the Bachelor Program in Computational Linguistics at the University of Heidelberg March 1, 2007 The catalogue is organized into sections of (1) obligatory modules ( Basismodule ) that
From Logic to Montague Grammar: Some Formal and Conceptual Foundations of Semantic Theory
From Logic to Montague Grammar: Some Formal and Conceptual Foundations of Semantic Theory Syllabus Linguistics 720 Tuesday, Thursday 2:30 3:45 Room: Dickinson 110 Course Instructor: Seth Cable Course Mentor:
CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing
CS Master Level Courses and Areas The graduate courses offered may change over time, in response to new developments in computer science and the interests of faculty and students; the list of graduate
Model 2.4 Faculty member + student
Model 2.4 Faculty member + student Course syllabus for Formal languages and Automata Theory. Faculty member information: Name of faculty member responsible for the course Office Hours Office Number Email
Datavetenskapligt Program (kandidat) Computer Science Programme (master)
Datavetenskapligt Program (kandidat) Computer Science Programme (master) Wolfgang Ahrendt Director Datavetenskap (BSc), Computer Science (MSc) D&IT Göteborg University, 30/01/2009 Part I D&IT: Computer
MEng, BSc Computer Science with Artificial Intelligence
School of Computing FACULTY OF ENGINEERING MEng, BSc Computer Science with Artificial Intelligence Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give
Doctor of Philosophy in Computer Science
Doctor of Philosophy in Computer Science Background/Rationale The program aims to develop computer scientists who are armed with methods, tools and techniques from both theoretical and systems aspects
MEng, BSc Applied Computer Science
School of Computing FACULTY OF ENGINEERING MEng, BSc Applied Computer Science Year 1 COMP1212 Computer Processor Effective programming depends on understanding not only how to give a machine instructions
DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING
DEGREE PLAN INSTRUCTIONS FOR COMPUTER ENGINEERING Fall 2000 The instructions contained in this packet are to be used as a guide in preparing the Departmental Computer Science Degree Plan Form for the Bachelor's
School of Computer Science
School of Computer Science Computer Science - Honours Level - 2014/15 October 2014 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level
Draft dpt for MEng Electronics and Computer Science
Draft dpt for MEng Electronics and Computer Science Year 1 INFR08012 Informatics 1 - Computation and Logic INFR08013 Informatics 1 - Functional Programming INFR08014 Informatics 1 - Object- Oriented Programming
CHAPTER 7 GENERAL PROOF SYSTEMS
CHAPTER 7 GENERAL PROOF SYSTEMS 1 Introduction Proof systems are built to prove statements. They can be thought as an inference machine with special statements, called provable statements, or sometimes
Appendices master s degree programme Artificial Intelligence 2014-2015
Appendices master s degree programme Artificial Intelligence 2014-2015 Appendix I Teaching outcomes of the degree programme (art. 1.3) 1. The master demonstrates knowledge, understanding and the ability
Computer Science/Software Engineering
292 School of Science and Engineering Computer Science/Software Engineering Everald E. Mills, PhD, Chair Objectives The computer science program seeks to prepare students for careers that require sophisticated
UF EDGE brings the classroom to you with online, worldwide course delivery!
What is the University of Florida EDGE Program? EDGE enables engineering professional, military members, and students worldwide to participate in courses, certificates, and degree programs from the UF
Fall 2012 Q530. Programming for Cognitive Science
Fall 2012 Q530 Programming for Cognitive Science Aimed at little or no programming experience. Improve your confidence and skills at: Writing code. Reading code. Understand the abilities and limitations
The Halting Problem is Undecidable
185 Corollary G = { M, w w L(M) } is not Turing-recognizable. Proof. = ERR, where ERR is the easy to decide language: ERR = { x { 0, 1 }* x does not have a prefix that is a valid code for a Turing machine
LIST OF REGISTRABLE COURSES FOR BSC COMMUNICATION TECHNOLOGY JUNE 2014
100 Level Title Unit Status GST 101 Use of English and Communication Skills I 2 C GST 107 The Good Study Guide 2 C BIO101 General Biology 2 C CHM101 Introductory Inorganic Chemistry 2 C CIT 101 Computers
Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1
The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions
Computer Architecture Syllabus of Qualifying Examination
Computer Architecture Syllabus of Qualifying Examination PhD in Engineering with a focus in Computer Science Reference course: CS 5200 Computer Architecture, College of EAS, UCCS Created by Prof. Xiaobo
COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)
VCU 1 COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.) The Bachelor of Science in Computer Science is built on a rigorous, highly concentrated, accredited curriculum of computer science courses. The program
Computation Beyond Turing Machines
Computation Beyond Turing Machines Peter Wegner, Brown University Dina Goldin, U. of Connecticut 1. Turing s legacy Alan Turing was a brilliant mathematician who showed that computers could not completely
Division of Mathematical Sciences
Division of Mathematical Sciences Chair: Mohammad Ladan, Ph.D. The Division of Mathematical Sciences at Haigazian University includes Computer Science and Mathematics. The Bachelor of Science (B.S.) degree
Genetic programming with regular expressions
Genetic programming with regular expressions Børge Svingen Chief Technology Officer, Open AdExchange [email protected] 2009-03-23 Pattern discovery Pattern discovery: Recognizing patterns that characterize
CS5310 Algorithms 3 credit hours 2 hours lecture and 2 hours recitation every week
CS5310 Algorithms 3 credit hours 2 hours lecture and 2 hours recitation every week This course is a continuation of the study of data structures and algorithms, emphasizing methods useful in practice.
Computer Science Information Sheet for entry in 2016. What is Computer Science?
Computer Science Information Sheet for entry in 2016 What is Computer Science? Computer Science is about understanding computer systems and networks at a deep level. Computers and the programs they run
Course Manual Automata & Complexity 2015
Course Manual Automata & Complexity 2015 Course code: Course homepage: Coordinator: Teachers lectures: Teacher exercise classes: Credits: X_401049 http://www.cs.vu.nl/~tcs/ac prof. dr. W.J. Fokkink home:
Foundations of the Montessori Method (3 credits)
MO 634 Foundations of the Montessori Method This course offers an overview of human development through adulthood, with an in-depth focus on childhood development from birth to age six. Specific topics
Introduction to formal semantics -
Introduction to formal semantics - Introduction to formal semantics 1 / 25 structure Motivation - Philosophy paradox antinomy division in object und Meta language Semiotics syntax semantics Pragmatics
The University of Connecticut. School of Engineering COMPUTER SCIENCE GUIDE TO COURSE SELECTION AY 2015-2016. Revised July 27, 2015.
The University of Connecticut School of Engineering COMPUTER SCIENCE GUIDE TO COURSE SELECTION AY 2015-2016 Revised July 27, 2015 for Computer Science (CSci) Majors in the School of Engineering Table of
Computer Science MS Course Descriptions
Computer Science MS Course Descriptions CSc I0400: Operating Systems Underlying theoretical structure of operating systems; input-output and storage systems, data management and processing; assembly and
Overview of E0222: Automata and Computability
Overview of E0222: Automata and Computability Deepak D Souza Department of Computer Science and Automation Indian Institute of Science, Bangalore. August 3, 2011 What this course is about What we study
Culture and Language. What We Say Influences What We Think, What We Feel and What We Believe
Culture and Language What We Say Influences What We Think, What We Feel and What We Believe Unique Human Ability Ability to create and use language is the most distinctive feature of humans Humans learn
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy
Regular Expressions with Nested Levels of Back Referencing Form a Hierarchy Kim S. Larsen Odense University Abstract For many years, regular expressions with back referencing have been used in a variety
CS 301 Course Information
CS 301: Languages and Automata January 9, 2009 CS 301 Course Information Prof. Robert H. Sloan Handout 1 Lecture: Tuesday Thursday, 2:00 3:15, LC A5 Weekly Problem Session: Wednesday, 4:00 4:50 p.m., LC
How To Understand The Theory Of Computer Science
Theory of Computation Lecture Notes Abhijat Vichare August 2005 Contents 1 Introduction 2 What is Computation? 3 The λ Calculus 3.1 Conversions: 3.2 The calculus in use 3.3 Few Important Theorems 3.4 Worked
PhD in Computer Science at North Carolina A&T State University
PhD in Computer Science at North Carolina A&T State University December 5, 2013 Contents Admission...1 Program Requirements...2 Course Work...2 Advisory Committee...2 Residency and Other Requirements...2
Introduction to Automata Theory. Reading: Chapter 1
Introduction to Automata Theory Reading: Chapter 1 1 What is Automata Theory? Study of abstract computing devices, or machines Automaton = an abstract computing device Note: A device need not even be a
MATHEMATICS: CONCEPTS, AND FOUNDATIONS Vol. III - Logic and Computer Science - Phokion G. Kolaitis
LOGIC AND COMPUTER SCIENCE Phokion G. Kolaitis Computer Science Department, University of California, Santa Cruz, CA 95064, USA Keywords: algorithm, Armstrong s axioms, complete problem, complexity class,
ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE. School of Mathematical Sciences
! ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE School of Mathematical Sciences New Revised COURSE: COS-MATH-200 Discrete Mathematics and Introduction to Proofs 1.0 Course designations
Jacques Cohen Compiler design. Analysis of parallel algorithms. Logic programming. Data structures. Bioinformatics.
125 Department of Objectives Undergraduate Major The undergraduate program in computer science teaches the fundamentals of theoretical and practical aspects of computing, preparing students for creative
MATHEMATICS PLACEMENT
MATHEMATICS PLACEMENT Am I required to take the Math Placement Exam? Students are not required to take the placement exam. Your mathematics placement is determined by your Math subscore on the ACT or SAT
Regular Languages and Finite Automata
Regular Languages and Finite Automata 1 Introduction Hing Leung Department of Computer Science New Mexico State University Sep 16, 2010 In 1943, McCulloch and Pitts [4] published a pioneering work on a
Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students
Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent
Master's projects at ITMO University. Daniil Chivilikhin PhD Student @ ITMO University
Master's projects at ITMO University Daniil Chivilikhin PhD Student @ ITMO University General information Guidance from our lab's researchers Publishable results 2 Research areas Research at ITMO Evolutionary
School of Computer Science
Computer Science Honours Level 2013/14 August 2013 School of Computer Science Computer Science (CS) Modules CS3051 Software Engineering SCOTCAT Credits: 15 SCQF Level 9 Semester: 1 This module gives a
Special Topics in Computer Science
Special Topics in Computer Science NLP in a Nutshell CS492B Spring Semester 2009 Jong C. Park Computer Science Department Korea Advanced Institute of Science and Technology INTRODUCTION Jong C. Park, CS
M.S. Computer Science Program
M.S. Computer Science Program Pre-requisite Courses The following courses may be challenged by sitting for the placement examination. CSC 500: Discrete Structures (3 credits) Mathematics needed for Computer
2110711 THEORY of COMPUTATION
2110711 THEORY of COMPUTATION ATHASIT SURARERKS ELITE Athasit Surarerks ELITE Engineering Laboratory in Theoretical Enumerable System Computer Engineering, Faculty of Engineering Chulalongkorn University
Department of Computer Science
The University of Texas at San Antonio 1 Department of Computer Science The Department of Computer Science offers a Bachelor of Science degree in Computer Science and a Minor in Computer Science. Admission
TECH. Requirements. Why are requirements important? The Requirements Process REQUIREMENTS ELICITATION AND ANALYSIS. Requirements vs.
CH04 Capturing the Requirements Understanding what the customers and users expect the system to do * The Requirements Process * Types of Requirements * Characteristics of Requirements * How to Express
Winter 2016 Course Timetable. Legend: TIME: M = Monday T = Tuesday W = Wednesday R = Thursday F = Friday BREATH: M = Methodology: RA = Research Area
Winter 2016 Course Timetable Legend: TIME: M = Monday T = Tuesday W = Wednesday R = Thursday F = Friday BREATH: M = Methodology: RA = Research Area Please note: Times listed in parentheses refer to the
Pushdown automata. Informatics 2A: Lecture 9. Alex Simpson. 3 October, 2014. School of Informatics University of Edinburgh [email protected].
Pushdown automata Informatics 2A: Lecture 9 Alex Simpson School of Informatics University of Edinburgh [email protected] 3 October, 2014 1 / 17 Recap of lecture 8 Context-free languages are defined by context-free
Appendices master s degree programme Human Machine Communication 2014-2015
Appendices master s degree programme Human Machine Communication 2014-2015 Appendix I Teaching outcomes of the degree programme (art. 1.3) 1. The master demonstrates knowledge, understanding and the ability
Position Classification Flysheet for Computer Science Series, GS-1550. Table of Contents
Position Classification Flysheet for Computer Science Series, GS-1550 Table of Contents SERIES DEFINITION... 2 OCCUPATIONAL INFORMATION... 2 EXCLUSIONS... 4 AUTHORIZED TITLES... 5 GRADE LEVEL CRITERIA...
New trend in Russian informatics curricula: integration of math and informatics
New trend in Russian informatics curricula: integration of math and informatics Svetlana Gaisina Academy of post-degree pedagogical education, Saint Petersburg, [email protected] Sergei Pozdniakov Saint
Conley, D. T. (2005). College Knowledge: What it Really Takes for Students to Succeed and What We Can Do to Get Them Ready
1 Conley, D. T. (2005). College Knowledge: What it Really Takes for Students to Succeed and What We Can Do to Get Them Ready. San Francisco: Jossey-Bass. College Knowledge is based on research conducted
3515ICT Theory of Computation Turing Machines
Griffith University 3515ICT Theory of Computation Turing Machines (Based loosely on slides by Harald Søndergaard of The University of Melbourne) 9-0 Overview Turing machines: a general model of computation
USABILITY OF A FILIPINO LANGUAGE TOOLS WEBSITE
USABILITY OF A FILIPINO LANGUAGE TOOLS WEBSITE Ria A. Sagum, MCS Department of Computer Science, College of Computer and Information Sciences Polytechnic University of the Philippines, Manila, Philippines
Handout #1: Mathematical Reasoning
Math 101 Rumbos Spring 2010 1 Handout #1: Mathematical Reasoning 1 Propositional Logic A proposition is a mathematical statement that it is either true or false; that is, a statement whose certainty or
COMPUTER SCIENCE STUDENTS NEED ADEQUATE MATHEMATICAL BACKGROUND
COMPUTER SCIENCE STUDENTS NEED ADEQUATE MATHEMATICAL BACKGROUND Hasmik GHARIBYAN PAULSON Computer Science Department, California Polytechnic State University, 1 Grand Avenue, San Luis Obispo, CA 93407,
English taught courses, winter term 2015/16 Bachelor level
taught courses, winter term 2015/16 Arts and Humanities Advanced Course A Practical course (Ü) 2 Basic Course A - Large Group Sessions Practical course (Ü) Basic Course A (Übung) Practical course (Ü) 2
Diablo Valley College Catalog 2014-2015
Mathematics MATH Michael Norris, Interim Dean Math and Computer Science Division Math Building, Room 267 Possible career opportunities Mathematicians work in a variety of fields, among them statistics,
Overview of the TACITUS Project
Overview of the TACITUS Project Jerry R. Hobbs Artificial Intelligence Center SRI International 1 Aims of the Project The specific aim of the TACITUS project is to develop interpretation processes for
Computer Science Theory. From the course description:
Computer Science Theory Goals of Course From the course description: Introduction to the theory of computation covering regular, context-free and computable (recursive) languages with finite state machines,
CHAPTER 3. Methods of Proofs. 1. Logical Arguments and Formal Proofs
CHAPTER 3 Methods of Proofs 1. Logical Arguments and Formal Proofs 1.1. Basic Terminology. An axiom is a statement that is given to be true. A rule of inference is a logical rule that is used to deduce
FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY AUTUMN 2016 BACHELOR COURSES
FACULTY OF COMPUTER SCIENCE AND INFORMATION TECHNOLOGY Please note! This is a preliminary list of courses for the study year 2016/2017. Changes may occur! AUTUMN 2016 BACHELOR COURSES DIP217 Applied Software
Quantitative Finance
Quantitative Finance Joel Hasbrouck October 23, 2002 Copyright (c) 2002, Joel Hasbrouck, All rights reserved. 1 Topics What is quantitative finance? Where is it used? / Where are the jobs? Where are the
CREDIT TRANSFER: GUIDELINES FOR STUDENT TRANSFER AND ARTICULATION AMONG MISSOURI COLLEGES AND UNIVERSITIES
CREDIT TRANSFER: GUIDELINES FOR STUDENT TRANSFER AND ARTICULATION AMONG MISSOURI COLLEGES AND UNIVERSITIES With Revisions as Proposed by the General Education Steering Committee [Extracts] A. RATIONALE
Study Regulations for the Master Course Visual Computing
Study Regulations for the Master Course Visual Computing As of January 26 th, 2006 Pursuant to 54 of Act No. 1556 on Saarland University (University Act UG) from June 23 rd, 2004 (Official Gazette p. 1782)
Software Engineering Transfer Degree
www.capspace.org (01/17/2015) Software Engineering Transfer Degree This program of study is designed for associate-degree students intending to transfer into baccalaureate programs awarding software engineering
Lecture 1. Basic Concepts of Set Theory, Functions and Relations
September 7, 2005 p. 1 Lecture 1. Basic Concepts of Set Theory, Functions and Relations 0. Preliminaries...1 1. Basic Concepts of Set Theory...1 1.1. Sets and elements...1 1.2. Specification of sets...2
Bachelor of Science [Computing Science & Information Systems] Programme Document
BACHELOR OF SCIENCE Programme Document School of Computing Sciences & Information Systems Faculty of Sciences (December, 2012) This programme document contains information about the Bachelor of Science
Programme Specification (Undergraduate) Date amended: 27 February 2012
Programme Specification (Undergraduate) Date amended: 27 February 2012 1. Programme Title(s) and UCAS code(s): BSc/BA/MMath Mathematics (Including year abroad) (G100/G102/G105) 2. Awarding body or institution:
Implementation of Recursively Enumerable Languages using Universal Turing Machine in JFLAP
International Journal of Information and Computation Technology. ISSN 0974-2239 Volume 4, Number 1 (2014), pp. 79-84 International Research Publications House http://www. irphouse.com /ijict.htm Implementation
A GENERAL CURRICULUM IN MATHEMATICS FOR COLLEGES W. L. DUREN, JR., Chairmnan, CUPM 1. A report to the Association. The Committee on the Undergraduate
A GENERAL CURRICULUM IN MATHEMATICS FOR COLLEGES W. L. DUREN, JR., Chairmnan, CUPM 1. A report to the Association. The Committee on the Undergraduate Program in Mathematics (CUPM) hereby presents to the
MATHEMATICS. Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences. Degree Requirements
MATHEMATICS Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences. Paul Feit, PhD Dr. Paul Feit is Professor of Mathematics and Coordinator for Mathematics.
Basic Parsing Algorithms Chart Parsing
Basic Parsing Algorithms Chart Parsing Seminar Recent Advances in Parsing Technology WS 2011/2012 Anna Schmidt Talk Outline Chart Parsing Basics Chart Parsing Algorithms Earley Algorithm CKY Algorithm
Functional Programming. Functional Programming Languages. Chapter 14. Introduction
Functional Programming Languages Chapter 14 Introduction Functional programming paradigm History Features and concepts Examples: Lisp ML 1 2 Functional Programming Functional Programming Languages The
Software Verification: Infinite-State Model Checking and Static Program
Software Verification: Infinite-State Model Checking and Static Program Analysis Dagstuhl Seminar 06081 February 19 24, 2006 Parosh Abdulla 1, Ahmed Bouajjani 2, and Markus Müller-Olm 3 1 Uppsala Universitet,
MATH ADVISEMENT GUIDE
MATH ADVISEMENT GUIDE Recommendations for math courses are based on your placement results, degree program and career interests. Placement score: MAT 001 or MAT 00 You must complete required mathematics
Data Science. BSc Hons
Data Science BSc Hons Data scientists are the magicians of the Big Data era. New York Times, 2013 By 2018, the United States alone could face a shortage of 140,000 to 190,000 people with deep analytical
2015-2016 North Dakota Advanced Placement (AP) Course Codes. Computer Science Education Course Code 23580 Advanced Placement Computer Science A
2015-2016 North Dakota Advanced Placement (AP) Course Codes Computer Science Education Course Course Name Code 23580 Advanced Placement Computer Science A 23581 Advanced Placement Computer Science AB English/Language
How To Complete The Danish Masters Program In Lct
European Masters Program in Language and Communication Technologies (LCT) Modules Handbook for Prospective Students European Masters Program in LCT - Modules Handbook Page ii Chapter 1 Study Program The
Application development = documentation processing
Application development = documentation processing Software is documented information about activities, that can be transformed into executable computer instructions performing the activities as documented.
School of Computer Science
School of Computer Science Computer Science - Honours Level - 2015/6 - August 2015 General degree students wishing to enter 3000- level modules and non- graduating students wishing to enter 3000- level
Five High Order Thinking Skills
Five High Order Introduction The high technology like computers and calculators has profoundly changed the world of mathematics education. It is not only what aspects of mathematics are essential for learning,
Turing Machines: An Introduction
CIT 596 Theory of Computation 1 We have seen several abstract models of computing devices: Deterministic Finite Automata, Nondeterministic Finite Automata, Nondeterministic Finite Automata with ɛ-transitions,
Finite Automata and Formal Languages
Finite Automata and Formal Languages TMV026/DIT321 LP4 2011 Ana Bove Lecture 1 March 21st 2011 Course Organisation Overview of the Course Overview of today s lecture: Course Organisation Level: This course
COURSE TITLE COURSE DESCRIPTION
COURSE TITLE COURSE DESCRIPTION CS-00X COMPUTING EXIT INTERVIEW All graduating students are required to meet with their department chairperson/program director to finalize requirements for degree completion.
Course Syllabus For Operations Management. Management Information Systems
For Operations Management and Management Information Systems Department School Year First Year First Year First Year Second year Second year Second year Third year Third year Third year Third year Third
Master of Science in Artificial Intelligence
Master of Science in Artificial Intelligence Options: Engineering and Computer Science (ECS) Speech and Language Technology (SLT) Big Data Analytics (BDA) Faculty of Engineering Science Faculty of Science
Theory of Automated Reasoning An Introduction. Antti-Juhani Kaijanaho
Theory of Automated Reasoning An Introduction Antti-Juhani Kaijanaho Intended as compulsory reading for the Spring 2004 course on Automated Reasononing at Department of Mathematical Information Technology,
English taught courses, summer term 2016 Bachelor level
taught courses, summer term 016 Faculty of Arts and Humanities Course of Study Title Type of course Lecture hours per week ECTS credits Studies (B.A.) Advanced Course B Studies (B.A.) Basic Course B Studies
Syntactic Theory. Background and Transformational Grammar. Dr. Dan Flickinger & PD Dr. Valia Kordoni
Syntactic Theory Background and Transformational Grammar Dr. Dan Flickinger & PD Dr. Valia Kordoni Department of Computational Linguistics Saarland University October 28, 2011 Early work on grammar There
Introducing Formal Methods. Software Engineering and Formal Methods
Introducing Formal Methods Formal Methods for Software Specification and Analysis: An Overview 1 Software Engineering and Formal Methods Every Software engineering methodology is based on a recommended
COMPUTER SCIENCE TRIPOS
CST.98.5.1 COMPUTER SCIENCE TRIPOS Part IB Wednesday 3 June 1998 1.30 to 4.30 Paper 5 Answer five questions. No more than two questions from any one section are to be answered. Submit the answers in five
Master of Science in Computer Science Information Systems
Master of Science in Computer Science Information Systems 1. General Admission Requirements. Admission to Graduate Studies (see graduate admission requirements). 2. Program Admission. In addition to meeting
