강좌 목록으로 돌아가기
MATH002 학부

이산 수학

수학 및 컴퓨터 과학 전공을 위한 이산 수학의 입문 과정입니다. 논리, 집합, 증명 기법, 알고리즘, 정수론, 조합론, 그래프 이론, 오토마타 등 기본적인 주제를 다룹니다. 본 과정은 컴퓨터 과학 고급 학습에 필요한 수학적 사고력과 문제 해결 능력을 강조합니다.

5.0
36.0h
1043 학생들
12 lessons
0 좋아요
수학
수강 시작하기

강좌 개요

📚 콘텐츠 요약

수학 및 컴퓨터 과학 전공자를 위한 이산수학의 기초 과정입니다. 논리, 집합, 증명 기법, 알고리즘, 수론, 조합론, 그래프 이론, 오토마타 등 핵심 주제를 다룹니다. 본 과정은 컴퓨터 과학 분야에서 고급 연구를 수행하기 위해 필요한 수학적 사고력과 문제 해결 능력을 강조합니다.

컴퓨터 과학의 기반을 이루는 논리와 구조를 마스터하세요.

저자: 리처드 존슨바그

감사의 말: 벤카타 디나바히, 매트웨이 엘시, 크리스토프 흐라우드-캐리어, 예브게니 브코체고프, 필릭스 메이슈, 타일러 맥밀런, 크리스토퍼 스톰, 도널드 베스타르, 광화 초우 등 검토자들. 피어슨 직원들의 지원: 다이드르 린치, 제프 위데나아르, 로렌 모어스 및 기타들.

🎯 학습 목표

  1. 차집합과 여집합 포함한 집합 연산을 수행하고, 벤 다이어그램과 정리 1.1.22를 사용하여 집합 식을 검증합니다.
  2. 부정, 논리합, 조건문을 포함하는 명제에 대한 진리표를 구성하고 평가합니다.
  3. 추론 규칙과 귀납적 사고를 적용하여 논리적 주장의 타당성을 판단합니다.
  4. 공리, 정의, 정리 등을 포함한 수학 시스템의 구성 요소를 정의하고 적용합니다.
  5. 대수학적 및 집합론적 명제에 대해 직접 증명, 모순을 통한 증명, 경우 나누기 증명을 구성합니다.
  6. 수학적 귀납법 원리와 강력한 귀납법을 활용하여 항등식, 약수 성질, 알고리즘의 정확성 등을 증명합니다.
  7. 함수(단사, 전사, 전단사)를 정의하고 분류하며, 합성과 역함수 연산을 수행합니다.
  8. 수열 표기법, 문자열 연결, 재귀 규칙을 활용하여 이산 데이터 세트를 모델링합니다.
  9. 방향 그래프와 행렬 표현을 사용하여 이항관계의 반사성, 대칭성, 추이성 등의 성질을 분석합니다.
  10. 알고리즘을 정의하고, 입력, 출력, 정밀성, 결정성, 유한성, 정확성, 일반성이라는 7개의 핵심 속성을 검증합니다.

수업

Lesson

This lesson introduces the fundamental principles of set theory, emphasizing that sets are unordered collections defined by their members rather than their sequence. It explores how set operations like union, intersection, and power sets function as the structural foundations for logical operators and deductive reasoning.

This lesson explores the anatomy of a mathematical system, explaining how undefined terms, axioms, definitions, and proofs form a logical hierarchy to establish truth. Students will learn how these foundational components prevent circular reasoning and serve as the basis for constructing theorems, lemmas, and corollaries.

This lesson explores the fundamental principles of mathematical mappings, defining functions as precise, deterministic relationships between domains and codomains. Students will learn to evaluate algorithmic correctness using loop invariants and apply discrete structures like sequences and relations to model computational data.

This lesson introduces the fundamental definition of an algorithm as a finite, deterministic, and general sequence of steps used to solve a specific class of problems. Students will learn to verify algorithmic logic through pseudocode and manual tracing while exploring mathematical concepts like divisibility that underpin effective problem-solving.

This lesson explores the transition from continuous calculus to discrete mathematics, highlighting how number theory and prime factorization provide the foundation for modern cryptographic systems like RSA. Students will learn to apply mathematical induction for algorithmic verification and master the mechanics of divisibility to understand the security of one-way "trapdoor" functions.

This lesson introduces the fundamental principles of counting, teaching students how to use the Addition Principle for mutually exclusive choices and the Multiplication Principle for successive, independent steps. By mastering these rules and techniques like complementary counting, students learn to efficiently determine the size of finite sets and solve complex combinatorial problems.

This lesson explores recurrence relations as a framework for modeling combinatorial sequences, such as Stirling and Catalan numbers, and analyzing the efficiency of algorithms like binary search and selection sort. Students will learn to solve linear homogeneous relations using characteristic equations and apply recursive modeling to complex problems like the Tower of Hanoi and derangements.

This lesson introduces the fundamentals of graph theory, defining graphs as sets of vertices and edges used to model complex networks and connectivity. Students will learn to identify graph types, analyze paths and subgraphs, and apply the Handshaking Lemma to solve structural problems.

This lesson introduces the fundamental concepts of tree structures in graph theory, covering the distinction between free and rooted trees and the hierarchical terminology used to describe them. Students will learn how these mathematical models serve as essential frameworks for organizing data and solving complex optimization problems in real-world applications.

This lesson introduces transport networks as directed, weighted graphs defined by a source with no incoming edges, a sink with no outgoing edges, and non-negative capacities on all edges. Students learn to distinguish between these structural capacity limits and the actual flow of commodities through a system.

This lesson explores combinatorial logic, defining it as a system where circuit outputs are determined solely by current inputs without the use of memory or feedback. Students learn to map Boolean algebraic expressions directly onto physical circuit topologies using structural induction, operator precedence, and efficient n-input gate designs.

This lesson introduces sequential logic by distinguishing it from memoryless combinatorial circuits through the use of unit time delays and feedback loops. Students will learn how these components enable the creation of finite-state machines, which allow systems to store information and base future outputs on past states.