How does it score?

how do I find out what ferret actually does? My program works fine:

qp = => :title)
index.search_each(qp.parse(“Some words”))

Now it seems that this way not all terms are required, but how does
that affect the score?

I didn’t find the algorithm in the documentation, and I’m no good at
reading large C projects.