code: func (ds *DefaultSimilarity) lengthNorm(state *index.FieldInvertState) float32 {
  	var numTerms int
  	if ds.discountOverlaps {
  		numTerms = state.Length() - state.NumOverlap()
  	} else {
  		numTerms = state.Length()
  	}
  	return state.Boost() * float32(1.0/math.Sqrt(float64(numTerms)))
  }
docs: /*
  Implemented as state.boost() * lengthNorm(numTerms), where numTerms
  is FieldInvertState.length() if setDiscountOverlaps() is false, else
  it's FieldInvertState.length() - FieldInvertState.numOverlap().
  */