## Mathematical Thinking in Computer Science

Start Date: 07/05/2020

 Course Type: Common Course

Explore 1600+ online courses from top universities. Join Coursera today to learn data science, programming, business strategy, and more. Mathematical thinking is crucial in all areas of computer science: algorithms, bioinformatics, computer graphics, data science, machine learning, etc. In this course, we will learn the most important tools used in discrete mathematics: induction, recursion, logic, invariants, examples, optimality. We will use these tools to answer typical programming questions like: How can we be certain a solution exists? Am I sure my program computes the optimal answer? Do each of these objects meet the given requirements? In the course, we use a try-this-before-we-explain-everything approach: you will be solving many interactive (and mobile friendly) puzzles that were carefully designed to allow you to invent many of the important ideas and concepts yourself. Prerequisites: 1. We assume only basic math (e.g., we expect you to know what is a square or how to add fractions), common sense and curiosity. 2. Basic programming knowledge is necessary as some quizzes require programming in Python. Do you have technical problems? Write to us: coursera@hse.ru

#### Course Syllabus

Why some arguments are convincing and some are not? What makes an argument convincing? How to establish your argument in such a way that there is no possible room for doubt left? How mathematical thinking can help with this? In this week we will start digging into these questions. We will see how a small remark or a simple observation can turn a seemingly non-trivial question into an obvious one. Through various examples we will observe a parallel between constructing a rigorous argument and mathematical reasoning. #### Course Introduction

Mathematical Thinking in Computer Science Mathematical thinking is important! It is often the case that people (students in science classes) have no real background in math, and it can be very frustrating. This course will provide an introduction to mathematical modeling in the context of computer science. We will introduce a number of models, and we will discuss how these models interact with each other, for example, in terms of graph theory. We will then focus on the use of formal notation in computing, and discuss key concepts like equality, composite, and partial derivatives. We will then move into more advanced topics including automorphisms, extremes, and general purpose limitations, and the equivalences between numeric and logical models. This is a very basic course, and it is intended to be fun and easy. We hope you will take some notes (some computer science is hard!). If you are looking for general purpose thinking in computer science, or if you just want to brush up on your skills, this is a great course to start with! Course Overview video: https://youtu.be/mIIyLVNlbrTE The videos in this and the previous course (Mathematical Modeling in C) are the same video as in lecture 1.1, but with more diagrams and pictures. The text is the same, just formatted differently. Links are still available at the end of each lesson, but they are in a much shorter format

#### Course Tag

Mathematical Induction Proof Theory Discrete Mathematics Mathematical Logic

#### Related Wiki Topic

Article Example
Computer science Computer science is considered by some to have a much closer relationship with mathematics than many scientific disciplines, with some observers saying that computing is a mathematical science. Early computer science was strongly influenced by the work of mathematicians such as Kurt Gödel and Alan Turing, and there continues to be a useful interchange of ideas between the two fields in areas such as mathematical logic, category theory, domain theory, and algebra.
AP Computer Science AP Computer Science Principles is an introductory course to computer science, "with a focus on how computing powers the world". It is designed as a parallel to AP Computer Science A, to will emphasize computational thinking and fluency. It is meant to be the equivalent of a first-semester course in computer science.
Bachelor of Computer Science The Bachelor of Computer Science or Bachelor of Science in Computer Science (abbreviated BCompSc or BCS or BS CS) is a type of bachelor's degree, usually awarded after three or four years of collegiate study in computer science, but possibly awarded in fewer years depending on factors such as an institution's course requirements and academic calendar. In some cases it can be awarded in five years. In general, computer science degree programs emphasize the mathematical and theoretical foundations of computing.
Computer science The academic, political, and funding aspects of computer science tend to depend on whether a department formed with a mathematical emphasis or with an engineering emphasis. Computer science departments with a mathematics emphasis and with a numerical orientation consider alignment with computational science. Both types of departments tend to make efforts to bridge the field educationally if not across all research.
Computer science During the 1940s, as new and more powerful computing machines were developed, the term "computer" came to refer to the machines rather than their human predecessors. As it became clear that computers could be used for more than just mathematical calculations, the field of computer science broadened to study computation in general. Computer science began to be established as a distinct academic discipline in the 1950s and early 1960s. The world's first computer science degree program, the Cambridge Diploma in Computer Science, began at the University of Cambridge Computer Laboratory in 1953. The first computer science degree program in the United States was formed at Purdue University in 1962. Since practical computers became available, many applications of computing have become distinct areas of study in their own rights.
Symposium on Logic in Computer Science The ACM–IEEE Symposium on Logic in Computer Science (LICS) is an annual academic conference on the theory and practice of computer science in relation to mathematical logic. Extended versions of selected papers of each year's conference appear in renowned international journals such as Logical Methods in Computer Science and ACM Transactions on Computational Logic.
Theoretical computer science Theoretical computer science, or TCS, is a division or subset of general computer science and mathematics that focuses on more abstract or mathematical aspects of computing and includes the theory of computation.
Computer science in sport Computer science in sport is an interdisciplinary discipline that has its goal in combining the theoretical as well as practical aspects and methods of the areas of informatics and sport science. The main emphasis of the interdisciplinarity is placed on the application and use of computer-based but also mathematical techniques in sport science, aiming in this way at the support and advancement of theory and practice in sports. The reason why computer science has become an important partner for sport science is mainly connected with "the fact that the use of data and media, the design of models, the analysis of systems etc. increasingly requires the support of suitable tools and concepts which are developed and available in computer science".
History of computer science The history of computer science began long before the modern discipline of computer science that emerged in the 20th century, and was hinted at in the centuries prior. The progression, from mechanical inventions and mathematical theories towards modern computer concepts and machines, led to a major academic field and the basis of a massive worldwide industry.
University of Maryland Department of Computer Science The Department of Computer Science at the University of Maryland, College Park is a computer science department established in 1973. It is part of the University's College of Computer, Mathematical, and Natural Sciences.
Mathematical psychology During the war, developments in engineering, mathematical logic and computability theory, computer science and mathematics, and the military need to understand human performance and limitations, brought together experimental psychologists, mathematicians, engineers, physicists, and economists. Out of this mix of different disciplines mathematical psychology arose. Especially the developments in signal processing, information theory, linear systems and filter theory, game theory, stochastic processes and mathematical logic gained a large influence on psychological thinking.
Computer science Applied computer science aims at identifying certain computer science concepts that can be used directly in solving real world problems.
Dept. of Computer Science, University of Delhi The Department of Computer Science, University of Delhi is a department in the University of Delhi under the Faculty of Mathematical Science, set up in 1981.
Mathematical logic Mathematical logic is often divided into the fields of set theory, model theory, recursion theory, and proof theory. These areas share basic results on logic, particularly first-order logic, and definability. In computer science (particularly in the ACM Classification) mathematical logic encompasses additional topics not detailed in this article; see Logic in computer science for those.
Computer science in sport The importance and strong influence of computer science as an interdisciplinary partner for sport and sport science is mainly proven by the research activities in computer science in sport. The following IT concepts are thereby of particular interest:
Logic in computer science Logic in computer science covers the overlap between the field of logic and that of computer science. The topic can essentially be divided into three main areas:
Theoretical computer science Modern theoretical computer science research is based on these basic developments, but includes many other mathematical and interdisciplinary problems that have been posed.
Mathematical optimization In mathematics, computer science and operations research, mathematical optimization, also spelled mathematical optimisation (alternatively named mathematical programming or simply optimization or optimisation), is the selection of a best element (with regard to some criterion) from some set of available alternatives.
Computer science Since computer science is a relatively new field, it is not as widely taught in schools and universities as other academic subjects. For example, in 2014, Code.org estimated that only 10 percent of high schools in the United States offered computer science education. A 2010 report by Association for Computing Machinery (ACM) and Computer Science Teachers Association (CSTA) revealed that only 14 out of 50 states have adopted significant education standards for high school computer science. However, computer science education is growing. Some countries, such as Israel, New Zealand and South Korea, have already included computer science in their respective national secondary education curriculum. Several countries are following suit.
Computer science In most countries, there is a significant gender gap in computer science education. For example, in the US about 20% of computer science degrees in 2012 were conferred to women. This gender gap also exists in other Western countries. However, in some parts of the world, the gap is small or nonexistent. In 2011, approximately half of all computer science degrees in Malaysia were conferred to women. In 2001, women made up 54.5% of computer science graduates in Guyana.