essay · 2026-09-10
VDM SL program slicing technique implementation
Research into specification slicing for Vienna Development Method (VDM) shows that applying program-slicing techniques can significantly reduce complexity when dealing with executable specifications, which often suffer from readability issues similar to those found in standard imperative programming languages. The core method involves defining a "slicer" specifically tailored to VDM-SL's unique syntax and state-update mechanisms, allowing developers to isolate only the parts of an operation that are relevant for debugging or maintaining specific internal states rather than processing entire function bodies blindly. This matters because executable specifications enable early validation but create new challenges where long chains of imperative statements obscure the logical flow, making it hard to trace exactly which lines affect a given piece of state without manual analysis tools. For instance, existing implementations like ViennaTalk can host such slicers that apply these principles directly to VDM-SL codebases, offering a practical way to manage complexity in formal development environments where precise state tracking is critical for correctness guarantees.
Sources
- Specification Slicing for VDM-SL — 2024-10-04T06:35:01Z
- Specification Slicing for VDM-SL
- [2410.03180] Specification Slicing for VDM-SL
- (PDF) Specification Slicing for VDM-SL
- Specification Slicing for VDM-SL Tomohiro Oda1 and Han-Myung Chang2
- Vienna Development Method - Wikipedia
- vdm-sl · GitHub Topics · GitHub
- [PDF] Specification Slicing for VDM-SL | Semantic Scholar