A B C D E F G H I L M N P Q R S T V W Y Z 
All Classes All Packages

A

AbstractPuzzleGenerator<P> - Class in zebra4j
 
AbstractPuzzleGenerator(Random, PuzzleSolution, Set<Fact.Type>) - Constructor for class zebra4j.AbstractPuzzleGenerator
 
add(Attribute...) - Method in class zebra4j.PuzzleSolutionBuilder
 
add(SolutionPerson) - Method in class zebra4j.PuzzleSolutionBuilder
 
addToModel(ZebraModel, Set<Attribute>, int) - Method in class zebra4j.AllDifferentType
 
addToModel(ZebraModel, Set<Attribute>, int) - Method in interface zebra4j.AttributeType
Adds rules related to the subset of attributes of this type used in a puzzle to the model describing the puzzle
addWithHouse(Attribute...) - Method in class zebra4j.PuzzleSolutionBuilder
 
addWithHouse(SolutionPerson) - Method in class zebra4j.PuzzleSolutionBuilder
 
AllDifferentType - Class in zebra4j
A type of attribute that is guaranteed to be different for all people
AllDifferentType() - Constructor for class zebra4j.AllDifferentType
 
answer(PuzzleSolution) - Method in class zebra4j.Question
Answers this question about the given solution, if applicable
appliesTo(Puzzle) - Method in class zebra4j.Question
 
appliesTo(PuzzleSolution) - Method in class zebra4j.fact.BothTrue
 
appliesTo(PuzzleSolution) - Method in class zebra4j.fact.Different
 
appliesTo(PuzzleSolution) - Method in interface zebra4j.fact.Fact
 
appliesTo(PuzzleSolution) - Method in class zebra4j.fact.NearbyHouse
 
appliesTo(PuzzleSolution) - Method in class zebra4j.Question
 
asList() - Method in class zebra4j.SolutionPerson
 
AT_HOUSE - Static variable in interface zebra4j.Attributes
 
AtHouse - Class in zebra4j
 
AtHouse(int) - Constructor for class zebra4j.AtHouse
 
Attribute - Interface in zebra4j
A known attribute for a person like a specific "name", "pet" or if the person is criminal
Attributes - Interface in zebra4j
A library of people attributes, demonstrating different ways to define them.
AttributeType - Interface in zebra4j
A type attribute for a person like a "name", "pet" or if the person is criminal
attributeTypes() - Method in class zebra4j.fact.BothTrue
 
attributeTypes() - Method in class zebra4j.fact.Different
 
attributeTypes() - Method in interface zebra4j.fact.Fact
 
attributeTypes() - Method in class zebra4j.fact.NearbyHouse
 
attributeTypes() - Method in class zebra4j.SolutionPerson
 

B

BasicAttributeType - Class in zebra4j
Defines an attribute type using a set of labels.
BasicAttributeType(Set<String>, String, String) - Constructor for class zebra4j.BasicAttributeType
 
basicPuzzle() - Static method in class zebra4j.Demo
Generates and solves a basic Puzzle with default configuration
BLUE - zebra4j.Clothes
 
BothTrue - Class in zebra4j.fact
 
BothTrue(Attribute, Attribute) - Constructor for class zebra4j.fact.BothTrue
 
build() - Method in class zebra4j.PuzzleSolutionBuilder
 

C

canEqual(Object) - Method in class zebra4j.BasicAttributeType
 
canEqual(Object) - Method in class zebra4j.SolutionPerson
 
Cli - Class in zebra4j
CLI for zebra4j
Cli() - Constructor for class zebra4j.Cli
 
Clothes - Enum in zebra4j
 
CLOTHES - Static variable in interface zebra4j.Attributes
Clothes attribute.
countSolutions(P) - Method in class zebra4j.AbstractPuzzleGenerator
 
countSolutions(Puzzle) - Method in class zebra4j.PuzzleGenerator
 
countSolutions(QuestionPuzzle) - Method in class zebra4j.QuestionPuzzleGenerator
 
createUniqueVariable(Attribute, int) - Method in class zebra4j.ZebraModel
Creates a variable for an attribute that can be held by only one person in the solution
Criminal - Enum in zebra4j
 
CRIMINAL - Static variable in interface zebra4j.Attributes
 
customQuestionPuzzle() - Static method in class zebra4j.Demo
Generates and solves a QuestionPuzzle with custom configuration

D

DEFAULT_FACT_TYPES - Static variable in class zebra4j.AbstractPuzzleGenerator
 
DEFAULT_TYPES - Static variable in interface zebra4j.Attributes
The set of attributes used by the demos
Demo - Class in zebra4j
Sample app
Demo() - Constructor for class zebra4j.Demo
 
describe(Locale) - Method in class zebra4j.fact.BothTrue
 
describe(Locale) - Method in class zebra4j.fact.Different
 
describe(Locale) - Method in interface zebra4j.fact.Fact
 
describe(Locale) - Method in class zebra4j.fact.NearbyHouse
 
describe(Locale) - Method in class zebra4j.Question
Converts the question to a natural language sentence
describeConstraints(Locale) - Method in class zebra4j.Puzzle
Describe in natural language the constraints that the solution must satisfy.
describeConstraints(Locale) - Method in class zebra4j.QuestionPuzzle
 
describeSet(Set<Attribute>, Locale) - Method in class zebra4j.AllDifferentType
 
describeSet(Set<Attribute>, Locale) - Method in interface zebra4j.AttributeType
Describe the given set of attributes in the form of sentence, in the given locale, describing a rule for solving a puzzle.
description(Locale) - Method in class zebra4j.AtHouse
 
description(Locale) - Method in interface zebra4j.Attribute
As in the sentence "Ivan is {description}"
description(Locale) - Method in enum zebra4j.Clothes
 
description(Locale) - Method in enum zebra4j.Criminal
 
description(Locale) - Method in enum zebra4j.PersonName
 
Different - Class in zebra4j.fact
 
Different(Attribute, Attribute) - Constructor for class zebra4j.fact.Different
 

E

ELENA - zebra4j.PersonName
 
equals(Object) - Method in class zebra4j.AtHouse
 
equals(Object) - Method in class zebra4j.BasicAttributeType
 
equals(Object) - Method in class zebra4j.fact.BothTrue
 
equals(Object) - Method in class zebra4j.fact.Different
 
equals(Object) - Method in class zebra4j.fact.NearbyHouse
 
equals(Object) - Method in class zebra4j.Puzzle
 
equals(Object) - Method in class zebra4j.PuzzleSolution
 
equals(Object) - Method in class zebra4j.Question
 
equals(Object) - Method in class zebra4j.QuestionPuzzle
 
equals(Object) - Method in class zebra4j.SolutionPerson
 

F

Fact - Interface in zebra4j.fact
A fact given as clues to the players
Fact.Type - Interface in zebra4j.fact
A type of facts
findAttribute(AttributeType) - Method in class zebra4j.SolutionPerson
 
findPerson(Attribute) - Method in class zebra4j.PuzzleSolution
Find a person based on an attribute

G

generate() - Method in class zebra4j.AbstractPuzzleGenerator
 
generate() - Method in class zebra4j.SolutionGenerator
 
generate(Map<AttributeType, Set<Attribute>>, Random) - Static method in class zebra4j.Question
Generates a random question using the given sets of attributes
generate(PuzzleSolution) - Method in interface zebra4j.fact.Fact.Type
Generates all facts of that type that apply to the given solution
generate(PuzzleSolution) - Static method in class zebra4j.Question
Generates a random question about the people in the given solution
GEORGE - zebra4j.PersonName
 
get() - Method in class zebra4j.SolutionGenerator
 
getAbout() - Method in class zebra4j.Question
 
getAttributes(int) - Method in interface zebra4j.AttributeType
Return some attributes of this type.
getAttributes(int) - Method in class zebra4j.BasicAttributeType
 
getAttributeSets() - Method in class zebra4j.Puzzle
The attribute types and the sub-sets of their values used in the puzzle.
getAttributeSets() - Method in class zebra4j.PuzzleSolution
 
getAttributeSets() - Method in class zebra4j.PuzzleSolutionBuilder
 
getChocoModel() - Method in class zebra4j.ZebraModel
 
getChocoSettings() - Method in class zebra4j.PuzzleSolver
 
getDistance() - Method in class zebra4j.fact.NearbyHouse
 
getFacts() - Method in class zebra4j.Puzzle
The facts that must be satisfied by any solution of the puzzle.
getLeft() - Method in class zebra4j.fact.BothTrue
 
getLeft() - Method in class zebra4j.fact.Different
 
getLeft() - Method in class zebra4j.fact.NearbyHouse
 
getPeople() - Method in class zebra4j.PuzzleSolution
 
getPeople() - Method in class zebra4j.PuzzleSolutionBuilder
 
getPosition() - Method in class zebra4j.AtHouse
The number of the position of the house from left to right, starting at 1.
getPuzzle() - Method in class zebra4j.QuestionPuzzle
 
getQuestion() - Method in class zebra4j.QuestionPuzzle
 
getRight() - Method in class zebra4j.fact.BothTrue
 
getRight() - Method in class zebra4j.fact.Different
 
getRight() - Method in class zebra4j.fact.NearbyHouse
 
getTowards() - Method in class zebra4j.Question
 
getVariableFor(Attribute) - Method in class zebra4j.ZebraModel
Finds the variable for the given unique attribute
GREEN - zebra4j.Clothes
 

H

hashCode() - Method in class zebra4j.AtHouse
 
hashCode() - Method in class zebra4j.BasicAttributeType
 
hashCode() - Method in class zebra4j.fact.BothTrue
 
hashCode() - Method in class zebra4j.fact.Different
 
hashCode() - Method in class zebra4j.fact.NearbyHouse
 
hashCode() - Method in class zebra4j.Puzzle
 
hashCode() - Method in class zebra4j.PuzzleSolution
 
hashCode() - Method in class zebra4j.Question
 
hashCode() - Method in class zebra4j.QuestionPuzzle
 
hashCode() - Method in class zebra4j.SolutionPerson
 

I

isValidating() - Method in class zebra4j.PuzzleSolutionBuilder
 
IVAN - zebra4j.PersonName
 

L

Localization - Interface in zebra4j
 

M

main(String[]) - Static method in class zebra4j.Cli
 
main(String[]) - Static method in class zebra4j.Demo
 

N

NAME - Static variable in interface zebra4j.Attributes
 
NAME_OF_CRIMINAL - Static variable in class zebra4j.Question
 
NearbyHouse - Class in zebra4j.fact
Facts/clues about people with certain attributes living in adjacent or nearby houses.
NearbyHouse(int, Attribute, Attribute) - Constructor for class zebra4j.fact.NearbyHouse
 
NO - zebra4j.Criminal
 
numPeople() - Method in class zebra4j.Puzzle
 

P

PersonName - Enum in zebra4j
The name attribute of a person
PET - Static variable in interface zebra4j.Attributes
Pet attribute.
PETER - zebra4j.PersonName
 
postTo(ZebraModel) - Method in class zebra4j.fact.BothTrue
 
postTo(ZebraModel) - Method in class zebra4j.fact.Different
 
postTo(ZebraModel) - Method in interface zebra4j.fact.Fact
 
postTo(ZebraModel) - Method in class zebra4j.fact.NearbyHouse
 
Puzzle - Class in zebra4j
A puzzle that asks all attributes in Puzzle.getAttributeSets() to be assigned to people, satisfying rules defined by the attribute sets used in the puzzle (e.g.
Puzzle(Map<AttributeType, Set<Attribute>>, Set<Fact>) - Constructor for class zebra4j.Puzzle
 
PuzzleGenerator - Class in zebra4j
A generator for Puzzle
PuzzleGenerator(Random, PuzzleSolution, Set<Fact.Type>) - Constructor for class zebra4j.PuzzleGenerator
 
PuzzleGenerator(PuzzleSolution, Set<Fact.Type>) - Constructor for class zebra4j.PuzzleGenerator
 
PuzzleSolution - Class in zebra4j
 
PuzzleSolution(Set<SolutionPerson>, Map<AttributeType, Set<Attribute>>) - Constructor for class zebra4j.PuzzleSolution
 
PuzzleSolutionBuilder - Class in zebra4j
 
PuzzleSolutionBuilder() - Constructor for class zebra4j.PuzzleSolutionBuilder
 
PuzzleSolutionBuilder(boolean) - Constructor for class zebra4j.PuzzleSolutionBuilder
 
PuzzleSolver - Class in zebra4j
Solver for Puzzle
PuzzleSolver(Puzzle) - Constructor for class zebra4j.PuzzleSolver
 

Q

Question - Class in zebra4j
A question about an attribute of a person
Question(Attribute, AttributeType) - Constructor for class zebra4j.Question
 
questionPuzzle() - Static method in class zebra4j.Demo
Generates and solves a QuestionPuzzle with default configuration
QuestionPuzzle - Class in zebra4j
A puzzle that looks for answer to the given question given rules defined by the attribute sets used in the puzzle (e.g.
QuestionPuzzle(Question, Puzzle) - Constructor for class zebra4j.QuestionPuzzle
 
QuestionPuzzleGenerator - Class in zebra4j
A generator for QuestionPuzzle
QuestionPuzzleGenerator(Question, PuzzleSolution, Random, Set<Fact.Type>) - Constructor for class zebra4j.QuestionPuzzleGenerator
Creates a new generator for puzzles with the given solution assignment
QuestionPuzzleGenerator(Question, PuzzleSolution, Set<Fact.Type>) - Constructor for class zebra4j.QuestionPuzzleGenerator
Creates a new generator with a default random generator
QuestionPuzzleSolver - Class in zebra4j
Solver for QuestionPuzzle
QuestionPuzzleSolver(QuestionPuzzle) - Constructor for class zebra4j.QuestionPuzzleSolver
 
questionSentencePart(Locale) - Method in interface zebra4j.AttributeType
Returns the pattern for questions "about" this attribute type
questionSentencePart(Locale) - Method in class zebra4j.BasicAttributeType
 

R

randomPuzzle(int) - Static method in class zebra4j.PuzzleGenerator
 
randomPuzzle(int) - Static method in class zebra4j.QuestionPuzzleGenerator
Generates a random puzzle seeded with a random solution, with all built-in facts and attributes.
RED - zebra4j.Clothes
 
rejectFact(Fact) - Method in class zebra4j.AbstractPuzzleGenerator
Checks if the fact is not compatible with the specific puzzle being generated
rejectFact(Fact) - Method in class zebra4j.QuestionPuzzleGenerator
 

S

setChocoSettings(Settings) - Method in class zebra4j.PuzzleSolver
 
solution - Variable in class zebra4j.AbstractPuzzleGenerator
 
SolutionGenerator - Class in zebra4j
 
SolutionGenerator() - Constructor for class zebra4j.SolutionGenerator
 
SolutionGenerator(int) - Constructor for class zebra4j.SolutionGenerator
 
SolutionGenerator(Set<AttributeType>, int, Random) - Constructor for class zebra4j.SolutionGenerator
 
SolutionPerson - Class in zebra4j
 
SolutionPerson(List<Attribute>) - Constructor for class zebra4j.SolutionPerson
 
SolutionPerson(Attribute...) - Constructor for class zebra4j.SolutionPerson
 
solve() - Method in class zebra4j.PuzzleSolver
 
solve() - Method in class zebra4j.QuestionPuzzleSolver
 

T

THEODORA - zebra4j.PersonName
 
toOptionalAttribute(IntVar) - Method in class zebra4j.ZebraModel
Checks if a variable is for person for some attribute
toPuzzle(List<Fact>) - Method in class zebra4j.AbstractPuzzleGenerator
Create a puzzle using the seed solution and the given facts
toPuzzle(List<Fact>) - Method in class zebra4j.PuzzleGenerator
 
toPuzzle(List<Fact>) - Method in class zebra4j.QuestionPuzzleGenerator
 
toSolutionSet(Attribute[], int) - Static method in class zebra4j.AllDifferentType
Returns a list of the first "numPeople" elements of the given array
toString() - Method in class zebra4j.AtHouse
 
toString() - Method in class zebra4j.BasicAttributeType
 
toString() - Method in class zebra4j.fact.BothTrue
 
toString() - Method in class zebra4j.fact.Different
 
toString() - Method in class zebra4j.fact.NearbyHouse
 
toString() - Method in class zebra4j.Puzzle
 
toString() - Method in class zebra4j.PuzzleSolution
 
toString() - Method in class zebra4j.Question
 
toString() - Method in class zebra4j.QuestionPuzzle
 
toString() - Method in class zebra4j.SolutionPerson
 
translate(Class<?>, String, Locale) - Static method in interface zebra4j.Localization
 
translateEnum(Enum<?>, Locale) - Static method in interface zebra4j.Localization
 
type() - Method in class zebra4j.AtHouse
 
type() - Method in interface zebra4j.Attribute
 
type() - Method in enum zebra4j.Clothes
 
type() - Method in enum zebra4j.Criminal
 
type() - Method in enum zebra4j.PersonName
 
TYPE - Static variable in class zebra4j.AtHouse
 
TYPE - Static variable in enum zebra4j.Clothes
 
TYPE - Static variable in enum zebra4j.Criminal
 
TYPE - Static variable in class zebra4j.fact.BothTrue
 
TYPE - Static variable in class zebra4j.fact.Different
 
TYPE - Static variable in class zebra4j.fact.NearbyHouse
 
TYPE - Static variable in enum zebra4j.PersonName
 

V

valueOf(String) - Static method in enum zebra4j.Clothes
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum zebra4j.Criminal
Returns the enum constant of this type with the specified name.
valueOf(String) - Static method in enum zebra4j.PersonName
Returns the enum constant of this type with the specified name.
values() - Static method in enum zebra4j.Clothes
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum zebra4j.Criminal
Returns an array containing the constants of this enum type, in the order they are declared.
values() - Static method in enum zebra4j.PersonName
Returns an array containing the constants of this enum type, in the order they are declared.

W

withAttribute(Attribute) - Method in class zebra4j.SolutionPerson
 

Y

YELLOW - zebra4j.Clothes
 
YES - zebra4j.Criminal
 

Z

zebra4j - package zebra4j
 
zebra4j.fact - package zebra4j.fact
 
ZebraModel - Class in zebra4j
Wrapper on ChocoSolver Model adding variable management
ZebraModel(Settings) - Constructor for class zebra4j.ZebraModel
 
A B C D E F G H I L M N P Q R S T V W Y Z 
All Classes All Packages