Class DisjunctiveCauseCriterion

  • All Implemented Interfaces:
    Identification, Validation

    public final class DisjunctiveCauseCriterion
    extends Object
    implements Identification, Validation
    Validates inputs for the Disjunctive cause adjustment. Given that this criterion does not require a causal model, but merely an adjustment set that includes all causes of treatments or outcomes or both, this class can only perform basic validation. It is up to the caller to ensure all causes of treatments or outcomes or both have been correctly identified. For more information see VanderWeele and Shpitser (2011) - 'A new criterion for confounder selection'.
    • Constructor Detail

      • DisjunctiveCauseCriterion

        public DisjunctiveCauseCriterion​(Network network)
        Initializes a new instance of the DisjunctiveCauseCriterion class.
        Parameters:
        network - The Bayesian network.
    • Method Detail

      • getNetwork

        public Network getNetwork()
        The Bayesian network on which the identification is based.
        Specified by:
        getNetwork in interface Identification
      • identify

        public IdentificationOutput identify​(List<CausalNode> treatments,
                                             List<CausalNode> outcomes,
                                             List<CausalNode> nonTreatmentEvidence,
                                             IdentificationOptions options)
        Determines how to quantify a cause-effect relationship (for a particular criterion), but does not perform the actual estimation.
        Specified by:
        identify in interface Identification
        Parameters:
        treatments - One or more treatments/interventions (X).
        outcomes - One or more outcomes (effects), often denoted Y.
        nonTreatmentEvidence - Any other evidence other than interventions.
        options - Other options that govern how the calculations are performed. Some options are common to all criterion, and some will have additional options specific to that criterion.
        Returns:
        Information on how to calculate the requested cause-effect relationship.
      • identify

        public IdentificationOutput identify​(Evidence evidence,
                                             Distribution query,
                                             IdentificationOptions options)
        Determines how to quantify a cause-effect relationship (for a particular criterion), but does not perform the actual estimation.
        Specified by:
        identify in interface Identification
        Parameters:
        evidence - Evidence which contains both one or more interventions (treatments X), and optionally other standard (non-intervention) evidence.
        query - One or more outcomes (effects), often denoted Y.
        options - Other options that govern how the calculations are performed. Some options are common to all criterion, and some will have additional options specific to that criterion.
        Returns:
        Information on how to calculate the requested cause-effect relationship.
      • isValid

        public boolean isValid​(Evidence evidence,
                               Distribution query,
                               ValidationOptions options)
        Tests whether adjustment inputs are valid, without raising an exception. If invalid, you can also call com.bayesserver.causal.Validation#validate(IEvidence, IDistribution, IValidationOptions) 'Validate' to throw an exception which contains an error message.
        Specified by:
        isValid in interface Validation
        Parameters:
        evidence - Evidence which contains both one or more interventions (treatments X), and optionally other standard (non-intervention) evidence.
        query - One or more outcomes (effects) Y.
        options - Other options that govern how the calculations are performed. Some options are common to all criterion, and some will have additional options specific to that criterion.
        Returns:
        true if valid, false otherwise.
      • isValid

        public boolean isValid​(List<CausalNode> treatments,
                               List<CausalNode> outcomes,
                               List<CausalNode> adjusted,
                               ValidationOptions options)
        Tests whether adjustment inputs are valid, without raising an exception. If invalid, you can also call {@link com.bayesserver.causal.Validation#validate(IList{CausalNode}, IList{CausalNode}, IList{CausalNode}, IValidationOptions)} 'Validate' to throw an exception which contains an error message.
        Specified by:
        isValid in interface Validation
        Parameters:
        treatments - One or more treatments/interventions (X).
        outcomes - One or more outcomes (effects), often denoted Y.
        adjusted - Any non-treatment evidence.
        options - Other options that govern how the calculations are performed. Some options are common to all criterion, and some will have additional options specific to that criterion.
        Returns:
        true if valid, false otherwise.
      • validate

        public void validate​(Evidence evidence,
                             Distribution query,
                             ValidationOptions options)
        Tests whether adjustment inputs are valid, and throws an exception if not, with an error message.
        Specified by:
        validate in interface Validation
        Parameters:
        evidence - Evidence which contains both one or more interventions (treatments X), and optionally other standard (non-intervention) evidence.
        query - One or more outcomes (effects) Y.
        options - Other options that govern how the calculations are performed. Some options are common to all criterion, and some will have additional options specific to that criterion.
      • validate

        public void validate​(List<CausalNode> treatments,
                             List<CausalNode> outcomes,
                             List<CausalNode> nonTreatmentEvidence,
                             ValidationOptions options)
        Tests whether adjustment inputs are valid, and throws an exception if not, with an error message.
        Specified by:
        validate in interface Validation
        Parameters:
        treatments - One or more treatments/interventions (X).
        outcomes - One or more outcomes (effects), often denoted Y.
        nonTreatmentEvidence - Any non-treatment evidence.
        options - Other options that govern how the calculations are performed. Some options are common to all criterion, and some will have additional options specific to that criterion.