code: public static NumberBinding min(final ObservableList<? extends Number> numbers, final Supplier<? extends Number> supplier) {
          return Bindings.createDoubleBinding(() -> numbers.stream().mapToDouble(Number::doubleValue).min().orElse(supplier.get().doubleValue()), numbers);
      }
docs: Creates a number binding that computes the minimum value amongst elements.
  
  @param numbers  the observable list of numbers.
  @param supplier a {@code Supplier} whose result is returned if no value is present.
  
  @return a number binding