function isDLGoal = isDeadLogicGoal(goal)
% isDeadLogicGoal: Given a particular goal, checks whether this goal
% corresponds to one corresponding to dead logic
% This function assumes that we are doing Design Error Detection

% Copyright 2019-2022 The MathWorks, Inc.

    covPt = goal.up;
    isDLGoal =  isa(covPt, 'sldv.datamodel.mfzero.Decision') || ...
                isa(covPt, 'sldv.datamodel.mfzero.Condition') || ...
                isa(covPt, 'sldv.datamodel.mfzero.McdcExpr') || ...
               any(strcmp(goal.type, {'AVT_GOAL_SFCN_COND', ...
                                      'AVT_GOAL_SFCN_DEC', ...
                                      'AVT_GOAL_SFCN_MCDC'...
                                      'AVT_GOAL_CODE_COND', ...
                                      'AVT_GOAL_CODE_DEC', ...
                                      'AVT_GOAL_CODE_MCDC'}));
end
