@Override public String toString(){
  String s="Discrete(";
  for (  double[] point : points.keySet()) {
    s+="(";
    for (int i=0; i < point.length; i++) {
      s+=StringUtils.getShortForm(point[i]) + ",";
    }
    s=s.substring(0,s.length() - 1) + "):=" + StringUtils.getShortForm(points.get(point));
  }
  return s + ")";
}

@ Override public String toString ( ) { String s = "Discrete(" ; for ( double [ ] point : points . keySet ( ) ) { s += "(" ; for ( int i = 0 ; i < point . length ; i ++ ) { s += StringUtils . getShortForm ( point [ i ] ) + "," ; } s = s . substring ( 0 , s . length ( ) - 1 ) + "):=" + StringUtils . getShortForm ( points . get ( point ) ) ; } return s + ")" ; }
returns a pretty print representation of the function
