Evolving algebras 1993: Lipari guide
Specification and validation methods
Better verification through symmetry
Formal Methods in System Design - Special issue on symmetry in automatic verification
An Algorithm for Subgraph Isomorphism
Journal of the ACM (JACM)
Generating finite state machines from abstract state machines
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
Korat: automated testing based on Java predicates
ISSTA '02 Proceedings of the 2002 ACM SIGSOFT international symposium on Software testing and analysis
dSPIN: A Dynamic Extension of SPIN
Proceedings of the 5th and 6th International SPIN Workshops on Theoretical and Practical Aspects of SPIN Model Checking
The Murphi Verification System
CAV '96 Proceedings of the 8th International Conference on Computer Aided Verification
Background, Reserve, and Gandy Machines
Proceedings of the 14th Annual Conference of the EACSL on Computer Science Logic
Proceedings of the 7th International SPIN Workshop on SPIN Model Checking and Software Verification
Online testing with model programs
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Symmetry in temporal logic model checking
ACM Computing Surveys (CSUR)
Efficient software model checking of data structure properties
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Domain-specific Model Checking Using The Bogor Framework
ASE '06 Proceedings of the 21st IEEE/ACM International Conference on Automated Software Engineering
Practical Model-Based Testing: A Tools Approach
Practical Model-Based Testing: A Tools Approach
Model-Based Software Testing and Analysis with C#
Model-Based Software Testing and Analysis with C#
FORTE '07 Proceedings of the 27th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
XRT-- Exploring Runtime for .NET Architecture and Applications
Electronic Notes in Theoretical Computer Science (ENTCS)
Symstra: a framework for generating object-oriented unit tests using symbolic execution
TACAS'05 Proceedings of the 11th international conference on Tools and Algorithms for the Construction and Analysis of Systems
An incremental heap canonicalization algorithm
SPIN'05 Proceedings of the 12th international conference on Model Checking Software
Protocol Modeling with Model Program Composition
FORTE '08 Proceedings of the 28th IFIP WG 6.1 international conference on Formal Techniques for Networked and Distributed Systems
Hi-index | 0.00 |
Modeling software features with model programs in C# is a way of formalizing software requirements that lends itself to automated analysis such as model-based testing. Unordered structures like sets and maps provide a useful abstract view of system state within a model program and greatly reduce the number of states that must be considered during analysis. Similarly, a technique called linearization reduces the number of states that must be considered by identifying isomorphic states, or states that are identical except for reserve element choice (such as the choice of object IDs for instances of classes). Unfortunately, linearization does not work on unordered structures such as sets. The problem turns into graph isomorphism, for which no polynomial time solution is known. In this paper we discuss the issue of state isomorphism in the presence of unordered structures and give a practical approach that overcomes some of the algorithmic limitations.