LTL ve CTL arasındaki fark nedir?


12

CTL'deki formül örneklerini zaten okudum, ancak LTL ve tersi değil, ama LTL formülleri üzerinde zihinsel bir kavrayış elde etmekte sorun yaşıyorum ve gerçekten de kalbin farkı nedir.


1
İnterweb'lerle ilgili bir sürü not bu konuyu ele alıyor. "LTL ve CTL arasındaki fark" için googled yaptınız mı?
Dave Clarke

1
Kripke yapıları üzerinde basit formüller yazmayı ve anlamlarını değerlendirmeyi deneyin.
Vijay D

Yanıtlar:


21

LTL ve CTL arasındaki farkı gerçekten anlamak için her iki dilin anlambilimini de incelemeniz gerekir. LTL formülleri, bir programın her yürütmesinde yorumlanacak özellikleri belirtir. Bir satırdaki bir olay veya durum dizisi olarak görülebilen her olası yürütme (bir çalışma) için - ve bu yüzden "doğrusal zaman" olarak adlandırılır - başka bir çalışmaya geçme olasılığı olmadan koşuda tatmin edilebilirlik kontrol edilir kontrol sırasında. Öte yandan, CTL semantiği olası tüm çalışmalarda bir formülü kontrol eder ve bir şubeye bakarken tüm olası çalışmaları ( A işleci) veya yalnızca bir çalışmayı ( E işleci) dener .

Uygulamada bu, her dilden bazı formüllerin diğer dilde belirtilemeyeceği anlamına gelir. Örneğin, reset özelliği (devre tasarımı için önemli bir erişilebilirlik özelliği) , hiçbir zaman gerçekte ulaşılmasa bile bir durum sırasında bir duruma ulaşma olasılığının her zaman olduğunu belirtir ( AG EF sıfırlama ). LTL, yalnızca sıfırlama durumuna ulaşıldığını söyleyebilir, ulaşılamaz.

Öte yandan, LTL, formül CTL tercüme edilemez. Bu formül stabilite özelliğini belirtmektedir: programın her yürütülmesinde, s son programı (ya da program sonsuza ise sonuna kadar doğru olacak hiç durdurur). CTL yalnızca çok katı ( AF AG ) veya çok geçirgen ( AF EG ) bir formül sağlayabilir . İkincisi açıkça yanlış. Birincisi için o kadar basit değil. Ancak AF AG ler hatalı. Üzerinde döngüler bir sistem düşünün A1 , gelen gidebilir A1 için B ve ardından gidecek A2sbir sonraki hamlede. Daha sonra sistem sonsuza dek A2 durumunda kalacaktır . Sonra "sistem sonunda bir A durumunda kalacaktır " türünde bir özelliktir . Bu özelliğin sistem üzerinde bulunduğu açıktır. Bununla birlikte, AF AG ler tam tersi olduğu için bu özelliği yakalayamaz: sistemin her zaman bir çalışmanın sonunda A olmayan bir duruma geçeceği durumda olacağı bir çalışma vardır .s

Bunun sorunuza cevap verip vermediğini bilmiyorum, ancak bazı yorumlar eklemek istiyorum.

Yazılım doğrulaması için özellikleri ifade etmek için en iyi mantık hakkında çok fazla tartışma var ... ama asıl tartışma başka bir yerde. CTL, bunları ifade etmek için yeni bir semantiğe (yeni bir tatmin edilebilirlik ilişkisi) sahip olması gerektiğinde, yazılım sistemi modellemesi (adalet) için önemli özellikleri ifade edebilir. Ancak CTL algoritmaları genellikle daha verimlidir ve BDD tabanlı algoritmalar kullanabilir. Yani ... en iyi çözüm yok. Şimdiye kadar sadece iki farklı yaklaşım.

Yorumculardan biri Vardi'nin "Doğrusal Zamana Karşı Dallanma: Son Karşılaşma" başlıklı makalesini önermektedir .


Vardi tarafından LTL vs CTL hakkında bir tartışma görmek: "Branching vs Linear Time: Final Showdown"
Guy

bir demet teşekkürler, tam olarak aradığım fikir budur!
Anonim Korkak

1

Bir nesne verilirse (örn. LTL durumunda iz), zamandaki her nokta için sadece bir geleceği düşünürsünüz , CTL'de çok sayıda var.

Özellikle, nextLTL'de benzersiz bir eylem sağlar, ancak (potansiyel olarak) CTL'de bir set oluşturur.


6
Ancak LTL formülünü tipik olarak yalnızca bir sistemden ziyade sistemin tüm çalışmalarına uygular ve böylece gelecekteki bir / birçok sorun arasındaki boşluğu kapatırsınız. LTL'nin doğrusal zamanla, CTL'nin dallanma zamanı ile uğraştığını söylemek daha kesin olacaktır.
Dave Clarke

4
Diyelim ki LTL'de bir geleceğin CTL'de tek bir eyalet olduğunu söylemek gibidir. Memnuniyet bu şekilde tanımlanır. Kaç tane gelecekle ilgili değil, geleceğin yapısı ile ilgili. Birinde bir iz, diğerinde bir ağaç var.
Vijay D

@Vijay - aslında yapı önemlidir. Örneğin, bir LTL formülü alamazsınız, FGp -> AF AG p gibi dönüştürür ve eşdeğer bir CTL formülü elde edemezsiniz (bu iki formül eşdeğer değildir; üstelik FGp CTL'de ifade edilemez ve AF AG p LTL'de ifade edilemez ).
jkff

OP'nin resmi tanıma aşina olduğunu ve bir tür sezgi istediğini, dolayısıyla denememi varsaydım. Bu cevap "model başına bir gelecek" diyerek kurtarılabilir mi?
Raphael

OP'nin ne bildiğini söyleyemem. Örneğin, her durumda bir modelin ne olduğu açık mı?
Vijay D
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.