Test set coinduction - Toward automated verification of behavioural properties

Abstract Coinduction (co-induction) is considered to be a standard method for verifications of behavioural properties. However, users have to find a candidate for behavioural congruence relation (hidden congruence) for using coinducion. For expecting automatic support for coinduction, the candidate behavioural congruence relation is usually contextual equality. It is shown that a contextual equality which is also a behavioural congruence coincides with behavioural equivalence. This implies that users usually should find the behavioural equivalence for using coinduction. In this paper, we are going to propose a more systematic coinduction method. From the definition, behavioural equivalence is the conjunction over observational results through all observational contexts. Usually, there are redundant observational contexts. By analyzing the structure of the set of all observational contexts, we can eliminate these redundant observational contexts. We propose GAC algorithm which generates the contextual equality which coincides with the behavioural equivalence by eliminating the redundant observational contexts. The GAC algorithm uses rewrite techniques for eliminating the redundant observational contexts. We name the coinduction based on this GAC algorithm “test set coinduction” .