Bağlam sözdizimsel bir kavramdır. Bağlam, içinde bir delik bulunan bir terimdir. (Bazen çok delikli bağlamlar vardır, bu durumda tanım açıkça verilecektir.) Bağlamların sözdizimi, terimlerin sözdizimi alınarak ve bir alt terimin bir terim yerine bir delik olmasına izin vererek tanımlanır . BNF (I Boolean olmayan ve örnek için her getirmez tablolar halinde, örnek olarak lambda taşı kullanılmaktadır.):
C : : = [ ] | x | t[ ]
C: : = [ ] | X | tC∣ Ct ∣ λ x . C
Bir bağlamın tanımı ile birlikte, bir terimi bir bağlama koymanın tanımı gelir. Eğer bağlam ve T bir terimdir ve ardından Cı [ t ] konulması ile elde edilen bir terimdir t deliği burada söz dizimi ağacında [ ] olduğu C [ t ] . Bu temelde değişkenin tam olarak bir kez meydana geleceği garanti edilen bir ikamedir (ancak ikame edilen “değişken” in lambda hesabı veya terimlerin başka bir dilinde bir değişken değil , meta seviyesinde [ ]] bir değişken olduğunu unutmayın. t ).C[ ]tC[ t ]t[ ]C[ t ][ ]t
Anlambilimde çeşitli tanımları formüle etmek için bağlamlar kullanılır. Yaygın bir örnek, çoğu değerlendirme kavramının, değerlendirmenin yapılabileceği bağlamların tanımlanmasını içermesidir. Örneğin, lambda hesabını düşünün. Temel değerlendirme kavramı beta azaltma kuralı ile verilir:
burada M { x ← N } , M'ye uygulanan x ↦ N'nin ikamesidir.
( λ x . M)N-→βM{ x ← N}
M{ x ← N}x ↦ NM
tMN-xt = ( λ x . M)N-tt't'= ( λ x . M)N-tCMN-xt = C[ ( λ x . M)N-]C[ M{ x ← N} ]
( λ x . M)N-→βM{ x ← N}( β)M→βN-C[ M] →βC[ N]( γ)
( λ x . M)N-→βM{ x ← N}( β)M→βN-λ x . M→βλ x . N-( Cλ)M→βN-MP→βN-P( C@ <)M→βN-PM→βPN-( C@ >)
D : : = [ ] | x | tD ∣ Dt
( λ x . M)N-→n pM{ x ← N}M→n pN-D [ M] →n pD [ N]
( λ x . M)N-→n pM{ x ← N}( β)M→n pN-MP→n pN-P( C@ <)M→n pN-PM→n pPN-( C@ >)
D
V
V: : = X V1… Vn| Â x . M
E: : = [ ] | EE∣ EV
D( λ x . M)V→c b v aM{ x ← V}( βc b v a)M→βN-E[ M] →c b v aE[ N]( γc b v a)