Output File: Diagnosis file

The diagnosis file contains the list of candidate faults, the faults that are most likely to cause the observed behavior. The beginning of the diagnosis file tells you:

Diagnoses (details in file c432.results.pd):

and then begins to list faults and candidates like so:

(1) m76gat @ I101 > 2:2 2:3 2:5 2:7 3:3 3:4 3:5 3:6 3:7 14:3 14:5 14:6 18:2 18:3 44:2 44:3 44:4 44:6 44:7 48:3 48:6 50:2 50:3 50:6 50:7 67:3 67:4 67:5 70:2 70:3 :

1: m76gat @ I101 100 100 47 c
2: I249 @ I101 100 60 35 p
3: I44 @ I45 93 8 19 m
4: I137 @ I101 90 78 28 p
5: I558 @ I101 87 75 27 p
6: m1gat @ m76gat 87 60 44 p
7: m1gat @ I45 87 50 20 m
8: I306 @ I2 87 23 14 m
9: I446 @ I570 87 10 14 m
10: I306 @ m8gat 80 57 15 m

The (1) is the number of this fault, m76gat @ I101 , is the bridging fault we’re attempting to diagnose, and the rest of the line is vector:output pairs. This ends with a " : " by itself, and then the top ten (or whatever was specified by the –l option) diagnoses. Each candidate is weighted according to the three numbers at the end, and listed in order from highest to lowest by the first weight. The first weight is the percentage of the observed behavior that is contained within the candidate fault. The second weight is the percentage of candidate’s required vectors found in the observed behavior. The third weight is the percentage of candidate that is in the observed behavior (the converse of the first percentage). The c/p/m at the very end stands for complete, partial, and misleading diagnosis, respectively (see Definitions).