跳至內容

英文维基 | 中文维基 | 日文维基 | 草榴社区

線性時序邏輯

維基百科,自由的百科全書

線性時序邏輯(英語:linear temporal logic,LTL),或稱線性時態邏輯,是一種模態時態邏輯。其時態運算符限定於描述從一個給定的狀態開始的某一條路徑上的事件。[1][2][3][4]線性時序邏輯由阿米爾·伯努利在1977年提出。[5]線性時序邏輯和計算樹邏輯英語Computation tree logic兩者可以歸入更廣義的CTL*英語CTL*中。

語法和語義

[編輯]

一個線性時序邏輯公式由以下三種要素構成:[6][3]

時態運算符的語義如下表所示,其中 φψ 為原子命題變量:

字母表示 符號表示 說明 克里普克路徑示意圖
一元運算:
X φ neXt(下一刻): φ 在下一時刻為真 LTL next operator
F φ Finally(最終): φ 在以後某個時刻(最終)會真 LTL eventually operator
G φ Globally(總是): 從當前時刻起, φ 總是為真 LTL always operator
二元運算:
ψ U φ Until(直到): ψ 總是為真,直到某一時刻φ 為真;該時刻可以為當前時刻或者以後某個時刻 LTL until operator
ψ R φ Release(釋放): φ 總是為真,直到某一時刻ψφ 同時為真;如果ψ 從未為真,則φ 必須保持永遠為真 LTL release operator (which stops)

LTL release operator (which does not stop)

ψ W φ Weak until(弱直到): ψ 總是為真,直到某一時刻φ 為真;如果φ 從未為真,則ψ 必須保持永遠為真 LTL weak until operator (which stops)

LTL weak until operator (which does not stop)

ψ M φ Strong release(強釋放): φ 總是為真,直到某一時刻ψφ 同時為真;該時刻可以為當前時刻或者以後某個時刻 LTL strong release operator

其中,時態運算符「釋放」R,「最終」F,「總是」G可分別定義為:

  • ψ R φ ≡ ¬(¬ψ U ¬φ)
  • F ψtrue U ψ
  • G ψfalse R ψ ≡ ¬F ¬ψ

此外,時態運算符「弱直到」W和「強釋放」M對偶關係,可分別定義為:[7]

  • ψ W φ ≡ (ψ U φ) ∨ G ψψ U (φG ψ) ≡ φ R (φψ)
  • ψ M φ ≡ ¬(¬ψ W ¬φ) ≡ (ψ R φ) ∧ F ψψ R (φF ψ) ≡ φ U (ψφ)

等價變換

[編輯]
分配律
X (φ ∨ ψ) ≡ (X φ) ∨ (X ψ) X (φ ∧ ψ)≡ (X φ) ∧ (X ψ) XU ψ)≡ (X φ) U (X ψ)
F (φ ∨ ψ) ≡ (F φ) ∨ (F ψ) G (φ ∧ ψ)≡ (G φ) ∧ (G ψ)
ρ U (φ ∨ ψ) ≡ (ρ U φ) ∨ (ρ U ψ) (φ ∧ ψ) U ρ ≡ (φ U ρ) ∧ (ψ U ρ)
  • 邏輯「非」運算
邏輯「非」運算
X對偶 FG 對偶 UR 對偶 WM 對偶
¬X φ ≡ X ¬φ ¬F φ ≡ G ¬φ ¬ (φ U ψ) ≡ (¬φ R ¬ψ) ¬ (φ W ψ) ≡ (¬φ M ¬ψ)
¬G φ ≡ F ¬φ ¬ (φ R ψ) ≡ (¬φ U ¬ψ) ¬ (φ M ψ) ≡ (¬φ W ¬ψ)
  • 特殊時態屬性
特殊時態屬性
F φ ≡ F F φ G φ ≡ G G φ φ U ψ ≡ φ UU ψ)
φ U ψ ≡ ψ ∨ ( φ ∧ XU ψ) ) φ W ψ ≡ ψ ∨ ( φ ∧ XW ψ) ) φ R ψ ≡ ψ ∧ (φ ∨ XR ψ) )
G φ ≡ φ ∧ X(G φ) F φ ≡ φ ∨ X(F φ)

特性表達

[編輯]

有兩種主要特性可以使用線性時序邏輯來表達:[10][11]

  • 安全性(safety):即某種不良性質 φ 永不出現,G¬ϕ
  • 活性(liveness)<:即某種良好的性質 ψ 一直保持,GFψG(ϕFψ)

參見

[編輯]

參考文獻

[編輯]
  1. ^ Logic in Computer Science: Modelling and Reasoning about Systems: page 175
  2. ^ Linear-time Temporal Logic. [2012-03-19]. (原始內容存檔於2017-04-30). 
  3. ^ 3.0 3.1 Li Xi. 嵌入式系统的属性与验证 (PDF). 中國科學技術大學: 12. [2022-08-07]. (原始內容存檔 (PDF)於2022-08-04). 
  4. ^ 陳志遠; 黃少濱,韓麗麗. 现代模态逻辑在计算机科学中的应用研究. 計算機科學. 2013, 40 (6A) [2022-08-07]. (原始內容存檔於2022-08-04). 
  5. ^ Amir Pnueli, The temporal logic of programs. Proceedings of the 18th Annual Symposium on Foundations of Computer Science (FOCS), 1977, 46–57. doi:10.1109/SFCS.1977.32
  6. ^ Sec. 5.1 of Christel Baier and Joost-Pieter Katoen, Principles of Model Checking, MIT Press Archived copy. [2011-05-17]. (原始內容存檔於2010-12-04). 
  7. ^ Sec. 5.1.5 "Weak Until, Release, and Positive Normal Form" of Principles of Model Checking.
  8. ^ V.S. Alagar; K. Periyasamy. Specification of Software Systems. Springer. 2012: 186. ISBN 1475729219. 
  9. ^ Fred Kroger; Stephan Merz. Temporal Logic and State Systems. Springer. 2008: 417–418. ISBN 3540674012. 
  10. ^ Bowen Alpern, Fred B. Schneider, Defining Liveness, Information Processing Letters, Volume 21, Issue 4, 1985, Pages 181-185, ISSN 0020-0190, https://doi.org/10.1016/0020-0190(85)90056-0
  11. ^ Bowen Alpern; Fred B. Schneider. Recognizing safety and liveness (PDF). Distributed Computing. 1987 [2022-08-07]. (原始內容存檔 (PDF)於2022-07-21).