1. Conditional transition systems with upgrades
- Author
-
Sebastian Küpper, Alexandra Silva, Barbara König, and Harsh Beohar
- Subjects
FOS: Computer and information sciences ,Computer science ,Distributive lattice ,0102 computer and information sciences ,02 engineering and technology ,Mathematical proof ,Topology ,Encryption ,01 natural sciences ,Computer Science - Software Engineering ,Software ,020204 information systems ,Lattice (order) ,0202 electrical engineering, electronic engineering, information engineering ,Bisimulation ,business.industry ,D.2.4 ,020207 software engineering ,Algebra ,Software Engineering (cs.SE) ,Formalism (philosophy of mathematics) ,Informatik ,F.3.1 ,010201 computation theory & mathematics ,business - Abstract
We introduce a variant of transition systems, where activation of transitions depends on conditions of the environment and upgrades during runtime potentially create additional transitions. Using a cornerstone result in lattice theory, we show that such transition systems can be modelled in two ways: as conditional transition systems (CTS) with a partial order on conditions, or as lattice transition systems (LaTS), where transitions are labelled with the elements from a distributive lattice. We define equivalent notions of bisimilarity for both variants and characterise them via a bisimulation game.\ud \ud \ud \ud We explain how conditional transition systems are related to featured transition systems for the modelling of software product lines. Furthermore, we show how to compute bisimilarity symbolically via BDDs by defining an operation on BDDs that approximates an element of a Boolean algebra into a lattice. We have implemented our procedure and provide runtime results.\ud \ud \ud \ud This is an extended version of the TASE 2017 paper [1], including all proofs, additional examples, an extension of the formalism to account for deactivation of updates and detailed runtime results.
- Published
- 2020