| Algorithm 7. Pseudocode of CCDGA*. |
| CCDGA*(SD, obs, k) |
| Inputs: SD, system description in the form of CNF obs, observations of observed variables k, the number of diagnosis want to obtain Output: Ω, the diagnosis set consistent with SD and obs |
|
conflicts = {}, consistencies = {} do ω = A*_BEST_CANDIDATE(conflicts, consistencies, all_components) atom_true_clause = consistency variables or valid true clauses in the first consistency check conf_atom_clause = conflict variables or valid false clauses if(!CHECK_CONSISTENCY(SD, obs, ω)) conflicts t = conflicts + MIN_CONFLICTS (conf_atom_clause) consistencies = MAX_CONSISTENCIES(atom_true_clause) in the first consistency check else add ω into Ω while(size of Ω < k) return Ω |