2.3.3.1. Trừu tượng hóa ngữ nghĩa vết bằng bao đóng phản xạ bắc cầu (RTC)
Sử dụng các phân đoạn vết để biểu diễn thuộc tính của chương trình rất chính xác nhưng đôi khi không cần thiết, một số các bước trung gian trong phân đoạn vết có thể không liên quan tới thuộc tính cần xem xét. Một phương pháp trừu tượng là chỉ xem xét các trạng thái khởi tạo và các trạng thái kết thúc như sau.
∗( ) = { ⃗( )| ∈ } với ⃗( … ) = 〈 , 〉
Nhận thấy ∗(Σ∗⃗) là một bao đóng phản xạ bắc cầu ∗ của quan hệ dịch chuyển . Tức là với mỗi cặp 〈 , ’〉 có một đường dẫn hữu hạn trong đồ thị = 〈Σ, Σ , 〉 đi từ đỉnh tới đỉnh ’ thông qua các cung của : 〈 , 〉 ∈ ∗ khi và chỉ khi ∃ , … , ∈ Σ: = ∧ … ∧ 〈 , 〉 ∈ ∧ … ∧ = .
Do vậy, nếu là một tập hợp các cặp trạng thái khởi tạo và kết thúc, thì mô tả một tập hợp các phân đoạn vết trong đó các trạng thái trung gian của mỗi phân đoạn vết được bỏ qua. Định nghĩa hàm ∗( ) như sau.
∗( ) = { | ⃗( ) ∈ } = { … |〈 , 〉 ∈ }
Do đó nếu là một tập hợp phân đoạn vết thì được xấp xỉ như trên bởi
∗( ) và ⊆ ∗( ∗( )).
2.3.3.2. Xác minh trên miền trừu tượng
Để trả lời câu hỏi trên miền cụ thể đôi khi có thể thay thế bằng việc trả lời câu hỏi trừu tượng trên miền ∗( ). Ví dụ một câu hỏi cụ thể như "Trên có một phân đoạn vết thỏa mãn , ’, ’’". Nếu không có một cặp như vậy trên miền ∗( ) thì có thể khẳng định sẽ không có một phân đoạn vết trên miền
∗( ∗( )) thỏa mãn các yêu cầu trong câu hỏi cụ thể, do đó cũng không có trên vì ⊆ ∗( ∗( )). Tuy nhiên, nếu có một cặp như vậy trên miền ∗( ) thì không thể kết luận được rằng có một vết như vậy trên X do vết này có thể nằm trên ∗( ∗( )) nhưng không nằm trên . Do đó có thể thấy câu trả lời trừu tượng đảm bảo được tính đủ nhưng đôi khi là không hoàn chỉnh. Tuy nhiên, nếu câu hỏi cụ thể là "Trên có một phân đoạn vết thỏa mãn , ’’ là các trạng thái khởi tạo và kết thúc hay không ?" thì câu trả lời trừu tượng là đủ và hoàn chỉnh.
2.3.3.3. Thỏa mãn tính chất của kết nối Galois
Nội dung phần này chỉ ra việc trừu tượng hóa ngữ nghĩa vết bởi bao đóng phản xạ bắc cầu thỏa mãn tính chất của một kết nối Galois.
Thật vậy, cho tập bất kì các phân đoạn vết và là tập các cặp trạng thái, chúng ta có :
∗( ) ⊆ ⟺ { ⃗( )| ∈ } ⊆
∀ ∈ : ⃗( ) ∈ ⇔ ⊆ { | ⃗( ) ∈ } ⊆ ∗( )
Do đó ∗( ) ⊆ khi và chỉ khi ⊆ ∗( ) ( là đặc tính của kết nối Galois).
Kết nối Galois bảo toàn phép hợp trong đó
∗(⋃∈∆ ) = { ⃗( )| ∈ ⋃∈∆ } = ⋃∈∆{ ⃗( )| ∈ }= ⋃∈∆ ∗( ).
2.3.3.4. Biểu diễn ngữ nghĩa RTC dưới dạng điểm cố định
Do ngữ nghĩa vết có thể biểu diễn dưới dạng điểm cố định và ngữ nghĩa bao đóng phản xạ bắc cầu là một trừu tượng hóa từ ngữ nghĩa vết bởi kết nối Galois
nên chúng ta cũng có thể biểu diễn ngữ nghĩa trừu tượng này dưới dạng điểm cố định.
Chúng ta có ∅ ⊆ ∗(∅) do ∗(∅) ⊆ ∅, chứng tỏ ∗(∅) = ∅ do tính phản xứng.
Với mọi tập các phân đoạn vết, chúng ta có tính chất chuyển đổi :
∗ ℱ∗⃗( ) = ∗({ | ∈ Σ} ∪ { | ∈ ∧ 〈 , ′〉 ∈ }) = { ⃗( )| ∈ Σ} ∪ { ⃗( )| ∈ ∧ 〈 , ′〉 ∈ } = {〈 , 〉| ∈ Σ}⋃{〈 , ′〉|∃ : ∈ ∧ 〈 , ′〉 ∈ } = 1 ⋃{〈 , ′〉|∃ : 〈 , 〉 ∈ ∗( ) ⊆ } ∧ 〈 , ′〉 ∈ với 1 = {〈 , 〉| ∈ } = 1 ⋃ ∗( )° = ℱ∗( ∗( )) với ℱ∗( ) = 1 ∪ ° Bằng phép lặp, ta có hàm lặpℱ∗→ (∅) của ℱ∗⃗ và hàm lặp ℱ∗ (∅) của ℱ∗ có quan hệ với nhau thông qua ∗. Về cơ bản ta có ∗ ℱ∗→ (∅) = ∅ = ℱ∗ (∅). Với các bước đệ quy, nếu ∗ ℱ∗→ (∅) = ℱ∗ (∅) thì ∗ ℱ∗→ (∅) =
∗ ℱ∗⃗( ) ℱ∗→ (∅) = ℱ∗( ) ∗ ℱ∗→ (∅) = ℱ∗ ℱ∗ (∅) =ℱ∗ (∅) . Theo đó,
∗ Σ∗⃗ = ∗ ∅⊆ℱ∗⃗ = ∗ ⋃ ℱ∗→ (∅) = ⋃ ∗(ℱ∗→ (∅)) = ⋃ ℱ∗ (∅) = ∅⊆ℱ∗. Kết quả này được tổng quát và biết đến như là lý
thuyết chuyển đổi điểm cố định (fixpoint transfer).
Ta thấy rằng nếu Σ là hữu hạn thì định nghĩa điểm cố định cung cấp một thuật toán lặp cho việc tính toán bao đóng phản xạ bắc cầu của một quan hệ dạng = ∅, … , = ℱ∗ , …cho đến khi +1 = = ∅⊆ℱ∗= ∗.
2.3.3.5. Ngữ nghĩa tới được dưới dạng trừu tượng hóa của ngữ nghĩa RTC
Ngữ nghĩa tới được của hệ dịch chuyển = 〈Σ, Σ , 〉 là tập { |∃ ∈ Σ : 〈 , ′〉 ∈ ∗} các trạng thái mà tới được từ các trạng thái khởi tạo Σ . Đây là một trừu tượng ∎( ∗) của ngữ nghĩa bao đóng phản xạ bắc cầu ∗ bằng định
nghĩa ảnh phải (right-image) [ ] = { |∃ ∈ : 〈 , ′〉 ∈ } của tập bởi quan hệ và
∎( ) = [ ]Σ = { |∃ ∈ Σ : 〈 , ′〉 ∈ }
Lấy ∎( ) = {〈 , 〉| ∈ Σ ⟹ ′ ∈ }. Chúng ta có kết nối Galois:
∎( ) ⊆ ⇔ { |∃ ∈ Σ : 〈 , ′〉 ∈ } ⊆ ⇔ ∀ : ∀ ∈ Σ : 〈 , 〉 ∈ ⇒ ∈
⇔ ∀〈 , 〉 ∈ : ∈ Σ ⇒ ∈
⇔ ⊆ {〈 , 〉 ∈ Σ ⇒ ∈ } ⇔ ⊆ ∗( )
2.3.3.6. Biểu diễn ngữ nghĩa tới được dưới dạng điểm cố định
Để xây dựng tính chất chuyển đổi, chứng minh như sau :
∎ ℱ∗( )
= { |∃ ∈ Σ : 〈 , 〉 ∈ (1 ∪ ° )}
= { |∃ ∈ Σ : = } ∪ { |∃ ∈ Σ : ∃ : 〈 , 〉 ∈ ∧ 〈 ′′, 〉 ∈ } = Σ ∪ { |∃ ∈ ∎( ) ∧ 〈 ′′, ′〉 ∈ }
= ℱ∎ ∎( )
Bằng lý thuyết chuyển đổi điểm cố định suy ra ∎( ∗) = ∎
∅⊆ℱ∗ =
∅⊆ℱ∎.
Nếu Σ là hữu hạn thì sẽ có một thuật toán lặp tiến tới (do ∅⊆ℱ∎ = ⋃ ℱ∎ (∅)) có thể được sử dụng để kiểm tra tất cả các trạng thái tới được có thỏa mãn một đặc tả an toàn cho trước : : ∎( ∗) ⊆ ⟺ ∀ : ℱ∎ (∅) ⊆ hay không.
2.3.3.7. Ngữ nghĩa khoảng dưới dạng trừu tượng của ngữ nghĩa tới được
Trong trường hợp các trạng thái của một hệ thống dịch chuyển = 〈Σ, Σ , 〉 được sắp thứ tự đầy đủ 〈Σ, <〉 với các cực trị−∞ và+∞, ngữ nghĩa khoảng
| |( ∎( ∗)) của cung cấp các biên trên các trạng thái tới được ∎ ∗ | |( ) = [ , ]
Với ( ) là cận dưới đúng (cận trên đúng) của tập và ∅ = +∞( ∅ = −∞). Tất cả các khoảng trống [ . ℎ] vơi ℎ < được coi như
là [+∞, −∞]. Với định nghĩa hàm cụ thể hóa | |([ , ℎ]) ⊆ | |([ ′, ℎ′]) hoặc tương đương với ( ′ ≤ ∧ ℎ ≤ ℎ′). Chúng ta có kết nối Galois
| | ⊑ [ . ℎ] ⇔ [ , ] ⊑ [ , ℎ]
⇔ ≤ ∧ ≤ ℎ
⇔ ⊆ { ∈ Σ| ≤ ≤ ℎ} ⇔ ⊆ | |([ , ℎ])
Với định nghĩa ∐ ∈∆[ , ℎ ]= [ ∈∆ , ∈∆ℎ ], các tính chất đặc trưng của kết nối Galois bảo toàn các cận trên nhỏ nhất : | |(⋃∈∆ | |( )).
2.3.3.8. Biểu diễn ngữ nghĩa khoảng dưới dạng điểm cố định
Ta có | |(∅) = [+∞, −∞]. Hơn nữa :
| | ℱ∎( ) = | |(Σ ∪ [ ] ) = | |(Σ ) ⊔ | |( [ ] )
⊑ [ Σ , Σ ] ⊔ | | [ ]( | |( | |( ))) (theo định nghĩa | | và do ⊆ | |( | |( )) vì vậy [ ] ⊆ [ ]( | |( | |( ))))
⊑ ℱ| | | |( ) với định nghĩa ℱ| | sao cho [ Σ , Σ ] ⊔
| |° [ ]° | |( ) ⊑ ℱ| |( )
Chúng ta chỉ có một bán chuyển đổi (semi-commutation) | | ℱ∎( ) ⊑
ℱ| | | |( ) do vậy xấp xỉ điểm cố định là :
| | ∎( ∗) = | | ∅⊆ℱ∎ ⊑ [⊑ , ]ℱ| |. Do đó câu hỏi ∎( ∗) ⊆
| |( ) có câu trả lời đủ [⊑ , ]ℱ| | ⊑ trong miền trừu tượng.
2.3.3.9. Các thành phần trừu tượng
Chúng ta đã định nghĩa ba trừu tượng từ ngữ nghĩa vết Σ∗⃗của hệ dịch chuyển . Thiết kế này được cấu thành bởi các thành phần 〈 | | ° ∎ ° ∗, ∗° ∎° | |〉 của các kết nối Galois, và là một kết nối Galois do kết hợp các đối số liên tiếp dựa trên xấp xỉ đủ.