This chapter provides a self-contained introduction to a collection of topics in computer science that focusses on the abstract, logical, and mathematical aspects of computing. First, mathematical structures called graphs are described that are used to model pairwise relations between objects from a certain collection. Second, abstract machines with a finite number of states called finite state automata are detailed. Third, mathematical models of computation are studied and their relationships to formal grammars are explained. Fourth, combinatorial logic is introduced, which describes logic circuits whose output is a pure function of the present input only. Finally, the degrees of complexity to solve a problem on a computer are outlined.
KeywordsBoolean Function Cellular Automaton Turing Machine Regular Expression Steiner Tree
Unable to display preview. Download preview PDF.
- 1.Cook S (1971) The complexity of theorem-proving procedures. Proc 3rd Ann ACM Symp Theor Comp 151–158Google Scholar
- 4.Hopcraft E, Motwani R, Ullman JD (2007) Automata theory, languages, and computation. Addison Wesley, BostonGoogle Scholar
- 5.Mendelson E (1970) Schaum’s outline of theory and problems of Boolean algebra and switching circuits. McGraw-Hill, LondonGoogle Scholar
- 6.Schönig U (1997) Theoretische Informatik – kurzgefasst. Spektrum, Heidelberg BerlinGoogle Scholar
- 7.Turing AM (1937) On computable numbers, with an application to the Entscheidungsproblem. Proc London Math Soc Ser 42:230–265Google Scholar
- 8.Wang H (1961) Proving theorems by pattern recognition II. Bell Syst Tech J 40:1–41Google Scholar
- 9.Wolfram S (1983) Theory and application of cellular automata. Addison Wesley, Reading, MAGoogle Scholar