docs: public void setLearningRate(double learningRate)
      {
          //+- Inf case captured in >1 <= 0 case
          if(learningRate > 1 || learningRate <= 0 || Double.isNaN(learningRate))
              throw new ArithmeticException("Invalid learning rate");
          this.learningRate = learningRate;
      }