package aima.core.probability.bayes; import aima.core.probability.CategoricalDistribution; import aima.core.probability.Factor; import aima.core.probability.proposition.AssignmentProposition; /** * Artificial Intelligence A Modern Approach (3rd Edition): page 512.<br> * <br> * A Conditional Probability Table, or CPT, can be used for representing * conditional probabilities for discrete (finite) random variables. Each row in * a CPT contains the conditional probability of each node value for a * <b>conditioning case</b>. * * @author Ciaran O'Reilly */ public interface ConditionalProbabilityTable extends ConditionalProbabilityDistribution { @Override CategoricalDistribution getConditioningCase(Object... parentValues); @Override CategoricalDistribution getConditioningCase( AssignmentProposition... parentValues); /** * Construct a Factor consisting of the Random Variables from the * Conditional Probability Table that are not part of the evidence (see * AIMA3e pg. 524). * * @param evidence * @return a Factor for the Random Variables from the Conditional * Probability Table that are not part of the evidence. */ Factor getFactorFor(AssignmentProposition... evidence); }