From diagnosis of active systems to incremental determinization of finite acyclic automata
A non-functional requirement for model-based diagnosis of active systems is efficient determinization of acyclic automata. In literature, determinization of finite automata is performed by the Subset Construction algorithm (SC): given a nondeterministic automaton N, an equivalent deterministic automaton D is generated, with each state in D being a subset of states in N. However, SC is conceived for monolithic determinization, when N is completely specified. By contrast, monitoring-based diagnosis of active systems requires incremental determinization. We consider the Incremental Determinization Problem for finite acyclic automata: after extending the acyclic automaton N to N' by Delta N (by new transitions and, possibly, new states), we require N' to be determinized into D' based on D and Delta N. Although this problem can be naively solved by applying SC to N' (thereby disregarding both D and Delta N), this solution is bound to lead to poor performances, as it does not exploit the incremental nature of N'. Therefore, an incremental algorithm is proposed, called ISCA, which extends D into D' based on Delta N, rather than starting from scratch the determinization of N'. ISCA is a general-purpose algorithm. Evidence from experiments indicates that, in time, ISCA is significantly more efficient than SC in solving incremental determinization problems.
diagnosis active systems determinization acyclic automata monitoring discrete-event systems temporal observations incremental techniques