# CS202: Discrete Structures

## Description

Great thinkers have studied logic since the time of the Greek philosopher Aristotle; its rules serve as the basis for the study of every branch of knowledge − including (and perhaps especially) computer science. Logic is an abstraction and formalization of reasoning we use every day, in mathematics, science, and, in particular, computer science. Logic deals with logical systems consisting of symbols that represent statements that are either true or false, definitions of operations for combining statements (for example, addition is an operation in arithmetic for combining numbers), rules for manipulating statement and operator symbols, and rules for inferring new statements from given statements. In Unit 1 and Unit 2, we will study two logical systems: the propositional calculus and the first order predicate calculus.

The following guidance will help you get started in our study of logic in discrete structures. The definitions and rules are called axioms or postulates (we use these terms synonymously). We use axioms and known true statements to prove the truth or falseness of theorems. A theorem is a statement that has a hypothesis (assumptions) and a conclusion. Much of our work will involve proving theorems. You may notice that several different notations are used in logic, depending on the author, text, or reference. In this course, we use several different notations so that you are introduced to these differences.

Logic is an extensive field of study and selected topics are included in discrete structures. These topics vary depending on the institution or school, course, instructor, and text. To expose you to some of the variation, we use two main resources, as well as include supplementary resources and our own original content. In this unit, we will examine various rules of logic (i.e. negations, conjunctions, and disjunctions) in order to determine how they can create conditional statements, arguments, and rules but also prove the truthfulness or falseness of any argument, whether presented in mathematical terms or in everyday language.

Note: Discrete structures is the term used for discrete mathematics for computer science. Discrete mathematics is often referred to as finite mathematics. Completing this unit should take you approximately 9 hours.

## More Ways to Learn Computer Science

### Quantitative Formal Modeling and Worst-Case Performance Analysis

College | Online class

Welcome to Quantitative Formal Modeling and Worst-Case Performance Analysis. In this course, you will learn about modeling and solving performance problems in a fashion popular in theoretical...

Free

### Text Retrieval and Search Engines

College | Online class

Recent years have seen a dramatic growth of natural language text data, including web pages, news articles, scientific literature, emails, enterprise documents, and social media such as blog...

Free

### Introduction to Programming for the Visual Arts with p5.js

High School - College | Online class

This course is an introduction to writing code within the context of the visual arts. It asks two primary questions: What is the potential of software within the visual arts?As a designer or...

Free

### CS102: Introduction to Computer Science II

College | Online class

This course is a continuation of the first-semester course, CS101: Introduction to Computer Science I. It will introduce you to a number of more advanced Computer Science topics, laying a strong...

Free

### Computer science

7th - College | Online class

Learn select topics from computer science – algorithms (how we solve common problems in computer science and measure the efficiency of our solutions), cryptography (how we protect secret...

Free

### Minecraft

4th - College | Android App, Game, iPhone/iPad App, Mac Software, PlayStation Game, Website, Windows Software, Xbox Game

Experience the gaming phenomenon “Minecraft”, rebuilt for Xbox 360! Create worlds limited only by your imagination. Explore, build, and conquer alone or with your friends via split-screen mode or...

1
\$30

### CS (Computer Science) First

4th - 8th | Online resource

Each Computer Science First club is based on a real-world theme and offers about 10 hours worth of lessons and activities. The different club themes aim to attract and engage students of varying...

Free

### Prepare for Advanced Computer Science Courses

High School - College | Online class

This Specialization covers much of the material that first-year Computer Science students take at Rice University. Students learn sophisticated programming skills in Python from the ground up and...

\$79

### Principles of Computing (Part 1)

High School - College | Online class

This two-part course builds upon the programming skills that you learned in our Introduction to Interactive Programming in Python course. We will augment those skills with both important...

Free

### Introduction to Computer Science

7th - College | Online class

This is CS50x, Harvard University’s introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming...

Free

### Introduction to Computer Science and Programming Using Python

High School - College | Online class

This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are...

Free

### CodeHS

6th - High School | Online resource

Beginner Friendly Learning to code can be intimidating! CodeHS introduces the building blocks of programming with short videos, example code, and lots of programming exercises that make coding fun...

\$75 monthly

### Meet the professional

High School - College | Online class

What can you do with computer science and programming skills once you’ve learned them? We’ve invited people from all around the world and the industry to introduce themselves to you. Find out how...

Free

### Principles of Computing (Part 2)

High School - College | Online class

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating...

### Express Course (2018)

4th - High School | Online class

Learn the basics of computer science and internet safety. At the end of the course, create your very own game or story you can share.

Free

Pre-K - 3rd | Online class

Learn the basics of computer science and internet safety. At the end of the course, create your very own game or story you can share.  A sequence of 16 lessons appropriate for kids who either...

Free

### Stone River eLearning

7th - College | Online class

Stone River eLearning was founded in 2011, and since then we have taught over 1,000,000 students through our website and through our reseller partners. Our focus is on developing high quality video...

\$29 monthly

### CS101: Introduction to Computer Science I

College | Online class

This course will introduce you to the field of computer science and the fundamentals of computer programming. Introduction to Computer Science I is specifically designed for students with no prior...

Free

### CS301: Computer Architecture

High School - College | Online class

Modern computer technology requires an understanding of both hardware and software, as the interaction between the two offers a framework for mastering the fundamentals of computing. The purpose of...

Free

### Computing Form and Shape: Python Programming with the Rhinoscript Library

High School - College | Online class

This course explores the role of computation in the conception and representation of shape and form. With a recognition that artists, architects and designers learn best when creating new work,...

Free