randRangeNonZero( -2, 2 ) randRangeNonZero( -4, 4 ) ( A > 0 ? -1 : 1 ) * randRange( 3, 8 ) randFromArray([ "\\Delta x", "h" ])
randRange( -6, 6 )

What is the slope of the line tangent to f(x) = expr(["+", ["*", A, ["^", "x", 2]], ["*", B, "x"], C]) at x = X?

init({ range: [ [-10, 10], [-10, 10] ], scale: [20, 20] }); grid( [-10, 10], [-10, 10], { stroke: "#e5e5e5" }); style({ stroke: "#888", strokeWidth: 2, arrows: "->" }, function() { line( [-10, 0], [10, 0] ); line( [0, -10], [0, 10] ); }); plot( function( x ) { return ( A * x + B ) * x + C; }, [-10, 10], { stroke: "#6495ED" }); circle( [ X, ( A * X + B ) * X + C ], 3 / 20, { fill: "black", stroke: "none" } );
2 * A * X + B
plot( function( x ) { return ( 2 * A * X + B ) * ( x - X ) + ( A * X + B ) * X + C; }, [-10, 10], { stroke: "black", strokeWidth: 1 });

The slope of the tangent line is \displaystyle \lim_{H \to 0} \frac{f(x + H) - f(x)}{H}.

\qquad = \displaystyle \lim_{H \to 0} \frac{(expr( ["+", ["*", A, ["^", ["+", "x", H], 2]], ["*", B, ["+", "x", H]], C] )) - (expr( ["+", ["*", A, ["^", "x", 2]], ["*", B, "x"], C] ))}{H}

\qquad = \displaystyle \lim_{H \to 0} \frac{(expr( ["+", ["*", A, ["+", ["^", "x", 2], "2x " + H, ["^", H, 2]]], ["*", B, ["+", "x", H]], C] )) - (expr( ["+", ["*", A, ["^", "x", 2]], ["*", B, "x"], C] ))}{H}

\qquad = \displaystyle \lim_{H \to 0} \frac{expr( ["+", ["*", A, ["^", "x", 2]], ["*", 2 * A, "x " + H], ["*", A, ["^", H, 2]], ["*", B, "x"], ["*", B, H], C, ["*", -A, ["^", "x", 2]], ["*", -B, "x"], -C] )}{H}

\qquad = \displaystyle \lim_{H \to 0} \frac{expr( ["+", ["*", 2 * A, "x " + H], ["*", A, ["^", H, 2]], ["*", B, H]] )}{H}

\qquad = \displaystyle \lim_{H \to 0} expr( ["+", ["*", 2 * A, "x"], ["*", A, H], B] )

\qquad = \displaystyle expr( ["+", ["*", 2 * A, "x"], B] )

\qquad = \displaystyle expr( ["+", ["*", 2 * A, X], B] )

\qquad = 2 * A * X + B