Công thức tính kích thước của hợp các tập hợp, hiệu chỉnh cho các phần bị đếm lặp.
Trực giácÝ tưởng: hợp lớn bao nhiêu khi các phần chồng lấn nhau?
Nếu một lớp học có học sinh thích toán và học sinh thích mỹ thuật, việc chỉ cộng "thích toán" với "thích mỹ thuật" sẽ đếm hai lần mỗi học sinh thích cả hai. Để có số học sinh thực sự thích ít nhất một môn, phải trừ đi phần chồng lấn một lần: đó chính là toàn bộ ý tưởng của nguyên lý bao hàm và loại trừ, và nó tổng quát hóa gọn gàng từ hai tập hợp lên bất kỳ số tập hợp nào.
Sơ đồ mạng của ba tập hợp chồng lấn cho thấy giao đôi và giao ba dùng trong nguyên lý bao hàm và loại trừ.
Ba tập hợp giao nhau A,B,C: để đếm ∣A∪B∪C∣, lấy tổng ba hình tròn, trừ đi ba phần giao đôi một, rồi cộng lại phần giao chung của cả ba ở giữa.
Phổ thôngHai và ba tập hợp
∣A∪B∣=∣A∣+∣B∣−∣A∩B∣
Ở đây ∣A∣ ký hiệu số phần tử của một tập hữu hạn A; A∪B là tập các phần tử thuộc A hoặc B (hoặc cả hai), và A∩B là tập các phần tử thuộc cả hai. Trừ đi ∣A∩B∣ sẽ loại bỏ việc đếm hai lần các phần tử thuộc cả hai tập.
Mỗi phần tử của A∪B rơi vào đúng một trong ba nhóm rời nhau: chỉ thuộc A, chỉ thuộc B, hoặc thuộc cả hai; cộng ∣A∣+∣B∣ đếm nhóm "cả hai" hai lần, nên phải bỏ bớt một lần.
Chứng minh
Chia A∪B thành ba phần rời nhau đôi một: A∖B (chỉ thuộc A), B∖A (chỉ thuộc B), và A∩B (thuộc cả hai). Vì các phần này rời nhau và phủ kín A∪B, nên ∣A∪B∣=∣A∖B∣+∣B∖A∣+∣A∩B∣.
Bây giờ để ý rằng A tự nó chia thành hai phần rời nhau A∖B và A∩B, nên ∣A∣=∣A∖B∣+∣A∩B∣, tức ∣A∖B∣=∣A∣−∣A∩B∣. Tương tự, ∣B∖A∣=∣B∣−∣A∩B∣.
Thay hai biểu thức này vào phương trình đầu, ta được ∣A∪B∣=(∣A∣−∣A∩B∣)+(∣B∣−∣A∩B∣)+∣A∩B∣=∣A∣+∣B∣−∣A∩B∣, chính là ∣A∪B∣=∣A∣+∣B∣−∣A∩B∣.
Với các tập hữu hạn A1,…,An: ∣⋃i=1nAi∣=∑k=1n(−1)k+1∑1≤i1<⋯<ik≤n∣Ai1∩⋯∩Aik∣
Vì sao đúng?
Mỗi phần tử thuộc nhiều tập sẽ được cộng một lần cho mỗi tập đơn, trừ một lần cho mỗi cặp, cộng lại cho mỗi bộ ba, và cứ thế; mẫu dấu xen kẽ chính là điều cần thiết để đưa tổng đếm của nó về đúng 1.
Chứng minh
Cố định một phần tử bất kỳ x. Nếu x không thuộc tập nào trong A1,…,An, nó đóng góp 0 cho cả hai vế, nên giả sử x thuộc đúng m≥1 tập.
Với mỗi k, số giao k tập Ai1∩⋯∩Aik chứa x bằng số cách chọn k trong m tập chứa x, tức là (km). Vậy tổng đóng góp của x vào vế phải là ∑k=1n(−1)k+1(km)=∑k=1m(−1)k+1(km) (các số hạng với k>m triệt tiêu vì (km)=0).
Theo định lý nhị thức, ∑k=0m(−1)k(km)=(1−1)m=0, nên ∑k=1m(−1)k(km)=−1, nhân với −1 cho đúng ∑k=1m(−1)k+1(km)=1.
Vậy mọi phần tử thuộc ít nhất một tập đóng góp đúng 1 vào vế phải, khớp với đóng góp 1 của nó vào ∣⋃i=1nAi∣; phần tử không thuộc tập nào đóng góp 0 cho cả hai vế. Vì mọi phần tử đóng góp như nhau cho cả hai vế, hai vế bằng nhau.
Định nghĩa: Hoán vị không điểm cố định (giai thừa lệch)
Một hoán vị không điểm cố định của n vật là một hoán vị mà không vật nào giữ nguyên vị trí ban đầu. Gọi Ai là tập các hoán vị của n vật giữ nguyên vị trí i (vật i đứng yên); khi đó số hoán vị không điểm cố định là Dn=n!−∣⋃i=1nAi∣, tức các hoán vị còn lại sau khi bỏ đi mọi hoán vị giữ nguyên ít nhất một vị trí.
Dn=n!k=0∑nk!(−1)k
Áp dụng công thức tổng quát cho các tập này, ∣Ai1∩⋯∩Aik∣=(n−k)! (các vật còn lại n−k có thể sắp xếp tự do), nên tổng bao hàm và loại trừ có (kn) số hạng giống hệt nhau kích thước (n−k)! ở mỗi mức k, rút gọn thành Dn=n!∑k=0nk!(−1)k sau khi chia cho n! và phân tích — khối định lý thứ hai trên trang này chứng minh đầy đủ trường hợp tổng quát.
Đại họcỨng dụng thực tiễn và ví dụ minh họa
Bao hàm và loại trừ là công cụ thường dùng trong khoa học máy tính (loại bỏ các trường hợp không mong muốn khi đếm), lý thuyết số (đếm bội số), và kỹ thuật độ tin cậy (kết hợp các sự kiện hỏng hóc chồng lấn), bất cứ khi nào cần đếm chính xác "ít nhất một trong nhiều điều kiện đúng".
Ví dụ: Đếm bội số bằng phép sàng
Một lập trình viên cần đếm có bao nhiêu số nguyên từ 1 đến 100 chia hết cho 2, 3 hoặc 5 — cùng ý tưởng sàng lọc dùng để tính trước số nguyên tố hay lọc khóa hợp lệ trong mã hóa.
Lời giải
Gọi A là bội của 2, B là bội của 3, C là bội của 5 trong {1,…,100}. Đếm bội số đến 100 bằng phép chia: ∣A∣=50, ∣B∣=33, ∣C∣=20.
Giao đôi là bội của tích: ∣A∩B∣=⌊100/6⌋=16, ∣A∩C∣=⌊100/10⌋=10, ∣B∩C∣=⌊100/15⌋=6.
Giao ba là bội của 30: ∣A∩B∩C∣=⌊100/30⌋=3.
Theo công thức ba tập, ∣A∪B∪C∣=50+33+20−16−10−6+3=74, vậy 74 trong 100 số nguyên đầu tiên chia hết cho 2, 3 hoặc 5, và phép sàng tránh việc liệt kê từng số một.
Ví dụ: Các phân hệ vệ tinh dự phòng
Một vệ tinh có ba phân hệ A, B, C với xác suất hỏng trong một năm độc lập P(A)=0.02, P(B)=0.03, P(C)=0.01, nhưng các linh kiện dùng chung khiến một số cặp hỏng hóc tương quan: P(A∩B)=0.004, P(A∩C)=0.001, P(B∩C)=0.0006, và P(A∩B∩C)=0.0002. Một kỹ sư độ tin cậy cần xác suất ít nhất một phân hệ hỏng, để quyết định có cần thêm dự phòng hay không.
Lời giải
Xác suất hoạt động giống tỉ lệ của một tập thể, nên công thức ba tập vẫn áp dụng: P(A∪B∪C)=P(A)+P(B)+P(C)−P(A∩B)−P(A∩C)−P(B∩C)+P(A∩B∩C).
Thay các giá trị đã cho: P(A∪B∪C)=0.02+0.03+0.01−0.004−0.001−0.0006+0.0002.
Cộng các số hạng đơn lẻ được 0.06, trừ các số hạng đôi được 0.06−0.0056=0.0544, và cộng lại phần giao ba được 0.0544+0.0002=0.0546.
Vậy có khoảng 5.46% khả năng ít nhất một phân hệ hỏng trong một năm; nếu không hiệu chỉnh cho các hỏng hóc tương quan (tức chỉ cộng 0.02+0.03+0.01=0.06), kỹ sư sẽ đánh giá rủi ro cao hơn thực tế và có thể thiết kế dự phòng thừa.
Nếu ∣A∣=10, ∣B∣=7, và ∣A∩B∣=3, thì ∣A∪B∣ bằng bao nhiêu?
Cho ∣A∣=30, ∣B∣=20, ∣C∣=15, ∣A∩B∣=10, ∣A∩C∣=8, ∣B∩C∣=5, ∣A∩B∩C∣=3, thì ∣A∪B∪C∣ bằng bao nhiêu?
Có bao nhiêu cách bỏ 4 lá thư vào 4 phong bì đã ghi địa chỉ sao cho không lá thư nào vào đúng phong bì của nó?
Có bao nhiêu số nguyên từ 1 đến 30 không chia hết cho 2 và cũng không chia hết cho 3?