Toán học rời rạc
Một khóa học giới thiệu về toán học rời rạc dành cho sinh viên chuyên ngành toán học và khoa học máy tính. Khóa học bao gồm các chủ đề cơ bản như logic, tập hợp, kỹ thuật chứng minh, thuật toán, lý thuyết số, tổ hợp, lý thuyết đồ thị và tự động hóa. Khóa học nhấn mạnh vào tư duy toán học và kỹ năng giải quyết vấn đề cần thiết cho việc học nâng cao trong lĩnh vực khoa học máy tính.
Tổng quan khóa học
📚 Tóm tắt Nội dung
Một khóa học giới thiệu về toán rời rạc dành cho sinh viên ngành Toán học và Khoa học máy tính. Khóa học bao gồm các chủ đề nền tảng như logic, tập hợp, kỹ thuật chứng minh, thuật toán, lý thuyết số, tổ hợp, lý thuyết đồ thị và tự động hóa. Khóa học nhấn mạnh khả năng suy luận toán học và kỹ năng giải quyết vấn đề cần thiết cho việc học nâng cao trong lĩnh vực khoa học máy tính.
Nắm vững logic và cấu trúc làm nền tảng cho khoa học máy tính.
Tác giả: Richard Johnsonbaugh
Lời cảm ơn: Các nhà đánh giá bao gồm Venkata Dinavahi, Matthew Elsey, Christophe Giraud-Carrier, Yevgeniy Kovchegov, Filix Maisch, Tyler McMillen, Christopher Storm, Donald Vestal, và Guanghua Zhao. Sự hỗ trợ từ đội ngũ Pearson: Deirdre Lynch, Jeff Weidenaar, Lauren Morse, và những người khác.
🎯 Mục tiêu Học tập
- Thực hiện các phép toán trên tập hợp, bao gồm hiệu và phần bù, và kiểm chứng các đẳng thức tập hợp bằng sơ đồ Venn và Định lý 1.1.22.
- Xây dựng và đánh giá bảng chân trị cho các mệnh đề liên quan đến phủ định, hội và mệnh đề điều kiện.
- Áp dụng các quy tắc suy luận và lập luận suy diễn để xác định tính hợp lệ của các lập luận logic.
- Định nghĩa và áp dụng các thành phần của một hệ thống toán học, bao gồm tiên đề, định nghĩa và định lý.
- Xây dựng các chứng minh trực tiếp, chứng minh phản chứng và chứng minh theo trường hợp đối với các mệnh đề đại số và tập hợp.
- Sử dụng Nguyên lý Quy nạp Toán học và Quy nạp mạnh để chứng minh các đẳng thức, tính chia hết và tính đúng đắn của thuật toán.
- Định nghĩa và phân loại hàm (đơn ánh, toàn ánh, song ánh) và thực hiện các thao tác như hợp thành và nghịch đảo.
- Áp dụng ký hiệu dãy số, nối chuỗi và quy tắc đệ quy để mô hình hóa các tập dữ liệu rời rạc.
- Phân tích quan hệ nhị phân về các tính chất như phản xạ, đối xứng và bắc cầu thông qua cả biểu đồ có hướng (digraphs) và biểu diễn ma trận.
- Định nghĩa một thuật toán và kiểm chứng bảy thuộc tính cốt lõi (Đầu vào, Đầu ra, Chính xác, Xác định, Hữu hạn, Đúng đắn, Tổng quát).
Bài học 共 12 课时 · 预计 36.0h
Bài học
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.