A Finder inspects the type-checked ASTs of Go packages and accumulates the set of type constraints (x, y) such that x is assignable to y, y is an interface, and both x and y have methods.

In other words, it returns the subset of the "implements" relation that is checked during compilation of a package. Refactoring tools will need to preserve at least this part of the relation to ensure continued compilation.