aima.core.search.csp.Domain Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of aima-core Show documentation
Show all versions of aima-core Show documentation
AIMA-Java Core Algorithms from the book Artificial Intelligence a Modern Approach 3rd Ed.
package aima.core.search.csp;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import aima.core.util.ArrayIterator;
/**
* A domain Di consists of a set of allowable values {v1, ... , vk} for the
* corresponding variable Xi and defines a default order on those values. This
* implementation guarantees, that domains are never changed after they have
* been created. Domain reduction is implemented by replacement instead of
* modification. So previous states can easily and safely be restored.
*
* @author Ruediger Lunde
*/
public class Domain implements Iterable