A system and method for direct black box system verification is provided.
For any property, a sequence of inputs for the black box is determined
that will verify that the system exhibits the property. Counterexamples of
the property are detected without inferring the black box's internal
structure; that is, the verification proceeds without identifying all
states and state transitions of the black box. A specification automaton
operable to exhibit undesirable system behavior is constructed and it is
then determined whether an accepting execution exists on the intersection
of the black box and the specification automaton. To determine whether
such an execution exists, the black box is configured such that it can be
reset to its initial state upon command and such that the system indicates
when an input is disabled from a current state. When an input is enabled,
the implementation transitions to the next state. If an input is disabled,
then there is no intersection on the input string. The inputs are
determined through a search of a specification automaton for accepting
sequences up to a given bound. The bound is the product of the number of
states of the black box and the specification automaton.
Un système et une méthode pour la vérification directe de système de boîte noire est fourni. Pour n'importe quelle propriété, on détermine un ordre des entrées pour la boîte noire qui vérifiera que le système présente la propriété. Des contre-exemples de la propriété sont détectés sans impliquer la structure interne de la boîte noire ; c'est-à-dire, la vérification procède sans identifier tous les états et transitions d'état de la boîte noire. Un automate de spécifications fonctionnel pour exhiber le comportement indésirable de système est construit et on le détermine alors si une exécution acceptante existe sur l'intersection de la boîte noire et de l'automate de spécifications. Pour déterminer si une telle exécution existe, la boîte noire est configurée tels qu'elle peut être remise à zéro à son état initial sur la commande et telles que le système indique quand une entrée est handicapée d'un état actuel. Quand une entrée est permise, les transitions d'exécution au prochain état. Si une entrée est handicapée, alors il n'y a aucune intersection sur la corde d'entrée. Les entrées sont déterminées par une recherche d'un automate de spécifications pour accepter des ordres jusqu'à une limite donnée. La limite est le produit du nombre d'états de la boîte noire et de l'automate de spécifications.