Conflict
Description : This program tests for non-conflicting languages for the
two given FSMs. The machine hg.conf.fsm contains traces
that violate the non-conflicting condition, namely, those
_____ _____ ________________
in (Lm(H) /\ Lm(G)) \ (Lm(H) /\ Lm(G))
The program requires that both input machines are trim.
The program will assume that the machines are accessible
and will check if they are co-accessible. If the machines
aren't co-accessible, they are made so and a warning is
issued.
Input : h.fsm - Input FSM1
g.fsm - Input FSM2
Output : hg_conf.fsm - Conflicting traces
Example
|
H |
G |
Output machine |
|
|
|
|
(a) is a conflicting trace, and that fact is demonstrated by the fact that (a) appears as a trace in the output machine. Notice that (t1->t2) is non-conflicting because it ends up in a marked state. The machines must be trim for this test.