Dalam makalah "A Datatype JSON Replicated-Free Replicated" , saya menemukan notasi ini untuk mendefinisikan secara resmi "aturan":
Apa sebutan notasi ini? Bagaimana saya membacanya?
Sebagai contoh:
- yang
DOC
aturan tidak memiliki apa-apa di "pembilang" nya - mengapa tidak? - yang
EXEC
danGET
aturan tampaknya memiliki dua istilah yang terpisah di atas garis, apa itu berarti? - yang
VAR
aturan menonjol sedikit juga, karena sementara banyak aturan lainnya menggunakan semacam panah (yang saya akan ambil untuk berarti "menyiratkan") di bagian atas yang satu ini hanya tampaknya mengatakan bahwa x adalah elemen dari sesuatu. - hampir semuanya dibumbui dengan inisial
Ap,
yang digambarkan teks sebagai "keadaan replika p dijelaskan oleh Ap, fungsi parsial terbatas" - bagaimana pembaca yang cerdas dari notasi ini cenderung "melihat" bagian dari setiap aturan?
Situs ini memang menyarankan pertanyaan terkait yang memiliki beberapa notasi yang tampak sangat mirip, pada pertanyaan. Apa pentingnya ⟨B, s⟩ -> ⟨B ', s'⟩ sebagai aturan awal dalam pertanyaan ini tentang langkah kecil semantik? - ini ditandai sebagai semantik Operasional , dan yang tampaknya menjadi petunjuk kuat. Apakah itu memang kerangka di mana saya harus menafsirkan angka-angka ini? Bisakah Anda dengan mudah merangkum ini dalam bentuk "kursus kilat" sehingga, bahkan jika saya tidak dapat memverifikasi kebenaran bukti mereka, saya setidaknya bisa mendapatkan sedikit lebih banyak pemahaman tentang apa yang mereka katakan di bagian ini?
Berikut adalah penjelasan yang sangat informal yang mungkin membantu orang yang tidak terbiasa dengan notasi formal untuk mendapatkan kesempatan. Itu tidak menggantikan definisi formal!
The Ap adalah keadaan sistem atau program Anda berjalan. "Status" dapat berarti banyak hal, tetapi dalam kasus ini tampaknya menyertakan daftar semua variabel lokal yang ditentukan dan nilainya. Mengapa Ap berfungsi? Karena itu cara yang mudah untuk mengekspresikan penugasan variabel: Ap (x) memberikan nilai variabel x .
Sekarang, mari kita ambil aturan EXEC sebagai contoh. Ini mendefinisikan semantik mengeksekusi perintah cmd1 diikuti oleh cmd2 perintah , yaitu, apa yang terjadi dengan keadaan Ap sistem ketika menjalankan cmd1 diikuti oleh cmd2 .
Aturan lain menggambarkan semantik dari perintah dan ekspresi individu. Sebagai contoh, aturan VAR menjelaskan apa artinya "mengeksekusi" suatu variabel: Jika x adalah variabel lokal (di atas garis), lalu apa artinya mengevaluasi / mengeksekusi variabel x ? Itu ditulis di bawah garis: Ketika program Anda dalam keadaan Ap , mengevaluasi x memberi Anda nilai x , yaitu Ap (x) .
Saya harap itu membantu.
sumber