Solve.js
function(symbol) { 
            var has_trig = symbol.hasTrig();
            // we get all the points where a possible zero might exist
            var points1 = get_points(symbol, 0.1);
            var points2 = get_points(symbol, 0.05);
            var points3 = get_points(symbol, 0.01);
            var points = core.Utils.arrayUnique(points1.concat(points2).concat(points3)),
                l = points.length;
            //compile the function and the derivative of the function
            var f = build(symbol.clone()),
                fp = build(_C.diff(symbol.clone()));
            for(var i=0; i<l; i++) {
                var point = points[i];
                add_to_result(Newton(point, f, fp), has_trig);
            }
            solutions.sort();
        }
function(symbol) { 
            var has_trig = symbol.hasTrig();
            // we get all the points where a possible zero might exist
            var points1 = get_points(symbol, 0.1);
            var points2 = get_points(symbol, 0.05);
            var points3 = get_points(symbol, 0.01);
            var points = core.Utils.arrayUnique(points1.concat(points2).concat(points3)),
                l = points.length;
            //compile the function and the derivative of the function
            var f = build(symbol.clone()),
                fp = build(_C.diff(symbol.clone()));
            for(var i=0; i<l; i++) {
                var point = points[i];
                add_to_result(Newton(point, f, fp), has_trig);
            }
            solutions.sort();
        }
function ( symbol ) { var has_trig = symbol . hasTrig ( ) ; // we get all the points where a possible zero might exist
 var points1 = get_points ( symbol , 0.1 ) ; var points2 = get_points ( symbol , 0.05 ) ; var points3 = get_points ( symbol , 0.01 ) ; var points = core . Utils . arrayUnique ( points1 . concat ( points2 ) . concat ( points3 ) ) , l = points . length ; //compile the function and the derivative of the function
 var f = build ( symbol . clone ( ) ) , fp = build ( _C . diff ( symbol . clone ( ) ) ) ; for ( var i = 0 ; i < l ; i ++ ) { var point = points [ i ] ; add_to_result ( Newton ( point , f , fp ) , has_trig ) ; } solutions . sort ( ) ; }
gets points around which to solve. It does that because it builds on the principle that if the sign changes over an interval then there must be a zero on that interval
gets points around which to solve . It does that because it builds on the principle that if the sign changes over an interval then there must be a zero on that interval