Research Article
A Latent Implementation Error Detection Method for Software Validation
Algorithm 1
Counterexample-Guided Synchronous Simulation (CGSS).
| Given MS for a system model and ct for a counterexample trace, where: | | (1) Traces (MS), that is, (MS) and (MS), (); | | (2) ct could be specified as: (ct) and (ct), (); | | (3) (MS) ∩ (ct) = and (MS) ⊇ (ct) and ; | | Procedure CGSS { | | /* omit all internal actions in the counterexample trace */ | | ct_new = Trim (ct), where (ct_new) ⊆ LI (ct) ∪ LU (ct) | | /* based on ct _new trace to perform synchronous simulation with MS model */ | | for each pair (ct_new) starting from and (MS) starting from { | | /* the external trace of counterexample acts the same as the trace in MS, exit to report non-empty set */ | | if is the last action of ct_new and then return non-empty set; exit; | | /* omit considering internal actions and go for the next iteration */ | | if ∈ LE (MS) then ; continue; | | /* the same external action leads to one synchronous simulation step, and go for the next iteration */ | | if then , ; continue; | | /* the different external action leads to failure simulation, and exit to report empty set */ | | if then return empty set; exit; | | } // end of for each pair | | } // end of procedure |
|