Lompat ke konten

Matematika Diskrit

Ilmu Komputer Universitas · Topik 2

Lembar Kerja

Apa kursus ini, dan bagaimana menggunakannya

Ini adalah kursus kedua di Ilmu Komputer Universitas: discrete matematika diskrit — matematika objek yang dapat Anda daftarkan: pernyataan, himpunan, grafik, hitungan. Ini adalah alat pembuktian di balik algoritma, basis data dan setiap klaim yang benar secara konstruksi dalam CS.

Batasan ruang lingkup, dinyatakan sekali: kursus studi, bukan gelar; setiap masalah asli dan mandiri, dan setiap pembuktian menyebutkan strateginya.

  • Unit 2.1–2.3 adalah mesin pembuktian: logika, himpunan, induksi.
  • Unit 2.4–2.6 adalah mesin kombinatorial: penghitungan, grafik, probabilitas diskrit.

Kebiasaan diskrit: sebutkan strategi sebelum pembuktian — langsung, kontraposisi, kontradiksi, induksi — dan setiap identitas adalah sesuatu yang dapat Anda verifikasi pada contoh kecil terlebih dahulu.

Logika dan pembuktian

Mengapa ini penting. Logika adalah sistem tipe pembuktian: terjemahkan klaim, periksa argumen, dan pilih bentuk pembuktian sebelum menulis baris.

Gagasan, dengan gambar. Proposisi terhubung melalui ¬, ∧, ∨, →, ↔; tabel kebenaran menentukan kebenaran setiap rumus atas variabelnya ✓. Tabel ekuivalensi kunci: $p \to q \equiv \neg p \lor q$; kontraposisi $p \to q \equiv \neg q \to \neg p$; De Morgan $\neg(p \land q) \equiv \neg p \lor \neg q$ ✓. Logika predikat menambahkan kuantor $\forall x\, P(x)$ dan $\exists x\, P(x)$, dengan negasi membalikkan masing-masing.

Tabel kebenaran dan pohon buktinya
Tabel memeriksa; struktur pohon — sebuah bukti adalah struktur data dari langkah-langkah yang dibenarkan

Turunan (mengapa tiga bentuk pembuktian). Untuk membuktikan $p \to q$: bukti langsung (asumsikan $p$, turunkan $q$); kontraposisi (buktikan $\neg q \to \neg p$ — berguna ketika negatif lebih mudah ditangani); kontradiksi (asumsikan $p \land \neg q$, turunkan hal yang mustahil) ✓. Setiap bentuk mengubah tujuan menjadi asumsi yang dapat Anda komputasikan — memilih bentuk adalah memilih data Anda.

Contoh terpecahkan 1 — penerjemahan. Klaim: setiap email memiliki tepat satu alamat: $\forall e\,\exists! a\,\text{Has}(e, a)$. Negasinya mendorong $\forall$ ke $\exists$ dan menegatkan apa yang mengikuti: ada email yang tidak memiliki alamat, atau memiliki dua atau lebih ✓. Satu email seperti itu membantah klaim tersebut. Terjemahkan, negasikan, baca ulang: kebiasaan tiga langkah.

Contoh terpecahkan 2 — strategi yang dinamakan. Klaim: jika $n^2$ genap maka $n$ genap. Strategi: kontraposisi (negasi lebih ramah). Bukti: asumsikan $n$ ganjil, sehingga $n = 2k+1$; kemudian $n^2 = 4k^2 + 4k + 1 = 2(2k^2 + 2k) + 1$, ganjil ✓ — kontraposisi terbukti, sehingga klaimnya.

Kesalahan umum. Membuktikan kebalikan dari apa yang diminta (arah penting: $p \to q$ bukan $q \to p$). Mendistribusikan negasi tanpa membalik penghubung (Hukum De Morgan mengubah ∧ menjadi ∨). Menulis contoh di mana bukti universal diperlukan — sebuah contoh hanyalah pengecekan, bukan bukti.

Ringkasan. Terjemahkan → pilih bentuk (langsung / kontraposisi / kontradiksi) → tulis langkah-langkah yang beralasan; $p \to q \equiv \neg p \lor q$; De Morgan membalik; negasi menukar $\forall/\exists$; tabel kebenaran memverifikasi, pohon pembuktian mengstrukturkan.

Himpunan, fungsi, dan relasi

Mengapa hal ini penting. Himpunan adalah model data dalam matematika diskrit; fungsi adalah pipa bertipe di antaranya; relasi membawa struktur yang mendasari database dan grafik yang dibangun darinya.

Ide dasar, dengan ilustrasi. Operasi: gabungan, irisan, selisih, komplemen; himpunan kuasa $\mathcal{P}(A)$ = semua subhimpunan, $|\mathcal{P}(A)| = 2^{|A|}$ ✓. Fungsi diklasifikasikan berdasarkan panahnya: injektif (tidak ada dua input memiliki output yang sama), surjektif (setiap output tercapai), bijektif (keduanya — pasangan sempurna) ✓. Komposisi $g \circ f$ menerapkan $f$ lalu $g$; bijeksi membalikkan.

Operasi himpunan, diagram panah dan sifat relasi
Panah mengklasifikasikan fungsi; matriks membaca sifat relasi secara sekilas

Turunan (mengapa bijeksi dapat digunakan untuk menghitung). Bijeksi memasangkan setiap elemen dari $A$ dengan tepat satu dari $B$, sehingga $|A| = |B|$ ketika ada — dan menemukan bijeksi ADALAH bukti penghitungan ✓. Itulah sebabnya jumlah subhimpunan dari himpunan $n$ berpasangan dengan string bit sepanjang $n$ (setiap elemen masuk atau tidak — satu bit per elemen), membuktikan $2^n$ tanpa perlu mendaftar ✓.

Contoh terarah 1 — klasifikasikan tiga diagram panah. $f: \mathbb{Z} \to \mathbb{Z}$ oleh $f(n) = 2n$: injektif (input berbeda → hasil berbeda, ganda) tidak surjektif (bilangan ganjil tidak tertuju) ✓; $g(n) = \lfloor n/2 \rfloor$: surjektif tidak injektif ✓; $h(n) = -n$: bijektif — inversnya sendiri ✓.

Contoh terpecahkan 2 — uji relasi. Pada $\{1,2,3\}$: $R = \{(1,1), (2,2),(3,3),(1,2),(2,1)\}$ — refleksif (semua loop), simetris (sisi datang berpasangan) dan transitif — rantai $(1,2),(2,1)$ mensyaratkan $(1,1)$ dan rantai $(2,1),(1,2)$ mensyaratkan $(2,2)$, keduanya hadir ✓. Jadi $R$ adalah relasi ekuivalensi dengan kelas $\{1,2\}$ dan $\{3\}$ — periksa setiap sifat terhadap definisi, bukan intuisi.

Kesalahan umum. Membingungkan $\in$ (anggota) dengan $\subseteq$ (himpunan bagian). Menulis $f \circ g$ untuk $g \circ f$ (komposisi dibaca dari kanan ke kiri). Menguji simetri dengan melihat satu pasangan alih-alih semua.

Ringkasan. Gabungan/irisan/selisih/komplemen; $|\mathcal{P}(A)| = 2^{|A|}$ (bijeksi dengan string bit); injektif/surjektif/bijektif oleh panah; komposisi dari kanan ke kiri; sifat relasi — refleksif, simetris, antisimetris, transitif — diuji berdasarkan definisi.

Induksi dan rekursi

Mengapa hal ini penting. Induksi adalah pembuktian kebenaran setiap perulangan dan setiap struktur data rekursif; rekursi adalah induksi yang berjalan terbalik.

Gagasan, dengan gambar. Untuk membuktikan $\forall n \ge n_0\; P(n)$: kasus dasar ($P(n_0)$) + langkah induktif (asumsikan $P(k)$ — hipotesis induksi — turunkan $P(k+1)$) ✓. Rekursi mendefinisikan $F$ oleh panggilan yang lebih kecil: faktorial $0! = 1$, $n! = n \cdot (n-1)!$ — tangga yang sama, dibangun alih-alih didaki.

Tangga induksi: kasus dasar, hipotesis, langkah
Kasus dasar menanamkan tangga; langkah mendaki satu anak tangga; setiap anak tangga di bawahnya adalah hipotesis

Penurunan (mengapa induksi valid). Langkah membuktikan bahwa jika anak tangga $k$ berlaku maka anak tangga $k+1$ berlaku; kasus dasar membuktikan anak tangga $n_0$; pengurutan memberikan setiap anak tangga hingga sebarang $n$ — induksi adalah modus ponens berulang ✓. Deteksi kesalahan: tidak ada kasus dasar (tangga di udara), hipotesis tidak dipanggil (langkah yang membuktikan apa-apa), atau langkah dari $k$ yang mengasumsikan lebih banyak daripada $P(k)$.

Contoh terpecahkan 1 — identitas penjumlahan. Klaim: $\sum_{i=1}^{n} i = \frac{n(n+1)}{2}$. Strategi: induksi. Kasus dasar $n=1$: $1 = \frac{1 \cdot 2}{2}$ ✓. Langkah: asumsikan $\sum_{i=1}^{k} i = \frac{k(k+1)}{2}$; lalu $\sum_{i=1}^{k+1} i = \frac{k(k+1)}{2} + (k+1) = \frac{(k+1)(k+2)}{2}$ ✓ — hipotesis digunakan, aljabar ditunjukkan, klaim tertutup.

Contoh terpecahkan 2 — bukti cacat tertangkap. Klaim bahwa semua kuda memiliki warna yang sama: basis benar secara trivial; langkah — kurangi satu kuda dari setiap sisi — gagal pada $k+1 = 2$ karena dua himpunan tumpang tindih tidak memiliki kuda ✓ — langkah harus berlaku untuk SETIAP $k$, termasuk yang terkecil; sebuah langkah yang diam-diam membutuhkan $k \ge 2$ tanpa basis $P(2)$ adalah kesalahan klasik. kesalahan.

Kesalahan umum. Mengabaikan basis — hipotesis ditambah langkah tidak membuktikan apa-apa tanpa landasan. Menggunakan $P(k+1)$ untuk membuktikan $P(k+1)$ (sirkuler). Induksi kuat dinyatakan tetapi langkah biasa ditulis — sebutkan mana dan lakukan yang.

Ringkasan. Basis + hipotesis + langkah, hipotesis disebut secara eksplisit; induksi kuat mengasumsikan semua anak tangga di bawahnya; rekursi = cermin induksi (didefinisikan ke bawah); kesalahan: basis hilang, hipotesis tidak terpakai, langkah valid hanya untuk $k$ yang besar.

Penghitungan dan kombinatorika

Mengapa ini penting. Penghitungan adalah aritmatika analisis kompleksitas: ukuran ruang keadaan, jumlah cabang, berapa banyak di balik setiap batas perulangan.

Ide, dengan gambar. Aturan penjumlahan: pilihan saling lepas ditambahkan; aturan perkalian: pilihan berurutan dikalikan ✓. Permutasi (terurut): $P(n, r) = \frac{n!}{(n-r)!}$; kombinasi (tidak terurut): $\binom{n}{r} = \frac{n!}{r!\,(n-r)!}$ ✓. Inklusi–Eksklusi: $|A \cup B| = |A| + |B| - |A \cap B|$ — tambahkan, lalu kurangi penghitungan ganda.

Pohon penghitungan untuk pemilihan berurutan dan tak berurutan
Pohon ini menampakkan aturan: cabang mengalikan, alternatif menambah, penghitungan ganda mengurangi

Turunan (mengapa rumus dibagi). Permutasi memilih dan mengatur: $n$ pilihan, lalu $n-1$, …, $r$ faktor — kalikan. Kombinasi mengidentifikasi susunan dari $r$ objek yang sama: setiap himpunan $r$ telah dihitung $r!$ kali sebagai susunan — bagi dengan $r!$ ✓. Pembagian adalah seluruh perbedaan antara pemilihan berurutan dan tak berurutan.

Contoh terpecahkan 1 — komite. Tim 3 dari 8 orang, dengan satu pemimpin yang ditunjuk: pilih tim $\binom{8}{3} = 56$, pilih pemimpin di antaranya 3 cara → $168$ ✓; atau pilih pemimpin terlebih dahulu (8) lalu 2 anggota dari 7 ($\binom{7}{2} = 21$) → $168$ — dua jalur penghitungan, satu jawaban, dan kesepakatan adalah pengecekan.

Contoh terpecahkan 2 — prinsip inkluksi-eksklusi dengan tiga himpunan. Di antara 100 siswa: 45 suka teh, 35 kopi, 30 cokelat; 12 suka teh∧kopi, 10 suka teh∧cokelat, 8 suka kopi∧cokelat; 5 ketiganya. Minimal satu: $45+35+30-12-10-8+5 = 85$ ✓ — tidak ada: $100 - 85 = 15$. Tambah tunggal, kurangi pasangan, tambahkan tripel: setiap elemen dihitung tepat sekali.

Kesalahan umum. Menambahkan di mana pilihan bersifat berurutan (jalur × kendaraan dikalikan). Menggunakan permutasi di mana urutan tidak relevan (komite adalah kombinasi). Menerapkan prinsip inklusi-eksklusi dua himpunan untuk tiga himpunan (triplet kembali dengan tanda plus).

Ringkasan. Himpunan saling lepas → tambahkan; berurutan → kalikan; $P(n,r)$ terurut, $\binom{n}{r} = P/r!$ tidak terurut; inklusi-eksklusi: + tunggal − pasangan

  • triplet; hitung dengan dua cara dan bandingkan — cek jumlah kombinatorika.

Graf dan pohon

Mengapa ini penting. Graf adalah model universal — jaringan, keadaan, ketergantungan; pohon adalah mesin utama pencarian dan penyimpanan; dan lemma guncangan tangan adalah identitas wajib pertama dalam kursus.

Ide, dengan gambar. $G = (V, E)$; representasi: matriks ketetanggaan matriks (ruang $n^2$, uji sisi $O(1)$), daftar ketetanggaan ($O(|V|+|E|)$) ✓. Pohon: terhubung, tanpa siklus, $|E| = |V| - 1$ ✓. Penelusuran: (tumpukan/rekursi, penemuan komponen). (tumpukan/rekurensi, penemuan komponen).

Graf eksplisit kecil dengan struktur ketetanggaan
Tiga representasi graf yang sama — matriks, daftar, gambar — dan jumlah derajat dicek melalui jabat tangan

Turunan (mengapa jabat tangan harus berlaku). Setiap sisi menyumbang 1 titik berderajat ganjil adalah genap; graf di mana semua 2 jumlah derajat: $\sum_{v} \deg(v) = 2|E|$ ✓ — implikasi langsung: jumlah verteks berderajat ganjil adalah genap; graf di mana semua $n \ge 2$ graf dengan derajat simpul berbeda tidak dapat ada (derajat $0..n-1$ tetapi 0 dan $n-1$ tidak dapat berdampingan) ✓.

Contoh terpecahkan 1 — pemilihan model. (Soal desain) pertemanan sosial (tak berarah, daftar ketetanggaan — jarang), ketergantungan tugas (berarah tak bersiklus, matriks jika kecil — uji siklus), metro kota (terbobot, antrean Dijkstra — di luar cakupan, disebut demikian) ✓ — simetri soal menentukan graf, kepadatan menentukan representasinya. representasi.

Contoh terarah 2 — aritmatika pohon. Sebuah pohon memiliki 12 titik sudut di mana 5 adalah daun (derajat 1): dengan $|E| = 11$ dan lempeng tangan, internal 7 titik sudut membawa jumlah derajat $22 - 5 = 17$ ✓ — setiap soal pohon adalah perjalanan melalui $|E| = |V| - 1$ ditambah $\sum \deg = 2|E|$.

Kesalahan umum. Melupakan penghitungan derajat 0 (titik sudut terisolasi adalah Menggagas BFS memberikan jalur terpendek pada graf berbobot (tidak — hal itu memerlukan metode berbobot). yang memerlukan metode berbobot).

tak bersiklus + $G = (V,E)$; urutan tingkat BFS / urutan komponen DFS; $|E| = |V|-1$, jumlah derajat ganjil genap; pilih model dari $\sum \deg = 2|E|$, jumlah derajat ganjil genap; pilih model dari simetri masalah.

Probabilitas diskrit

Mengapa ini penting. Algoritma acak, analisis kasus rata-rata, dan pencitraan (hashing) semuanya berjalan berdasarkan probabilitas diskrit yang presisi — penghitungan yang sama dari 2.4, sekarang pada kemungkinan yang sama besar.

Gagasan, dengan gambar. Sebuah ruang sampel $\Omega$ dari hasil-hasil yang memiliki peluang setara; kejadian adalah himpunan bagian; $P(E) = |E|/|\Omega|$ ✓. Probabilitas bersyarat $P(A \mid B) = \frac{P(A \cap B)}{P(B)}$; Teorema Bayes $P(A \mid B) = \frac{P(B \mid A) P(A)} {P(B)}$ ✓; independensi $P(A \cap B) = P(A)P(B)$.

Pohon hasil dengan percabangan bersyarat
Pohon menunjukkan apa yang dihapus oleh kondisi: P(A|B) berada pada cabang B, dinormalisasi

Penurunan rumus (mengapa kondisi mempersempit dunia). Kondisi pada $B$ hanya mempertahankan hasil-$B$ dan menormalisasi bobotnya agar menjumlahkan ke 1 — pecahan dari dunia $B$ di mana $A$ juga berlaku ✓. Itu adalah seluruh pembilang/penyebut Bayes: $P(B \mid A)P(A)$ mengukur ukuran potongan $A \cap B$; $P(B)$ menskalakan ulang ke dunia $B$.

Contoh terpecahkan 1 — dadu dengan menghitung. Dua dadu adil: $\Omega$ memiliki 36 pasangan. $P(\text{sum} = 7) = 6/36 = 1/6$ (enam pasangan); $P(\text{sum} = 11) = 2/36$ ✓; $P(\text{sum} = 7 \text{ or } 11) = 8/36 = 2/9$ — penghitungan dari 2.4 melakukan seluruh pekerjaan.

Contoh terpecahkan 2 — Bayes pada tes medis. Suatu penyakit menyerang 1 %; sebuah tes memiliki sensitivitas 90 % dan spesifisitas 90 %. $P(\text{dis} \mid +) = \frac{0.9 \times 0.01}{0.9 \times 0.01 + 0.1 \times 0.99} = \frac{0.009} {0.108} = 1/12 \approx 8.3\ \%$ ✓ — aritmatika yang sama dengan MED12 §4, diturunkan di sini dari pohon: kondisi langka tetap tidak mungkin setelah bukti tidak sempurna.

Kesalahan umum. Menambahkan probabilitas bersyarat seolah-olah saling bebas (dunia pengkondisian harus merupakan satu dunia). Membingungkan $P(A \mid B)$ dengan $P(B \mid A)$ (kesalahan jaksa). Menghitung hasil dari kemungkinan berbeda sebagai sama (hanya hasil yang memiliki kemungkinan sama yang memberikan $|E|/|\Omega|$).

Ringkasan. $P = |E|/|\Omega|$ pada hasil yang memiliki kemungkinan sama; $P(A \mid B) = P(A \cap B)/P(B)$ — cabang-B dinormalisasi; Bayes menyesuaikan skala irisan antar dunia; independensi mengalikan; dadu, kartu dan tabel hash semuanya adalah masalah penghitungan di baliknya.

Kosa kata
English Bahasa Indonesia
discrete mathematics matematika diskrit
truth table/truːθ ˈteɪbl/ Tabel Kebenaran
predicate logic Logika Predikat
direct proof Bukti Langsung
contraposition Kontraposisi
contradiction/ˌkɒntrəˈdɪkʃn/ kontradiksi
power set himpunan kuasa
injective/ɪnˈdʒektɪv/ injektif
surjective/sɜːˈdʒektɪv/ surjektif
bijective bijektif
equivalence relation/ɪˈkwɪvələns rɪˈleɪʃn/ relasi ekuivalen
base case/beɪs keɪs/ kasus dasar
inductive step/ɪnˈdʌktɪv step/ langkah induksi
induction hypothesis hipotesis induksi
addition rule/əˈdɪʃn ruːl/ aturan penjumlahan
multiplication rule/ˌmʌltɪplɪˈkeɪʃn ruːl/ aturan perkalian
permutation/ˌpɜːmjuːˈteɪʃn/ permutasi
combination/ˌkɒmbɪˈneɪʃn/ kombinasi
inclusion–exclusion prinsip inkluksi–eksklusi
handshake lemma lemma jabat tangan
adjacency matrix matriks ketetanggaan
adjacency list/əˈdʒeɪsənsi lɪst/ daftar ketetanggaan
tree/triː/ pohon
BFS pencarian广度优先 (BFS)
DFS pencarian深度优先 (DFS)
sample space/ˈsæmpl speɪs/ ruang sampel
conditional probability/kənˈdɪʃənl ˌprɒbəˈbɪlɪti/ probabilitas bersyarat
Bayes' theorem teorema Bayes

Pelajaran interaktif untuk topik ini

Kerjakan langkah demi langkah, dengan latihan pengecekan instan.

Topik lain dalam Ilmu Komputer Universitas

Masuk atau buat akun

IGCSE, A-Level & AP