Authors:
Stefan D. Bruda
1
and
Tawhid Bin Waez
2
Affiliations:
1
Bishop’s University, Canada
;
2
Queen's University, Canada
Keyword(s):
Visibly pushdown languages, Multi-stack visibly pushdown languages, Closure properties, Shuffle, Formal methods, Compositional specification and verification.
Related
Ontology
Subjects/Areas/Topics:
Algorithms and Data Structures
;
Programming Languages
;
Software Engineering
;
Software Engineering Methods and Techniques
;
Software Testing and Maintenance
Abstract:
Visibly pushdown languages (VPL) were proposed as a formalism for specifying and verifying complex, recursive systems such as application software. However, VPL are unsuitable for compositional specification, as they are not closed under shuffle. Multi-stack visibly pushdown languages (MVPL) express naturally concurrent constructions. Concurrency cannot be expressed compositionally however, for MVPL are not closed under shuffle either. MVPL operations also restrict rigidly the input alphabets, which hinders the specification of dynamic threads; if we remove these restrictions MVPL loose almost all their closure properties. We find however a natural renaming process that yields disjoint MVPL operations. These operations eliminate the mentioned restrictions and creates closure under shuffle. This effort opens the area of MVPL-based compositional specification and verification.