Interface  Description 

AFReducer 
AFReducer implementations reduce AFConstraints into one or more "simpler" AFConstraints until
these constraints are irreducible.

Class  Description 

A2F 
A constraint of the form: A 《 F or F 》 A

A2FReducer 
A2FReducer takes an A2F constraint that is not irreducible (@see AFConstraint.isIrreducible) and
reduces it by one step.

AFConstraint 
AFConstraint represent the initial constraints used to infer type arguments for method
invocations and new class invocations.

F2A 
A constraint of the form: F 《 A or A 》 F

F2AReducer 
F2AReducer takes an F2A constraint that is not irreducible (@see AFConstraint.isIrreducible) and
reduces it by one step.

FIsA 
A constraint of the form: F = A or A = F

FIsAReducer 
FIsAReducer takes an FIsA constraint that is not irreducible (@see AFConstraint.isIrreducible)
and reduces it by one step.

TIsU 
A constraint of the form: T = U

TSubU 
A constraint of the form:
T <: U 
TSuperU 
A constraint of the form:
T :> U 
TUConstraint 
Subclasses of TUConstraint represent constraints between a type parameter, whose type arguments
are being inferred, and the types used to do that inference.
