Boost is by-Field in Lucene, and that is then set in the Index. You can add multiple Fields with the Name property set to the same value, and they'll then be searched for that Document as though you just added the union of those Terms to that Document under that Field name.
var field1 = new Field("Text", "aquaculture");
var field2 = new Field("Text", "fish");
field1.setBoost(1.0f);
field2.setBoost(2.0f);
var doc = new Document();
doc.AddField(field1);
doc.AddField(field2);
But you can set the Boost to multiple values as you do so - if you do, what happens? Do the Terms in each Field get set to the separate Boost levels, or does one shared Boost level get used? If one, is it Last-In, First-In, random?
(The above code is pseudocode just to illustrate the Fields getting added to a single Doc to help coders visualize it, I realize the actual code to do the above is a bit different in actual Lucene API)