Küçük ve büyük adımlı işlemsel anlambilim arasındaki temel farklar nelerdir?
Ne olduğunu ve ikisine sahip olma motivasyonunu kavramakta zorlanıyorum.
x = 0; while ( true ) { x = x + 1; }
nedir?
Küçük ve büyük adımlı işlemsel anlambilim arasındaki temel farklar nelerdir?
Ne olduğunu ve ikisine sahip olma motivasyonunu kavramakta zorlanıyorum.
x = 0; while ( true ) { x = x + 1; }
nedir?
Yanıtlar:
Küçük adımlı anlambilim, her seferinde bir hesaplama adımındaki ifadeleri değerlendirmek için bir yöntem tanımlar. Resmen konuşmak gerekirse, ifade dili için küçük adımlı bir anlambilim bir ilişkidir → : E × E , redüksiyon ilişkisi olarak adlandırılır . Küçük adımlı anlambilim, bir ifadeye ne olduğunu ayrıntılı olarak açıklar. Sonsuz bir zincir e 0 → e 1 → e 2 → … zincirleriyle birlikte, sonlandırılmayan programları bile kesin olarak açıklayabilir . Sonlandırma programı öyle birdir ki e 0 → e 1 → that → vbir ile sonlandırıldığında değer bu şekilde ∀ e ' ∈ D , V ↛ e ' .
Spektrumun diğer ucunda, terimsel anlambilim vardır . Terimsel anlambilim, her ifadeye bir "anlam" atar. Bu ifadelerden ifadelere kadar bir işlevdir: ( D etki alanı olarak adlandırılır). Belirtilerin alanı, sözdizimsel alan ile tamamen ilişkili olmayabilir, örneğin E , bir sayıya göre değerlendirilen ifadelerolabilirve D , N veya R gibi bir sayı kümesi olabilir.
Büyük adımlı anlambilim, ortada birazdır. Bir ifade dili ile ilgili büyük adımlı bir anlambilim ve V değerleri kümesi; ⇓ : E × V ilişkisidir . Bir ifadeyi değeriyle ilişkilendirir (dil deterministik değilse, muhtemelen çoklu değerler). Genellikle, sonlandırılmayan ifadeler için özel bir değer ⊥ kullanılır.
Öyleyse neden bu üç düşünceye sahibiz? Bu kavramların hepsi birbirini modelleyebilir, ancak model bir karmaşıklık derecesi ekler.
İşlemsel olarak konuşursak, küçük adımlı semantik, dil için bir tercüman tarafından gerçekleştirilen her operasyona bakmaya karşılık gelir. Büyük adımlı anlambilim yalnızca elde edilen değere bakar. Tasavvufî anlambilim, bilgisayarda olanlarla bir ilgisi olabilecek veya olmayabilecek bir matematiksel yorumlamaya bakar.
Küçük adımlı anlambilim en açık olanıdır. Sonlandırılmayan programlar hakkında açıkça faydalı bilgiler sağlar. Daha genel olarak, programın davranışı hakkında ayrıntılı bilgi sağlar.
Anlamsal anlambilim, sözdizimsel yapıları keyfi matematiksel nesnelere dönüştürür; bilim insanlarının istediği şeyi ifade edebilir (bir ifadenin işaretini ondan tüm olası indirgeme zincirleri olarak tanımlayabilirsiniz), ancak bir karmaşıklık düzeyi eklemenin bedeli olarak. İfadenin tam olarak nasıl değerlendirildiği gibi bazı detayları soyutlamak istediğimizde kullanılır.
Büyük adımlı anlambilim ortadadır: değerlendirmenin ayrıntılarını soyutlar ancak sonucun sözdizimsel yapısını korur. Genellikle konsept, temelde “ ” ifadelerini açıklamanın bir yolu olarak, küçük adımlı bir anlambilim olduğunda kullanılır. ′ ”Olarak“ e ⇓ e n”. Bu tür yapılarda, kavramlar çok farklı olsa da (biri bireysel hesaplama adımları ve sonlandırılmayan programlar hakkında konuşmamıza izin verirken, biri değil), tanımları çok benzer görünecektir çünkü bu durumda büyük-adım anlambilimi temel olarak “eğer ve… ve e n → ∗ v ve v , e 1 ⇓ v ” şeklinde bir değerdir .
3
içinde ((2+1)+1)⇓3
'büyük adım' ille o doğrudan eşleme olmaz bazı sonu tüm değerdir, ama ne örneği de 'denotasyonel' I tahmin ediyorum? Farkın, (a + 1)
içerdiği ortama bağlı olarak, bağlamla bir ilgisi var mı a
?
3