- Sự chung sống của các bộ xử lý thuộc nhiều chủng loại khác nhau- Số lượng tối đa của các bộ xử lý trong một máy tính - Phần mềm để tự động hoá các quá trình tương tranh trên máy tínhnh
Trang 1ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
HOÀNG CHÍ THÀNH
CÁC MÔ HÌNH TƯƠNG TRANH
Trang 2MỞ ĐẦU
Mô tả, thiết kế và điều khiển hệ thống là các vấn đề chính cần đặt ra khichúng ta xây dựng một hệ thống nào đó và sử dụng nó trong thực tiễn Lý thuyếtmạng là lý thuyết tổ chức hệ thống được C.A Petri khởi xướng vào đầu thậpniên sáu mươi của thế kỷ trước trong Luận án Tiến sĩ của ông Từ đó đến naycác nhà tin học trên thế giới đã nghiên cứu phát triển nhiều mô hình mạng khácnhau và ứng dụng chúng vào nhiều lĩnh vực khoa học khác nhau Ưu điểm chínhcủa lý thuyết mạng là khả năng nhận biết và biểu diễn sự tương tranh, an toàn,xung đột, sống, tắc nghẽn , cung cấp kỹ thuật phân tích và thiết kế hệ thống vàcảnh báo sự hữu hạn của các tài nguyên của hệ thống
Bên cạnh lý thuyết mạng nhiều mô hình biểu diễn tương tranh khác đã rađời Một số mô hình dựa trên ngôn ngữ hình thức như: ngôn ngữ vết của A.Mazurkiewicz, ngôn ngữ CSP của C.A.R Hoare, ngôn ngữ CCS của R Milner,ngôn ngữ COSY của P Lauer, ngôn ngữ nửa vết của H.C Thành Công cụ đại
số cũng được sử dụng để biểu diễn tương tranh Từ đó ra đời: đại số các quátrình của V.E Kotov và của J.A Bergstra, cấu trúc biến cố của G Winskel
Do khuôn khổ của chuyên đề, chúng tôi chỉ chọn lựa một số mô hình tiêubiểu nhất để đưa vào các bài giảng với mục tiêu giúp người học nắm bắt đượccác khái niệm mới, kỹ thuật cơ bản và ứng dụng chúng vào các vấn đề thực tiễnnhư: hệ thống thông tin, cơ sở dữ liệu, thiết kế mạch lôgic, kiến trúc máy tính,lập trình song song, công nghệ phần mềm, điều khiển hệ thống
Cuốn sách là nội dung chuyên đề dành cho học viên cao học và nghiêncứu sinh chuyên ngành Tin học, Công nghệ Thông tin, Đảm bảo Toán học choMáy tính và Các hệ thống tính toán mà tác giả đã giảng dạy nhiều năm tạiĐHQG Hà Nội và một số trường đại học khác Nhiều thảo luận lý thú giữa tácgiả với đồng nghiệp và học viên đã góp phần phát triển nội dung và nâng caochất lượng của cuốn sách
Chúng tôi hy vọng rằng cuốn sách nhỏ này sẽ thật sự cần thiết cho những
ai muốn nghiên cứu, khám phá những vấn đề kỳ diệu và hóc búa trong các hệthống tương tranh
Tác giả
Trang 3Chương 1
HỆ TƯƠNG TRANH VÀ CÁC MÔ HÌNH BIỂU DIỄN
1.1 Khái niệm về tương tranh
Trong đời sống hàng ngày, chúng ta thường thấy các sự kiện mà các hànhđộng trong nó xảy ra một cách tuần tự hoặc không tuần tự Tương ứng với các
sự kiện trên ta có các quá trình và chúng cũng được phân thành hai loại: các quátrình tuần tự và các quá trình không tuần tự
Một số quá trình được kết hợp lại với nhau tạo thành một hệ thống Hệthống tuần tự được tạo bởi các quá trình tuần tự Các quá trình không tuần tự tạonên hệ thống không tuần tự Trong một hệ thống tuần tự tại mỗi thời điểm chỉ cómột hành động xuất hiện (được thực hiện) Hành động sau xảy ra khi hành độngtrước đó đã kết thúc Chúng chỉ có thể kế thừa kết quả của nhau Chẳng hạn:
- Khách xếp hàng mua hàng khi chỉ có một nhân viên bán hàng
- Các thuật toán tính toán tuần tự
Ví dụ 1.1: Quá trình sản xuất công nghiệp
Giả sử một thiết bị nào đó được tạo ra từ việc chế tạo và lắp ráp ba chitiết Việc chế tạo từng chi tiết không phụ thuộc vào nhau Việc lắp ráp thì thựchiện tuần tự: trước tiên lắp ráp hai chi tiết đầu sau đó lắp thêm chi tiết thứ ba
Trang 4Ta có thể đưa quá trình sản xuất thiết bị trên về một hệ thống tương tranh nhưsau: chế tạo đồng thời hai chi tiết 1 và 2, việc lắp ráp hai chi tiết 1 và 2 đồng thờivới việc chế tạo chi tiết thứ ba, cuối cùng lắp ráp thêm chi tiết 3.
Như vậy, trong hệ thống sản xuất này việc chế tạo chi tiết 1 và việc chếtạo chi tiết 2 là tương tranh với nhau Chúng chỉ có thể được thực hiện đồng thờinếu không tranh chấp các máy móc
Quá trình sản xuất một sản phẩm có thể biểu diễn ngắn gọn bằng sơ đồ sau:
1 2 ; 3 4 ; 5Với việc tổ chức sản xuất như trên, ta thấy ngay các lợi ích sau đây:
1) Các chi tiết kỹ thuật được chế tạo trên các máy khác nhau, việc chế tạođồng thời có thể xoá bỏ thời gian chết của các máy
2) Giảm thời gian chế tạo ra một sản phẩm
Ví dụ 1.2: Tính giá trị của một biểu thức toán học
Giả sử ta cần phải tính giá trị của biểu thức sau đây:
A * B - (C + D) / (E - F)
Hình 1.2 Tổ chức tính toán song song một biểu thức
Sơ đồ tính toán giá trị biểu thức như trên giống như sơ đồ quá trình sảnxuất trong Ví dụ 1.1 Nếu máy tính có ít nhất hai bộ xử lý thì quá trình tính giátrị biểu thức sẽ nhanh hơn nhiều
Trang 5100 lệnh if trên có thể được thực hiện đồng thời nếu máy tính có trên 100
Hình 1.3 Một sơ đồ tính toán song song
Ví dụ 1.4: Tương tranh trong máy tính
Tương tranh trong máy tính được thể hiện ở các máy tính có nhiều bộ xử
lý (multi-processor) Đó là các máy tính có thể xử lý đồng thời nhiều quá trình
tại cùng một thời điểm
Hình 1.4 Sơ đồ máy tính song song
Trang 6- Sự chung sống của các bộ xử lý thuộc nhiều chủng loại khác nhau
- Số lượng tối đa của các bộ xử lý trong một máy tính
- Phần mềm để tự động hoá các quá trình tương tranh trên máy tínhnhiều bộ xử lý…
1.2 Định nghĩa hệ tương tranh
Một hệ thống được gọi là hệ tương tranh (concurrent system) nếu nó được
hợp thành từ một số hệ con (tuần tự) và có các biến cố được xảy ra một cáchđồng thời
Hệ tương tranh là đồng bộ nếu các hệ con của nó có chung một số biến cố
và trong quá trình hoạt động của hệ chúng xuất hiện trùng hợp trong tất cả các
hệ con có chung các biến cố này Điều này chỉ ra rằng, mỗi biến cố chung xuấthiện ở bước nào đó thì nó phải có khả năng xuất hiện ở bước đó trong tất cả các
hệ con có chung biến cố này Số lần xuất hiện và thứ tự xuất hiện của biến cốchung trong các hệ con phải giống nhau
1.3 Sơ lược về các mô hình biểu diễn tương tranh
1) Mô hình đầu tiên để biểu diễn hệ tương tranh được đề xuất bởi C.A.Petri (Đức) vào năm 1962 trong Luận án Tiến sĩ của ông Đó là mạng Petri
Nếu otomat hữu hạn chỉ mô tả được các hệ thống tuần tự thì mạng Petri,một công cụ toán học được phát triển trên cơ sở của otomat hữu hạn, mô tả đượccác hệ thống không tuần tự mà trong đó có các hệ thống tương tranh
Hiện nay mạng Petri vẫn được nghiên cứu phát triển mạnh mẽ cả về lýthuyết lẫn ứng dụng [5,7,10,11] Đã có hơn mười loại mạng khác nhau và được
áp dụng vào rất nhiều lĩnh vực
2 Ngôn ngữ vết (trace language) do A Mazurkiewicz (Ba Lan) đưa ra
vào năm 1977 Đây là một ngôn ngữ được phát triển từ ngôn ngữ hình thức để
mô tả hành vi của các hệ tương tranh [1]
3 CSP (Communicating Sequential Processes) là một ngôn ngữ để biểu
diễn các hệ tương tranh [3] do C.A.R Hoare (Anh) đưa ra vào năm 1978
4 CCS (Calculus of Communicating Systems) được R Milner (Anh) xây
dựng vào năm 1980 như một công cụ toán học rõ ràng và tổng quát về tươngtranh và được thể hiện như một ngôn ngữ lập trình [4]
Ngoài những mô hình kể trên, các hệ tương tranh còn được mô tả bằngcác mô hình sau đây:
Trang 7- COSY (COncurent SYstem) do P Lauer (Canada) đề xuất
- Cấu trúc biến cố (Event Structure) của G Winskel (Đức),
và nhiều mô hình khác
Một số nhóm nghiên cứu các hệ tương tranh trên thế giới:
Hệ tương tranh được nhiều nhà khoa học trên thế giới nghiên cứu và pháttriển tại các trường đại học và các viện nghiên cứu
- Tại Đại học Bonn (Đức), nơi ra đời của mạng Petri, có một nhóm cácnhà khoa học có tên tuổi như: C.A Petri, E Best, W Reisig, W.Brauer, U Goltz… phát triển nhiều mô hình khác nhau của mạngPetri
- Đại học Aarhus (Đan Mạch) xây dựng các mô hình mạng Petri màu vàứng dụng trong thiết kế
- Đại học Amsterdam (Hà Lan) với tên tuổi của G Rozenberg và J.W
de Baker chủ trì dự án REX (Research and Education in Concurrent
- A Mazurkiewicz và J Winkowski chủ trì nhóm nghiên cứu tươngtranh tại Viện Công nghệ Thông tin, Viện Hàn lâm Khoa học Ba Lan
- Đại học Tổng hợp Novosibierk (Nga) có một nhóm các nhà khoa họctrẻ nghiên cứu về tương tranh bằng các công cụ đại số như: V.E.Kotov, L Cherkasova…
- P.S Thiagarajan đã xây dựng một nhóm nghiên cứu mạnh về tươngtranh tại Viện Toán học Chennai (Ấn độ)
- Dự án châu Âu ESPRIT có trụ sở tại Đại học Newcastle (Anh) dưới sựđiều hành của R.P Hopkin với 44 nhà khoa học tham gia trực tiếptrong 10 nhóm làm việc (WG) sau đây:
Trang 87 WG.8: Lập trình
8 WG.9-10: Công bố kết quả
Hội thảo khoa học hàng năm toàn thế giới về tương tranh (CONCUR)được tổ chức tại nhiều trung tâm nghiên cứu trên khắp các châu lục đã thu hút sựchú ý của nhiều người về Lý thuyết Tương tranh Nhiều kết quả nghiên cứu lýthuyết và ứng dụng của hệ tương tranh đã được trình bày tại hội thảo này
Trang 9Chương 2 MẠNG PETRI 2.1 Ví dụ về mạng Petri
Chúng ta nghiên cứu việc tổ chức cho mượn sách và nhận trả lại sách ởmột thư viện
Hình 2.1 Cấu trúc đơn giản của một thư viện
Đây là cấu trúc đơn giản của một thư viện Bạn đọc có thể truy nhập vào thưviện thông qua ba bàn: bàn yêu cầu, bàn nhận sách và bàn trả sách Trong thưviện tất cả các sách đều được để trên giá và mỗi cuốn sách có một thẻ mục
a) Bạn đọc yêu cầu: Nếu cuốn sách có trong thư viện thì thủ thư lấy sách,
thẻ mục của cuốn sách đó được cập nhật và bạn đọc nhận sách tại bànnhận sách
b) Bạn đọc trả sách: Thẻ mục của sách được cập nhật và sách được đặt trở
lại giá
Làm mịn sơ đồ thư viện trên bằng cách thêm vào hai bộ phận làm việc là:
“cho mượn sách” và “nhận lại sách” và hai thành phần thụ động là “kho sách”
và “hộp thẻ mục sách đã mượn” Khi đó ta có sơ đồ mới chi tiết hơn của một
thư viện như dưới đây:
Trang 10Đây là một ví dụ về mạng Petri.
2.2 Các khái niệm cơ sở
2.2.1 Mạng Petri
Định nghĩa 2.1:
Bộ ba N = (S, T; F) được gọi là một mạng Petri nếu:
1) S và T là hai tập hợp không giao nhau Các phần tử của tập S được gọi là
S-phần tử, còn các phần tử của tập T được gọi là T-phần tử.
2) F (S T) (T S) là một quan hệ nhị nguyên và được gọi là lưu đồ
của mạng N.
Người ta thường biểu diễn đồ thị định hướng cho mạng Petri bằng cách
coi mỗi phần tử của tập S T là một đỉnh của đồ thị Các S-phần tử được biểu
diễn bằng các hình tròn, còn các T-phần tử được biểu diễn bằng các hình vuông Quan hệ lưu đồ F chính là các cung nối giữa các đỉnh tương ứng Mỗi cung của quan hệ lưu đồ F chỉ nối hai đỉnh khác loại Do vậy, đồ thị biểu diễn một mạng
Petri là một đồ thị định hướng hai phần
Giả sử N là một mạng Petri Nếu không nhầm lẫn đôi khi ta viết N thay cho S T Đó chính là tập các phần tử của mạng N.
i) Với mỗi phần tử xN thì:
x = { yN (y, x) F } - được gọi là tập vào của x,
x = { y N (x, y) F } - được gọi là tập ra của x.
với mỗi tập con XN thì:
ii) Cặp (s, t)ST được gọi là một nút (self-loop) nếu (s, t) F và (t, s)F.
Mạng N được gọi là tinh khiết (pure) nếu quan hệ lưu đồ F không chứa
một nút nào
iii) Phần tử xN được gọi là cô lập nếu x x =
iv) Mạng N được gọi là đơn giản (simple) nếu và chỉ nếu các phần tử khác nhau
không có chung tập vào và tập ra, nghĩa là:
Trang 11Ví dụ 2.2: Xét mạng Petri được cho dưới dạng đồ thị dưới đây.
Hình 2.3 Biểu diễn đồ thị của một mạng Petri
Mạng ở ví dụ trên là đơn giản, không tinh khiết và không có phần tử cô lập
2.2.2 Các mạng Petri đẳng cấu
Giả sử N và N' là hai mạng Petri.
1) Cho một song ánh : NN' Ta nói hai mạng N và N' là -đẳng cấu nếu và
chỉ nếu:
sS N (s)S N’ và (x, y) F N ((x),(y)) F N’
Điều này cũng suy ra rằng: tT N (t)T N’
2) Hai mạng N và N' được gọi là đẳng cấu nếu chúng là -đẳng cấu với mộtsong ánh nào đó
Hiển nhiên, hai mạng đẳng cấu với nhau thì đồ thị biểu diễn của chúngcũng đẳng cấu với nhau và ngược lại Do vậy, các mạng đẳng cấu với nhauđược xem là “giống nhau”
Trang 12Chương 3
HỆ MẠNG ĐIỀU KIỆN - BIẾN CỐ 3.1 Các trường hợp và các bước
Chúng ta xét hệ thống được tạo bởi các điều kiện (condition) và các biến
cố (event) Các điều kiện được biểu diễn bởi các S-phần tử còn các biến cố được biểu diễn bởi các T-phần tử của một mạng Petri Ta biết rằng, các điều kiện hoặc
là thoả mãn hoặc là không và sự xuất hiện của các biến cố sẽ làm thay đổi sựthoả mãn của các điều kiện Trong mỗi một hình trạng của hệ, một số điều kiệnnào đó thoả mãn, số còn lại thì không
Tập các điều kiện được thoả mãn trong một hình trạng được gọi là một
trường hợp (case) Biến cố e có thể xuất hiện trong trường hợp c nếu và chỉ nếu các điều kiện vào của e thoả mãn trong c còn các điều kiện ra thì không Khi biến
cố e xuất hiện, các điều kiện vào của e không thoả mãn nữa còn các điều kiện ra của e bắt đầu thoả mãn.
Vì các S-phần tử và T-phần tử được thể hiện như các điều kiện và các biến
cố nên ta ký hiệu mạng Petri là (B, E; F) thay cho (S, T; F).
Định nghĩa 3.1: Giả sử N = (B, E; F) là một mạng Petri.
1) Tập con c B được gọi là một trường hợp hay một trạng thái.
2) Giả sử e E và cB Ta nói rằng e là kích hoạt được trong c (hay e là
c-kích hoạt) nếu và chỉ nếuec và e c =
3) Giả sử e E , c B và e là kích hoạt được trong c Khi đó, c' = (c \ e)
e được gọi là trường hợp kế tiếp của c (c’ là kết quả của sự xuất hiện của biến cố e trong trường hợp c).
Và ta viết: c [ e > c'.
Một biến cố của hệ mạng có thể xảy ra nếu trong hệ có trạng thái làm thoảmãn các điều kiện trước (tập vào) của biến cố đó và khi ấy các điều kiện sau (tậpra) của biến cố này chưa thoả mãn Khi biến cố xảy ra, các điều kiện trước khôngthoả mãn nữa và các điều kiện sau được thoả mãn Trạng thái kế tiếp nhận đượcsau khi biến cố trên xảy ra phải thuộc không gian các trạng thái để có thể kíchhoạt các biến cố khác Không gian các trạng thái của hệ thống là môi trường đểdãy các bước có thể xảy ra trên hệ, tạo nên các quá trình trên hệ
Nếu có điều kiện sau nào đó làm cản trở sự xuất hiện của biến cố e, nghĩa
là e c nhưng ec ≠ thì ta gọi hiện tượng này là tình trạng không an toàn.
Tập con các biến cố G E mà các tập vào và các tập ra của các biến cố
Trang 13một tập tách được G có thể xuất hiện đồng thời trong một bước nếu mọi biến cố trong G đều được kích hoạt bởi cùng một trường hợp.
Định nghĩa 3.2: Giả sử N = (B, E; F) là một mạng Petri.
1) Tập con các biến cố G E được gọi là tách được nếu:
Khi đó, ta cũng ký hiệu là: c [ G > c'.
Bước G đã dẫn từ trường hợp c tới trường hợp c' Hiển nhiên, nếu G chỉ chứa một biến cố e thì:
c [ G > c' c [ e > c'.
Bổ đề 3.1: Giả sử N = (B, E; F) là một mạng Petri, tập con các biến cố G E là
tách được và c, c' là các trường hợp của N Khi đó thì:
2) Ngược lại, nếu c \ c' = G thì G c Đồng thời, nếu c' \ c = G thì G c
= Vậy mỗi biến cố e trong G là c-kích hoạt Hơn nữa:
(c \ G) G = (c \ (c \ c')) (c' \ c)
= (c c') (c' \ c)
Trang 14Nói chung có một số khả năng để ghép các biến cố thành một bước.
Ví dụ 3.3: Xét hệ mạng Petri được cho như đồ thị dưới đây Chọn trường hợp
đầu tiên c0 = {b1}
Hình 3.1 Các bước trên mạng
Không chỉ {e1,e2} mà {e2,e3} cũng tạo nên một bước
Khi thay thế các trường hợp, bước tiếp theo bước sinh ra các quá trình.Nếu bước hữu hạn thì nó có thể được thể hiện bởi sự xuất hiện của các biến cốcủa nó theo thứ tự tuỳ ý Do vậy, các biến cố trong một bước hữu hạn có thể thựchiện đồng thời với nhau
Bổ đề 3.2: Giả sử N = (B, E; F) là một mạng Petri, c1, c2là các trường hợp của
mạng N và G là một bước hữu hạn dẫn c tới c' Giả sử G = {e1, e2, … , e k} và
< e1, e2, … , e k > là một dãy nào đó của các biến cố trong G Vậy thì có các trường hợp c0, c1, … , c k mà c = c 0 , c' = c k và c i-1 [ e i > c i với i = 1, 2, …, k.
Chứng minh:
Giả sử e i , e j là hai biến cố nào đó trong G và c là trường hợp kích hoạt
được hai biến cố này Thế thì: e i e j = e
Với i = 1, 2, …, k ta có e i vẫn bảo toàn tính kích hoạt được khi xuất hiện lần lượt
của e1, e2, … , e i-1 và dẫn c i-1 tới c i
Có thể xảy ra trường hợp là hai biến cố đều được một trường hợp kíchhoạt nhưng chỉ có thể xuất hiện trong các bước đơn thôi Đó là trường hợp màhai biến cố này có chung điều kiện vào hoặc điều kiện ra Khi đó sự xuất hiện
của chúng loại trừ lẫn nhau Tình trạng như thế được gọi là xung đột lẫn nhau (conflict) Không phải lúc nào cũng có thể nhận biết một cách rõ ràng rằng xung
Trang 15Ví dụ 3.4: Xét mạng Petri sau đây.
Hình 3.2 Tình trạng xung đột
Trong mạng trên với trường hợp được chỉ ra (các điều kiện tô màu) nếu e1
xuất hiện trước e2 thì không có xung đột giữa e1 và e3, còn nếu e2 xuất hiện trước
e1 thì xảy ra xung đột Do không có thứ tự xác định trước giữa e1 và e2 nên tình
trạng này được gọi là mập mờ.
3.2 Hệ mạng điều kiện - biến cố
Một mạng Petri bao gồm các điều kiện và các biến cố chưa đủ để mô tả hệthống Vì vậy ngoài mạng ta phải thêm vào các trường hợp mà ta muốn xét
Tập các trường hợp C này phải thoả các tính chất sau đây:
1 Nếu tập G E là một bước được kích hoạt bởi trường hợp c C thì G
dẫn tới một trường hợp khác cũng thuộc C Như vậy, các bước không được dẫn ra ngoài C.
2 Ngược lại, nếu trường hợp c C là kết quả của bước G E thì tình
huống mà ta đi từ đó cũng phải là một trường hợp thuộc C Hay nói một
cách khác, nếu ta quay trở lại tìm trường hợp trước thì ta chỉ cần tìm
trong C.
3 Mỗi trường hợp trong C đều có thể biến đổi (tiến hoặc lùi sau một số lần) thành các trường hợp còn lại trong C.
4 C phải đủ rộng để mà:
- Mỗi điều kiện b B phải thuộc vào ít nhất một trường hợp trong C
nhưng không thuộc vào mọi trường hợp trong C Điều này giúp loại trừ
điều kiện cô lập và chu trình hẹp
- Mỗi biến cố e E phải có ít nhất một trường hợp trong C kích hoạt
được nó
Trang 16Định nghĩa 3.5: Bộ bốn = (B, E; F, c0) được gọi là một hệ mạng điều kiện
-biến cố (C/E-system) nếu:
1) Bộ ba (B, E; F) là một mạng Petri đơn giản, không có phần tử cô lập và
B E ≠
2) c0 B, là trường hợp đầu tiên của hệ mạng Tập C = [c0]R là một lớp
tương đương của quan hệ đạt được R = (r r -1)*, trong đó quan hệ r
P(B) P(B) được định nghĩa như sau:
(c1, c2) r GE : c1[ G > c2
C được gọi là không gian các trường hợp của hệ
3) e E ,c C để e kích hoạt được trong c.
Ví dụ 3.6: Cho mạng Petri:
Hình 3.3 Cấu trúc tĩnh của một hệ mạng điều kiện - biến cố
Lấy c0 = {b1} Khi đó không gian C = {{b1}, {b2, b3}, {b3, b4}, {b4}, {b5}}
và ta có một hệ mạng điều kiện - biến cố
Định lý 3.3: Giả sử là một hệ mạng điều kiện - biến cố Thế thì:
1) Vì B E ≠ và các phần tử cô lập đã bị loại trừ nên phải có các phần tử x, y
của sao cho (x, y) F.
Trang 173) Vì b không cô lập nên có biến cố e trong b b và theo định nghiã thì phải
có c, c' C mà c [ e > c' và vì bc c'.
4) Biến cố trong chu trình hẹp không bao giờ được kích hoạt
Ví dụ 3.7: Bài toán sắp đặt lại các tập hợp.
Cho hai tập không rỗng, hữu hạn, rời nhau A và B Sắp đặt lại các phần tử trong tập A B thành hai tập A' và B' sao cho |A'| = |A|, |B'| = |B| và max (A) <
min (B).
Chương trình tương tranh giải bài toán trên được biểu diễn bởi hệ mạngđiều kiện - biến cố sau đây:
Hình 3.4 Chương trình tương tranh cho bài toán sắp đặt lại các tập hợp
Định lý 3.4: Giả sử là một hệ mạng điều kiện - biến cố
Giả sử quan hệ r P(B)P(B) được định nghĩa như sau:
Trang 18Giả sử = (B, E; F, c0) là một hệ mạng điều kiện - biến cố Các trườnghợp trong không gian các trường hợp kích hoạt liên tiếp các biến cố cho ta mộtdãy hành động xảy ra trên hệ Chẳng hạn,
c1 [e1 > c2 [e2 > c3[e3 > c4 c i [e i > c i+1 c n [e n > c n+1 ,
với c1, c2, c n+1C và e1, e2, e nE
Khi đó, = e1e2 e n được gọi là từ sinh bởi hệ mạng Ngôn ngữ sinh bởi
hệ mạng điều kiện - biến cố , ký hiệu bởi L(), là tập tất cả các từ sinh bởi hệmạng này
L() = { = e1e2 e n | c1, c2, c n+1C , e1, e2, e nE :
c1 [e1 > c2 [e2 > c3[e3 > c4 c i [e i > c i+1 c n [e n > c n+1}.Ngôn ngữ này thể hiện hành vi tuần tự của hệ mạng Nó chỉ cho ta tất cảcác dãy các hành động có thể xảy ra tuần tự trên hệ
3.3 Hệ chu trình và hệ sống
Những yêu cầu đặt ra cho không gian các trường hợp C của hệ mạng điều
kiện - biến cố sẽ rõ ràng hơn bằng cách thể hiện được rằng C là tập tất cả các
trường hợp kế tiếp của một trường hợp ban đầu nào đó Nếu mọi trường hợp của
đều được tái sản xuất thì mỗi một không gian các trường hợp như thế sẽ trùng
Vì hệ là chu trình nên r -1 r Suy ra R r *
Trong một hệ chu trình mỗi một biến cố luôn luôn được xuất hiện trở lại
Định nghĩa 3.9:
Hệ mạng điều kiện - biến cố được gọi là sống nếu và chỉ nếu:
Trang 19Định lý 3.6: Mọi hệ mạng điều kiện - biến cố chu trình là sống.
Chứng minh:
Giả sử c C và eE.
Theo định nghĩa của hệ mạng điều kiện - biến cố phải có trường hợp c' trong C
để nó kích hoạt được e Theo tính chu trình thì (c, c')r *
Điều ngược lại thì không phải khi nào cũng đúng Ta hãy xét phản ví dụsau đây
Ví dụ 3.10: Hệ mạng điều kiện - biến cố sống nhưng không là chu trình.
Hình 3.5 Hệ sống nhưng không là chu trình
3.4 Các hệ mạng điều kện - biến cố tương đương
Ta nói rằng hai hệ mạng điều kiện - biến cố đã cho là tương đương nếu cáctrường hợp và các bước của chúng tương ứng với nhau theo cách sau đây
Định nghĩa 3.11: Giả sử và ' là hai hệ mạng điều kiện - biến cố
1) Giả sử có hai song ánh : C C’ và : E E ’
- Hai hệ và' được gọi là (,)-tương đương nếu và chỉ nếu:
c1, c2C , G E : c1[ G > c2 (c1) [ (G) > (c2)
- Hai hệ và ' được gọi là tương đương nếu và chỉ nếu chúng là (,tương đương đối với cặp song ánh (,) nào đó và ta ký hiệu: '
)-2) Hai hệ và' được gọi là đẳng cấu nếu và chỉ nếu hai mạng (B , E, F) và
(B ', E ', F ’) là-đẳng cấu với song ánh nào đó và:
c C {(b)b c}C
Trang 20Định lý 3.8: Các hệ mạng điều kiện - biến cố tương đương có số các trường hợp,
số các biến cố và số các bước như nhau nhưng số các điều kiện của chúng có thểkhác nhau
Ví dụ 3.12: Hai hệ mạng điều kiện - biến cố tương đương biểu diễn các mùa
trong năm
Hình 3.6 Hai hệ mạng điều kiện - biến cố tương đương
Tập các điều kiện B' : s1– xuân hoặc hạ
s2– xuân hoặc thu
Bổ đề 3.10: Giả sử và ' là hai hệ mạng điều kiện - biến cố mà: c C
C ’, |c| = 1 Khi đó thì: ' khi và chỉ khi chúng là đẳng cấu
Chứng minh:
Giả sử là (,)-tương đương với ' Vì mỗi trường hợp của chúng chỉ
Trang 21'(b) = b' ({b}) = {b'}.
Ánh xạ ' : ' được định nghĩa như sau: '(b) = '(b) nếu b B và'(e) =
(e) nếu eE Hiển nhiên ' là một song ánh
Mọi biến cố đều phải có khả năng xuất hiện Do vậy, với mọi biến cố e trong E
thì 0 < |e| + |e| 2
Giả sử (b, e) F Thế thì biến cố e là {b} -kích hoạt Vậy (e) là ({b})
-kích hoạt và ('(b),'(e)) F ’
Chứng minh một cách tương tự thì từ (e, b) F suy ra ('(e), '(b)) F '
Điều ngược lại là hiển nhiên
3.5 Hệ mạng điều kiện - biến cố an toàn
Trong phần 3.1 chúng ta đã chỉ ra rằng biến cố sẽ không được kích hoạttrong tình trạng không an toàn Tình trạng như thế có thể loại trừ được nhờ mộtphép biến đổi tương đương trên các hệ mạng điều kiện - biến cố Để làm việc
này, ta thêm cho mỗi điều kiện b một điều kiện bù b của nó sao cho trong mỗi
trường hợp của hệ thì hoặc b hoặc b được thoả mãn
Định nghĩa 3.13: Giả sử là hệ mạng điều kiện - biến cố và b, b' là các điều kiện trong B
1 Điều kiện b' được gọi là bù của điều kiện b khi và chỉ khib = b' và b =
b'.
2 Hệ là đầy đủ nếu mỗi điều kiện b trong B đều có điều kiện bù b' cũng trong B
Bổ đề 3.11:
Giả sử là hệ mạng điều kiện - biến cố và b là một điều kiện trong B
1) b có nhiều nhất một bù, được ký hiệu là b
Trang 223) Điều này đúng vì trong trường hợp ngược lại thì các biến cố liên quan khôngthể được kích hoạt trong bất kỳ một trường hợp nào và mâu thuẫn với định nghĩacủa hệ mạng điều kiện - biến cố.
4) Suy từ định nghĩa của điều kiện bù
5) Suy từ 3)
Ví dụ 3.14: Cách xây dựng điều kiện bù.
Hỉnh 3.7 Điều kiện b và bù của nó b
Định nghĩa 3.15: Giả sử là hệ mạng điều kiện - biến cố
Ký hiệu B là tập các điều kiện trong B không có bù Với mỗi điều kiện b trong B ta thêm vào điều kiện bù b Đặt quan hệ:
F = { (e, b)bB (b, e) F } { (b , e)bB (e, b)F }
Với c C đặt(c) = c {b bB bc}.
Khi đó hệ mạng điều kiện - biến cố = ( B {b b B}, E ; F F, (C))
được gọi là đầy đủ của hệ
Hiển nhiên, mỗi điều kiện b trước đây không có bù trong hệ thì nay đã
Trang 23Chú ý: Giả sử là hệ mạng điều kiện - biến cố và biến cố e E Để đơn giản
ký hiệu ta viết –e và e–chỉ tập vào và tập ra tương ứng của e trong hệ đầy đủ
Định lý 3.14: Giả sử là hệ mạng điều kiện - biến cố và tập G E Ký hiệu B
là tập các điều kiện không có bù trong B
Chứng minh mệnh đề ngược lại :
Giả sử tập B là tập các điều kiện không có bù của hệ và:
B1 = {b bB \ c1} và B 2 = {b bB \ c2}
Vậy thì: (c ) = c B và (c ) = c B
Trang 24Định nghĩa 3.16: Giả sử là hệ mạng điều kiện - biến cố.
Hệ được gọi là an toàn (safe) nếu với mỗi biến cố e E và mỗi trường
1) Mọi hệ mạng điều kiện - biến cố đầy đủ là an toàn
2) Mỗi hệ mạng điều kiện - biến cố đều có một hệ mạng an toàn tương đương.3) Nếu hệ là an toàn thì:e E : e e
Chứng minh:
1) Giả sử hệ là đầy đủ, b B , e E và c C
Nếu b e c thì b e (B \ c) Do vậy: e c Còn nếu b e c thì b
e (B \ c) Do vậy:e c.
2) Hệ chính là hệ đầy đủ, an toàn tương đương cần tìm
3) Giả sử rằng e = Thế thì e vì e không cô lập Khi đó, c C mà
e c Vì e B\ c nên mâu thuẫn với giả thiết e =
Chứng minh tương tự cho trường hợp e =
Trang 253.6 Đồ thị các trường hợp
Để có cái nhìn đầy đủ tất cả các bước của một hệ mạng điều kiện - biến
cố, ta xây dựng đồ thị các trường hợp của hệ này Các đỉnh của đồ thị chính làcác trường hợp còn các cung là các bước xảy ra trên hệ mạng
Đồ thị = (C, P) được gọi là đồ thị các trường hợp của
Định lý 3.17: Hệ mạng điều kiện - biến cố là chu trình nếu và chỉ nếu đồ thịcác trường hợp của nó là liên thông mạnh
Định lý 3.18: Hệ mạng điều kiện - biến cố là sống khi và chỉ khi với mỗi
trường hợp c Cvà với mỗi biến cố e E đều có một đường đi < c G1 c1 …
G n c n > trong đồ thị mà nhãn G n = {e}.
Chứng minh:
Hệ mạng điều kiện - biến cố là sống
c C , eE , c', c" C : (c, c')r * c' [e > c"
Tồn tại đường đi < c G1 c1 … c n-1 G n c n > mà c n-1 = c' , G n = {e} và c n = c".
Đó chính là điều phải chứng minh
Ví dụ 3.18:
Trang 26Hệ mạng điều kiện - biến cố Đồ thị các trường hợp
Hình 3.9 Hệ mạng điều kiện - biến cố và đồ thị các trường hợp của nó
Hệ này là chu trình và đồ thị các trường hợp của nó là liên thông mạnh
Định lý 3.19: Hai hệ mạng điều kiện - biến cố là tương đương khi và chỉ khi đồ
thị các trường hợp của chúng là đẳng cấu với nhau
Hình 3.10 Một đồ thị định hướng gán nhãn
Trang 27đồ thị phải bỏ cung (c2, {e2}, c4) đi Ngược lại, nếu trong c1 không có xung đột
giữa e1 và e2 thì c3 có thể kích hoạt e1 Vậy thì, trong đồ thị phải thêm cung
(c3, {e1}, c4) vào
Đồ thị các trường hợp trở nên rất phức tạp đối với các hệ tương tranh
mạnh Chẳng hạn, một bước chứa n biến cố sẽ sinh ra 2 n cung trong đồ thị cáctrường hợp Định lý sau đây sẽ thể hiện điều đó
Định lý 3.20: Giả sử là hệ mạng điều kiện - biến cố và c1, c2, c3 C , G1, G2
E
1 Nếu < c1G1c2G2c3> là một đường đi trong đồ thị thì G1G2 =
2 Giả sử G1 G2 = Nếu (c1, G1 G2, c2) là một cung trong thì tồn tại
c C sao cho < c1G1c G2c3> cũng là một đường đi trong đồ thị
Chứng minh:
1) Giả sử biến cố e G1 Khi đó thìe c2 = Thế thì e không là c2-kích hoạt
Suy ra eG2
Giả sử e G2 Suy ra, c2e= Vậy thì e G1
2) Nếu (c1, G1G2, c2) là một cung trong đồ thịthì c1[G1G2> c2 Khi đó,
ta có: c1[G1> c và c[G2> c2với c = (c1\G1) G1
BÀI TẬP CHƯƠNG 3
3.1 Bài toán sói, dê và bắp cải:
Một con sói, một con dê và một thùng bắp cải đang ở bên bờ sông Ngườilái đò phải đưa chúng sang bên kia sông Nhưng thuyền quá bé nên mỗi chuyến
chỉ chở được một “hành khách” thôi Vì những lý do mà ai cũng biết, không thể
bỏ mặc sói với dê hoặc dê với bắp cải mà không có người trông
Bạn hãy tổ chức giúp người lái đò một cách sang sông thích hợp dướidạng một hệ mạng điều kiện - biến cố
3.2 Xây dựng hệ mạng điều kiện - biến cố biểu diễn chương trình tương tranh
cộng hai số nguyên dương m, n theo thuật toán tương tranh sau đây: Lần lượt tăng m thêm 1 đồng thời giảm n đi 1 cho đến khi n = 0, rồi in m ra.
3.3 Xây dựng hệ mạng đầy đủ cho hệ mạng điều kiện - biến cố dưới đây:
Trang 28Hình 3.11 Hệ mạng điều kiện - biến cố
Xây dựng đồ thị các trường hợp cho hệ mạng này
3.4 Bài toán "bữa ăn tối của năm nhà triết học":
Mỗi buổi tối năm nhà triết học cùng ngồi quanh một cái bàn tròn vừa suynghĩ vừa ăn Trên bàn có một đĩa mì ống, năm đĩa ăn nhỏ đặt trước mặt các nhàtriết học và năm cái dĩa để xen kẽ giữa các đĩa ăn Khi ăn, mỗi nhà triết học phảidùng cả hai dĩa ở bên trái và bên phải mình Ăn xong, ông ta đặt cả hai dĩa xuốngchỗ cũ và tiếp tục suy nghĩ Hãy mô tả bữa ăn này bằng một hệ mạng điều kiện -biến cố
Trang 29Chương 4 CÁC QUÁ TRÌNH TRÊN HỆ MẠNG ĐIỀU KIỆN - BIẾN CỐ
Trong chương này chúng ta nghiên cứu các quá trình xảy ra trên một
hệ mạng điều kiện - biến cố Có thể định nghĩa quá trình của hệ mạng điềukiện - biến cố như là một đường đi trong đồ thị các trường hợp của nó Songđường đi như thế không mô tả chính xác được cái mà ta hiểu trực quan từ quátrình Thứ tự tổng thể của các phần tử của nó cũng không cho ta một thôngtin nào về sự xuất hiện trước sau của các biến cố hoặc liệu chúng có độc lậpvới nhau hay không Thứ tự bộ phận mà trong đó các biến cố xuất hiện chỉđược biểu diễn gián tiếp trong đồ thị các trường hợp bởi tập tất cả các khảnăng xuất hiện kế tiếp của các bước
Bởi vậy, chúng ta muốn tìm một cách mô tả thích hợp hơn cho quátrình Đặc biệt là, nó phải rõ ràng và chỉ ra được một cách tường minh rằngcác biến cố có xuất hiện một cách đồng thời hay không Mô tả như thế đượcxem như là bản ghi sự xuất hiện của các biến cố và sự thay đổi của các điều
kiện Các phần tử của bản ghi này được sắp thứ tự bộ phận nhờ quan hệ “a là điều kiện trước cho b” Hơn nữa, sự lặp lại của chính biến cố hay chính điều
kiện này được ghi lại như một phần tử mới Có một biểu diễn thực sự đúngđắn cho các bản ghi như thế lại là một loại mạng Chẳng hạn, mọi sự xuấthiện trên mạng ở ví dụ trong phần 3.6 được biểu diễn đầy đủ như sau:
Hình 4.1 Biểu diễn mạng tương ứng với mạng trong Hình 3.17
T- phần tử đã cho biểu diễn sự xuất hiện của biến cố và được ký hiệu bởi
nhãn của nó Các T-phần tử khác nhau nhưng có cùng một nhãn ký hiệu sự xuất hiện nhiều lần khác nhau của chính biến cố này Tương tự, một S- phần
Trang 30thôi không thoả mãn nữa khi sxuất hiện" Như trong các tình huống cụ thể
tương ứng, các xung đột đã được giải quyết vì tất cả các S-phần tử không
phân nhánh Để dễ dàng điều khiển các quá trình được mô tả như thế, chẳnghạn “mạng được sắp thứ tự bộ phận”, ta cần phải xét một số tính chất của tập
có thứ tự bộ phận và sau đó xét các mạng hiện Đó là các mạng được sắp thứ
tự bộ phận và thích hợp để mô tả các quá trình Sau đó, ta trình bày khái niệmquá trình và chỉ ra rằng các quá trình có thể hợp thành và phân tách như thếnào Đồng thời, ta cũng nghiên cứu mối liên hệ của chúng với đồ thị cáctrường hợp
Định lý 4.1: Giả sử A là một tập hợp và là một quan hệ tương tự trên A.
1 Mỗi phần tử của A phải thuộc vào một vùng của
2 Các vùng của tập không rỗng A là khác rỗng và không có vùng nào là
tập con thực sự của một vùng khác
3 Nếu là quan hệ tương đương thì các vùng của chính là các lớptương đương của nó
Biểu diễn đồ thị cho quan hệ tương tự:
Một quan hệ tương tự trên tập hữu hạn A có thể biểu diễn như một đồ thị vô hướng: A là tập các đỉnh và:
E = { (a, b)a b (a, b) } là tập các cạnh
Trang 31Ví dụ 4.2: Một quan hệ tương tự với 4 vùng.
Hình 4.2 Quan hệ tương tự và các vùng của nó
Bây giờ ta xét tập hợp có thứ tự bộ phận, nghĩa là tập hợp mà trên nó
có một quan hệ không phản xạ và bắc cầu Hai quan hệ li và co được định
nghĩa như sau:
Trang 32Ví dụ 4.4: Giả sử tập A và quan hệ thứ tự bộ phận < được cho như sau:
Hình 4.3 Đồ thị định hướng biểu diễn tập có thứ tự bộ phận
Khi đó, hai quan hệ tương tự li và co được biểu diễn bằng đồ thị vô hướng
sau đây:
Hình 4.4 Hai quan hệ tương tự sinh từ tập có thứ tự bộ phận
Định nghĩa 4.5: Giả sử A là tập có thứ tự bộ phận và tập con BA.
1 Tập con B được gọi là một đường nếu nó là một vùng của quan hệ li.
2 Tập con B được gọi là một nhát cắt nếu nó là một vùng của quan hệ
co.
Chẳng hạn, tập A trong ví dụ trên có 3 đường là {a,b,c}, {e,f,g}, {a,b,d,f,g}
và 5 nhát cắt là {e,a}, {e,b}, {e,d,c}, {f,c}, {g,c}.
Định lý 4.4: Giả sử A là tập có thứ tự bộ phận và tập con BA.
1 Tập con B là một đường nếu và chỉ nếu:
i) a, bB : a < b b < a a = b và
Trang 33ii)aA \ B ,bB : (a < b b < a)
2 Tập con B là một nhát cắt nếu và chỉ nếu:
i) a, bB : (a < b b < a) và
ii)aA \ B ,bB : a < b b < a
Khái niệm tập bị chặn và tập trước được định nghĩa như sau:
Định nghĩa 4.6: Giả sử A là tập có thứ tự bộ phận và giả sử B và C là các tập
con của tập A.
1 Tập A là bị chặn nếu và chỉ nếu có một số nguyên dương n N sao
cho mọi đường đi L trong A đều thoả mãn: |L|n
2 Tập con B được gọi là trước tập con C (ta viết: B C) nếu:
bB ,c C : b < c (b, c) co.
( B < C có nghĩa là: BC BC ).
3 Ta ký hiệu:
B = {a A {a}B} và B+ = {a A B {a}} - được gọi là tập
trước và tập sau của B.
Chứng minh: Giả sử a và b là các phần tử tuỳ ý của A Thế thì, (a, b) co
bởi vậy (a < bb < a).
Giả sử c A \A và giả sử L là một đường đi trong A mà c L Vì L hữu hạn
nên có phần tử d L A và d < c Theo Định lý 4.4 suy ra A là một nhát
cắt Tương tự, chỉ ra rằng A cũng là một nhát cắt
Một đường và một nhát cắt có chung nhiều nhất một phần tử
Trang 34Định nghĩa 4.7: Tập có thứ tự bộ phận A được gọi là K-trù mật nếu mỗi
đường và mỗi một nhát cắt trong A đều có giao khác rỗng.
Chẳng hạn, tập A trong ví dụ trên là K-trù mật Tuy nhiên, không phải tập có thứ tự bộ phận nào cũng là K-trù mật.
Ví dụ 4.8:
Hình 4.5 Tập không K-trù mật
đường L = {c, b}, nhát cắt D = {a, d} và LD =
4.2 Mạng hiện
Mạng hiện là một mạng phi chu trình với các S-phần tử là không rẽ
nhánh Thế thì, ta sẽ có một thứ tự bộ phận trên các phần tử của mạng Ta sẽ
chỉ ra rằng các mạng hiện là K-trù mật Do vậy, mạng hiện thường được ding
để biểu diễn các quá trình trên một hệ mạng điều kiện - biến cố
Trang 352 sS K : |s| 1 |s| 1 (S-phần tử không phân nhánh).
Định lý 4.7: Giả sử K là một mạng hiện Quan hệ < được định nghĩa như sau:
a, bK : a < b (a, b)F K+
là một thứ tự bộ phận trên K.
Vậy thì, các khái niệm liên quan đến thứ tự bộ phận như: đường, nhát
cắt, tính bị chặn, K-trù mật đều có thể áp dụng cho các mạng hiện.
Định nghĩa 4.10: Nhát cắt của mạng hiện K chỉ chứa các S-phần tử được gọi
là một lát cắt.
Ký hiệu: sl(K) là tập tất cả các lát cắt của mạng hiện K.
Ví dụ 4.11: Xét mạng hiện sau đây:
Trang 36đường L không rỗng và hữu hạn nên tồn tại x1 = min (L) và x2 = max (L) Hiển nhiên, x1 K và x2 K Vì D là một nhát cắt và x1 D nên tồn tại
dD sao cho x1 < d d < x1 Hơn nữa, do x1K nên x1 < d.
Bằng cách lý luận tương tự, do x2K nên tồn tại d' D sao cho d' < x2
Đặt a1 = max {xL dD : x < d} và
a2 = min {xL d'D : d' < x}.
Sự tồn tại của x1 và x2 suy từ tính hữu hạn của L.
Nếu a2 a1 thì phải tồn tại d, d' D sao cho d' < a2 a1< d Nhưng điều này không thể xảy ra vì D là một nhát cắt.
Do vậy, a1 < a2 vì a1, a2L.
Từ định nghĩa của a1 và a2 suy ra rằng có đường đi từ a1 tới phần tử d nào đó trong nhát cắt D và có đường đi từ phần tử d' nào đó trong nhát cắt D tới a2.Vậy thì:
b1a1 , d D sao cho b1 d vàb2a2 ,d'D sao cho d' b2
Hình 4.7 Đường L và nhát cắt D không giao nhau
Cũng theo định nghĩa của a1 và a2 suy ra rằng phần tử b1, b2 không thể nằm
trên L Vì a1, a2L và a1< a2 nên tồn tại c1a1 và c1L
Đồng thời, tồn tại c2a2 và c2 L Hiển nhiên, b1 c1và b2 c2
Các S-phần tử là không phân nhánh nên a1, a2 phải cùng thuộc T K Do vậy,
(a1, a2) F K Thế thì phải có ít nhất một S-phần tử s L sao cho a1< s < a2
Trang 37Mà theo định nghĩa của a1 ta có: d D : (s, d) co Nhưng điều này
1 Mỗi lát cắt được ánh xạ 1 - 1 vào một trường hợp
2 Ánh xạ mỗi T-phần tử vào một biến cố và phải bảo toàn môi trường
của biến cố này
Hay nói một cách khác, mỗi quá trình là việc "nhúng" một mạng hiện
Trang 38Định nghĩa 4.13: Giả sử K là một mạng hiện bị chặn và là một hệ mạngđiều kiện - biến cố an toàn.
Một ánh xạ p : K được gọi là một quá trình của nếu với mỗi lát
cắt D của K và mỗi phần tử t T K thoả mãn:
1 pD là ánh xạ 1 - 1 và p(D)C
2 p(t) =p(t) và p(t) = p(t)
Trong biểu diễn đồ thị của quá trình p : K , mỗi phần tử x của K được gán nhãn bởi ảnh p(x) của nó.
Tính K-trù mật của các mạng hiện bị chặn là một tính chất quan trọng
để sử dụng mạng hiện trong mô tả các quá trình không tuần tự Mỗi đườngbiểu diễn dãy các phần tử mà chúng phụ thuộc nhân quả lẫn nhau, thể hiện
như một quá trình con tuần tự Tính K-trù mật của mạng hiện đảm bảo rằng
mỗi quá trình con đều tuần tự được
Định lý 4.9: Với mỗi quá trình p : K ta có:
1 p(S K)B p(T K)E – quá trình p không làm thay đổi loại.
2 x, y K : (x, y) F K (p(x), p(y)) F – quá trình p bảo toàn
quan hệ lưu đồ
3 x, y K : p(x) = p(y) (x, y) li – không có điều kiện hoặc
biến cố nào tương tranh với chính mình
4 tT K : t t – mọi biến cố đều có tập vào và tập ra
5 Với mỗi nhát cắt D của K thì pD là ánh xạ 1 - 1
Chứng minh:
1 Mệnh đề p(S K) B suy trực tiếp từ Định nghĩa 4.13 vì mỗi s S K thuộc
vào ít nhất một lát cắt Với t T K có tồn tại x sao cho x p(t) p(t)
Vậy theo Định nghĩa 4.13 phải tồn tại yt t mà p(y) = x.
Vì yS K nên ta có: x B và p(t)x xE
2 Với sS K và t T K thì:
(s, t)F K s t p(s)p(t) (p(s), p(t))F
Tương tự với (t, s) F K thì:
Trang 39(t, s)F K s t p(s)p(t) (p(t), p(s))F
3 Với x,y S K thì kết quả suy trực tiếp từ định nghĩa
x, yT K , x y , p(x) = p(y) suy ra p(x) =p(y) và p(x) = p(y)..Từ Định nghĩa 4.13 suy ra p(x) = p(y) và p(x) = p(y)
Giả sử ngược lại là (x, y)co.
Khi đó tồn tại các lát cắt D1x y và D2xy
Hoặc x y hoặc x y là không rỗng và x y = = x y vì các phần tử của mạng hiện K là không rẽ nhánh.
S-Thế thì, p D1 hoặc p D2 không phải là ánh xạ 1 - 1 Mâu thuẫn với định nghĩa
của quá trình Do vậy, x li y.
4 Với t T K , sử dụng 1 ta có p(t)E Theo Định lý 3.16 ta có:
p(t) và p(t)
Dựa vào Định nghĩa 4.13 2 ở trên ta suy ra điều phải chứng minh
5 Suy từ 3 và Định nghĩa 4.13 1 ở trên
Định lý 4.10: Giả sử p : K là một quá trình và tập con T T K thoả mãn
p(D) -kích hoạt Đó là điều phải chứng minh.
Định nghĩa 4.14: Hai quá trình p1 : K1 và p2 : K2 của cùng một hệmạng điều kiện - biến cố được gọi là đẳng cấu nếu mạng hiện K1 là-đẳng
cấu với mạng hiện K2và: x K1: p1(x) = p2((x)).
Từ đây ta không phân biệt các quá trình đẳng cấu mà ta có thể hiểuhoặc là lớp các tương đương các quá trình đẳng cấu với nhau hoặc là một đạidiện nào đó của lớp này
Trang 40Một quá trình p : K thường được biểu diễn bởi tập hợp các cặp
{(x, p(x)) x K} Các hệ mạng điều kiện - biến cố an toàn được đặc trưng
một cách đầy đủ bởi tập các quá trình của chúng
Định lý 4.11: Giả sử1, 2 là hai hệ mạng điều kiện - biến cố an toàn và giả
sử P i là tập các quá trình củai (i = 1, 2) Khi đó thì:
P1 = P2 1 = 2
Chứng minh:
Giả sử i = (B i , E i ; F i , C i ) , i = 1, 2 và giả sử 1 2 Không mất tính
tổng quát, có thể khẳng định là tồn tại b B1 B2 hoặc e E1 E2 hoặc
c C1 C2 mà b B1 \ B2 hoặc e E1 \ E2 hoặc (b, e) F1 \ F2 hoặc (e, b)
F2 \ F1 hoặc c C1 \ C2 Vậy thì sẽ có một bước c1[ e' > c2 trong hệ 1
nhưng không xảy ra trong hệ 2 Chẳng hạn, chọn b c1 c2 hoặc e' = e hoặc c = c1 hoặc c = c2một cách tương ứng
Với K = (S, {t}; F), giả sử p : K 1 là một quá trình mà p(K) = c1 và
Bổ đề 4.13: Giả sử p i : K i , i = 1, 2 là hai quá trình với p1(K1) = p2(K2)
Thế thì có đúng một mạng hiện K sai khác một đẳng cấu, với lát cắt D và quá trình p : K thoả mãn: p D- = p1 và p D+ = p2, trong đó D và D+ là tập
trước và tập sau của D.
Chứng minh: