Skip to main content
Mathematics LibreTexts

2.1: A Preview of Calculus

  • Page ID
    2484
    • Gilbert Strang & Edwin “Jed” Herman
    • OpenStax

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)
    Learning Objectives
    • Describe the tangent problem and how it led to the idea of a derivative.
    • Explain how the idea of a limit is involved in solving the tangent problem.
    • Recognize a tangent to a curve at a point as the limit of secant lines.
    • Identify instantaneous velocity as the limit of average velocity over a small time interval.
    • Describe the area problem and how it was solved by the integral.
    • Explain how the idea of a limit is involved in solving the area problem.
    • Recognize how the ideas of limit, derivative, and integral led to the studies of infinite series and multivariable calculus.

    As we embark on our study of calculus, we shall see how its development arose from common solutions to practical problems in areas such as engineering physics—like the space travel problem posed in the chapter opener. Two key problems led to the initial formulation of calculus: (1) the tangent problem, or how to determine the slope of a line tangent to a curve at a point; and (2) the area problem, or how to determine the area under a curve.

    The Tangent Problem and Differential Calculus

    Rate of change is one of the most critical concepts in calculus. We begin our investigation of rates of change by looking at the graphs of the three lines \(f(x)=−2x−3,\; g(x)=\dfrac{1}{2}x+1\), and \(h(x)=2\), shown in Figure \(\PageIndex{1}\).

    Three straight-line graphs. One, labeled "f(x) = -2x - 3," decreases, crossing the x axis at -1.5 and the y axis at -3; another, labeled "g(x) = x/2 + 1," increases, crossing the x axis at -2 and the y axis at 1; the third, labeled "h(x) = 2," is flat at y coordinate 2
    Figure \(\PageIndex{1}\): The rate of change of a linear function is constant in each of these three graphs, with the constant determined by the slope.

    As we move from left to right along the graph of \(f(x)=−2x−3\), we see that the graph decreases at a constant rate. For every \(1\) unit we move to the right along the \(x\)-axis, the \(y\)-coordinate decreases by \(2\) units. This rate of change is determined by the slope (\(−2\)) of the line. Similarly, the slope of \(1/2\) in the function \(g(x)\) tells us that for every change in \(x\) of \(1\) unit there is a corresponding change in \(y\) of \(1/2\) unit. The function \(h(x)=2\) has a slope of zero, indicating that the values of the function remain constant. We see that the slope of each linear function indicates the rate of change of the function.

    Compare the graphs of these three functions with the graph of \(k(x)=x^2\) (Figure \(\PageIndex{2}\)). The graph of \(k(x)=x^2\) starts from the left by decreasing rapidly, then begins to decrease more slowly and level off, and then finally begins to increase—slowly at first, followed by an increasing rate of increase as it moves toward the right. Unlike a linear function, no single number represents the rate of change for this function. We quite naturally ask: How do we measure the rate of change of a nonlinear function?

    A graph of the parabola k(x) = x^2, which opens up and has its vertex at the origin.
    Figure \(\PageIndex{2}\): The function \(k(x)=x^2\) does not have a constant rate of change.

    We can approximate the rate of change of a function \(f(x)\) at a point \((a,f(a))\) on its graph by taking another point \((x,f(x))\) on the graph of \(f(x)\), drawing a line through the two points, and calculating the slope of the resulting line. Such a line is called a secant line. Figure \(\PageIndex{3}\) shows a secant line to a function \(f(x)\) at a point \((a,f(a))\).

    A graph showing a generic curved function going through the points (0,0), (a, fa.), and (x, f(x)). A straight line called the secant line is drawn through the points (a, fa.), and (x, f(x)), going below the curved function between a and x and going above the curved function at values greater than x or less than a. The curved function and the secant line cross once more at some point in the third quadrant. The slope of the secant line is ( f(x) – fa. ) / (x – a).
    Figure \(\PageIndex{3}\): The slope of a secant line through a point \((a,f(a))\) estimates the rate of change of the function at the point \((a,f(a))\).

    We formally define a secant line as follows:

    Definition: Secant Line

    The secant to the function \(f(x)\) through the points \((a,f(a))\) and \((x,f(x))\) is the line passing through these points. Its slope is given by

    \[m_{sec}=\dfrac{f(x)−f(a)}{x−a}. \label{secantslope} \]

    The accuracy of approximating the rate of change of the function with a secant line depends on how close \(x\) is to \(a\). As we see in Figure \(\PageIndex{4}\), if \(x\) is closer to \(a\), the slope of the secant line is a better measure of the rate of change of \(f(x)\) at \(a\).

    This graph is the same as the previous secant line and generic curved function graph. However, another point x is added, this time plotted closer to a on the x-axis. As such, another secant line is drawn through the points (a, fa.) and the new, closer (x, f(x)). The line stays much closer to the generic curved function around (a, fa.). The slope of this secant line has become a better approximation of the rate of change of the generic function.
    Figure \(\PageIndex{4}\): As \(x\) gets closer to \(a\), the slope of the secant line becomes a better approximation to the rate of change of the function \(f(x)\) at \(a\).

    The secant lines themselves approach a line that is called the tangent to the function \(f(x)\) at \(a\) (Figure \(\PageIndex{5}\)). The slope of the tangent line to the graph at \(a\) measures the rate of change of the function at \(a\). This value also represents the derivative of the function \(f(x)\) at \(a\), or the rate of change of the function at \(a\). This derivative is denoted by \(f′(a)\). Differential calculus is the field of calculus concerned with the study of derivatives and their applications.

    This graph is a continuation of the previous two. This time, the graph contains the curved function, the two secant lines, and a tangent line. As x approaches a, the secant lines approach the tangent line.
    Figure \(\PageIndex{5}\): Solving the Tangent Problem: As \(x\) approaches \(a\), the secant lines approach the tangent line.

    Example \(\PageIndex{1}\) illustrates how to find slopes of secant lines. These slopes estimate the slope of the tangent line or, equivalently, the rate of change of the function at the point at which the slopes are calculated.

    Example \(\PageIndex{1}\): Finding Slopes of Secant Lines

    Estimate the slope of the tangent line (rate of change) to \(f(x)=x^2\) at \(x=1\) by finding slopes of secant lines through \((1,1)\) and each of the following points on the graph of \(f(x)=x^2\).

    1. \((2,4)\)
    2. \(\left(\dfrac{3}{2},\dfrac{9}{4}\right)\)

    Solution:

    Use the formula for the slope of a secant line (Equation \ref{secantslope}).

    1. \(m_{sec}=\dfrac{4−1}{2−1}=3\)
    2. \(m_{sec}=\dfrac{\dfrac{9}{4}−1}{\dfrac{3}{2}−1}=\dfrac{5}{2}=2.5\)

    The point in part b. is closer to the point \((1,1)\), so the slope of \(2.5\) is closer to the slope of the tangent line. A good estimate for the slope of the tangent would be in the range of \(2\) to \(2.5\) (Figure \(\PageIndex{6}\)).

    Two graphs of the parabola f(x) = x^2 are shown. The first has a secant line drawn, intersecting the parabola at (1,1) and (2,4). The second has a secant line drawn, intersecting the parabola at (1,1) and (3/2, 9/4). These lines provide successively closer approximations to the tangent line to the function at (1,1).
    Figure \(\PageIndex{6}\): The secant lines to \(f(x)=x^2\) at \((1,1)\) through (a) \((2,4)\) and (b) \((\dfrac{3}{2},\dfrac{9}{4})\) provide successively closer approximations to the tangent line to \(f(x)=x^2\) at \((1,1)\).
    Exercise \(\PageIndex{1}\)

    Estimate the slope of the tangent line (rate of change) to \(f(x)=x^2\) at \(x=1\) by finding slopes of secant lines through \((1,1)\) and the point \((\dfrac{5}{4},\dfrac{25}{16})\) on the graph of \(f(x)=x^2\).

    Answer

    \(2.25\)

    We continue our investigation by exploring a related question. Keeping in mind that velocity may be thought of as the rate of change of position, suppose that we have a function, \(s(t)\), that gives the position of an object along a coordinate axis at any given time \(t\). Can we use these same ideas to create a reasonable definition of the instantaneous velocity at a given time \(t=a?\) We start by approximating the instantaneous velocity with an average velocity. First, recall that the speed of an object traveling at a constant rate is the ratio of the distance traveled to the length of time it has traveled. We define the average velocity of an object over a time period to be the change in its position divided by the length of the time period.

    Definition: Average Velocity

    Let \(s(t)\) be the position of an object moving along a coordinate axis at time \(t\). The average velocity of the object over a time interval \([a,t]\) where \(a<t\) (or \([t,a]\) if \(t<a)\) is

    \[v_{ave}=\dfrac{s(t)−s(a)}{t−a}. \label{avgvel} \]

    As \(t\) is chosen closer to \(a\), the average velocity becomes closer to the instantaneous velocity. Note that finding the average velocity of a position function over a time interval is essentially the same as finding the slope of a secant line to a function. Furthermore, to find the slope of a tangent line at a point \(a\), we let the \(x\)-values approach \(a\) in the slope of the secant line. Similarly, to find the instantaneous velocity at time \(a\), we let the \(t\)-values approach \(a\) in the average velocity. This process of letting \(x\) or \(t\) approach \(a\) in an expression is called taking a limit. Thus, we may define the instantaneous velocity as follows.

    Definition: Instantaneous Velocity

    For a position function \(s(t)\), the instantaneous velocity at a time \(t=a\) is the value that the average velocities approach on intervals of the form \([a,t]\) and \([t,a]\) as the values of \(t\) become closer to \(a\), provided such a value exists.

    Example \(\PageIndex{2}\) illustrates this concept of limits and average velocity.

    Example \(\PageIndex{2}\): Finding Average Velocity

    A rock is dropped from a height of 64 ft. It is determined that its height (in feet) above ground t seconds later (for \(0≤t≤2\)) is given by \(s(t)=−16t^2+64\). Find the average velocity of the rock over each of the given time intervals. Use this information to guess the instantaneous velocity of the rock at time \(t=0.5\).

    1. [\(0.49,0.5\)]
    2. [\(0.5,0.51\)]
    Solution

    Substitute the data into Equation \ref{avgvel} for the definition of average velocity.

    1. \[v_{ave}=\dfrac{s(0.49)−s(0.5)}{0.49−0.5}=−15.84 \nonumber \]
    2. \[v_{ave}=\dfrac{s(0.51)−s(0.5)}{0.51−0.5}=−16.016 \nonumber \]

    The instantaneous velocity is somewhere between −15.84 and −16.16 ft/sec. A good guess might be −16 ft/sec.

    Exercise \(\PageIndex{2}\)

    An object moves along a coordinate axis so that its position at time \(t\) is given by \(s(t)=t^3\). Estimate its instantaneous velocity at time \(t=2\) by computing its average velocity over the time interval [\(2,2.001\)].

    Hint

    Use Equation \ref{avgvel} with \(v_{ave}=\dfrac{s(2.001)−s(2)}{2.001−2}\).

    Answer

    12.006001

    The Area Problem and Integral Calculus

    We now turn our attention to a classic question from calculus. Many quantities in physics—for example, quantities of work—may be interpreted as the area under a curve. This leads us to ask the question: How can we find the area between the graph of a function and the \(x\)-axis over an interval (Figure \(\PageIndex{7}\))?

    A graph is shown of a generic curved function f(x) shaped like a hill in quadrant one. An area under the function is shaded above the x-axis and between x=a and x=b.
    Figure \(\PageIndex{7}\): The Area Problem: How do we find the area of the shaded region?

    As in the answer to our previous questions on velocity, we first try to approximate the solution. We approximate the area by dividing up the interval \([a,b]\) into smaller intervals in the shape of rectangles. The approximation of the area comes from adding up the areas of these rectangles (Figure \(\PageIndex{8}\)).

    The graph is the same as the previous image, with one difference. Instead of the area completely shaded under the curved function, the interval [a, b] is divided into smaller intervals in the shape of rectangles. The rectangles have the same small width. The height of each rectangle is the height of the function at the midpoint of the base of that specific rectangle.
    Figure \(\PageIndex{8}\): The area of the region under the curve is approximated by summing the areas of thin rectangles.

    As the widths of the rectangles become smaller (approach zero), the sums of the areas of the rectangles approach the area between the graph of \(f(x)\) and the \(x\)-axis over the interval \([a,b]\). Once again, we find ourselves taking a limit. Limits of this type serve as a basis for the definition of the definite integral. Integral calculus is the study of integrals and their applications.

    Example \(\PageIndex{3}\): Estimation Using Rectangles

    Estimate the area between the \(x\)-axis and the graph of \(f(x)=x^2+1\) over the interval \([0,3]\) by using the three rectangles shown in Figure \(\PageIndex{9}\).

    Graph of a parabola opening upward with lowest point at (0,1). A rectangle of height 1 extending from x=0 to x=1 touches the parabola at point (0,1); a rectangle of height 2 from x=1 to x=2 touches it at point (1,2); a rectangle of height 5 from x=2 to x=3 touches it at point (2,5)
    Figure \(\PageIndex{9}\): The area of the region under the curve of \(f(x)=x^2+1\) can be estimated using rectangles.
    Solution

    The areas of the three rectangles are 1 unit2, 2 unit2, and 5 unit2. Using these rectangles, our area estimate is 8 unit2.

    Exercise \(\PageIndex{3}\)

    Estimate the area between the \(x\)-axis and the graph of \(f(x)=x^2+1\) over the interval \([0,3]\) by using the three rectangles shown in Figure \(\PageIndex{10}\).

    Graph of a parabola opening upward, with its lowest point at point (0,1). A rectangle of height 2 and extending from x=0 to x=1 touches the parabola at point (1,2); a rectangle of height 5 from x=1 to x=2 touches it at point (2,5); a rectangle of height 10 from x=2 to x=3 touches it at point (3,10)
    Figure \(\PageIndex{10}\): The area of the region under the curve of \(f(x)=x^2+1\) can be estimated using rectangles.
    Hint

    Use Example \(\PageIndex{3}\) as a guide

    Answer

    17 \(\mathrm{unit}^2\)

    Other Aspects of Calculus

    So far, we have studied functions of one variable only. Such functions can be represented visually using graphs in two dimensions; however, there is no good reason to restrict our investigation to two dimensions. Suppose, for example, that instead of determining the velocity of an object moving along a coordinate axis, we want to determine the velocity of a rock fired from a catapult at a given time, or of an airplane moving in three dimensions. We might want to graph real-value functions of two variables or determine volumes of solids of the type shown in Figure \(\PageIndex{11}\). These are only a few of the types of questions that can be asked and answered using multivariable calculus. Informally, multivariable calculus can be characterized as the study of the calculus of functions of two or more variables. However, before exploring these and other ideas, we must first lay a foundation for the study of calculus in one variable by exploring the concept of a limit.

    A diagram in three dimensional space, over the x, y, and z axis where z = f(x,y). The base is the x,y axis, and the height is the z axis. The base is a rectangle contained in the x,y axis plane. The top is a surface of changing height with corners located directly above those of the rectangle in the x,y plane.. The highest point is above the corner at x=0, y=0. The lowest point is at the corner somewhere in the first quadrant of the x, y plane. The other two points are roughly the same height and located above the corners on the x axis and y axis. Lines are drawn connecting the corners of the rectangle to those of the surface.
    Figure \(\PageIndex{11}\): We can use multivariable calculus to find the volume between a surface defined by a function of two variables and a plane.

    Key Concepts

    • Differential calculus arose from trying to solve the problem of determining the slope of a line tangent to a curve at a point. The slope of the tangent line indicates the rate of change of the function, also called the derivative. Calculating a derivative requires finding a limit.
    • Integral calculus arose from trying to solve the problem of finding the area of a region between the graph of a function and the \(x\)-axis. We can approximate the area by dividing it into thin rectangles and summing the areas of these rectangles. This summation leads to the value of a function called the integral. The integral is also calculated by finding a limit and, in fact, is related to the derivative of a function.
    • Multivariable calculus enables us to solve problems in three-dimensional space, including determining motion in space and finding volumes of solids.

    Key Equations

    • Slope of a Secant Line

    \(m_{sec}=\dfrac{f(x)−f(a)}{x−a}\)

    • Average Velocity over Interval [a,t]

    \(v_{ave}=\dfrac{s(t)−s(a)}{t−a}\)

    Glossary

    average velocity
    the change in an object’s position divided by the length of a time period; the average velocity of an object over a time interval [\(t,a\)] (if \(t<a\) or [\(a,t\)] if \(t>a\)), with a position given by \(s(t)\), that is \(v_{ave}=\dfrac{s(t)−s(a)}{t−a}\)
    differential calculus
    the field of calculus concerned with the study of derivatives and their applications
    instantaneous velocity
    The instantaneous velocity of an object with a position function that is given by \(s(t)\) is the value that the average velocities on intervals of the form [\(t,a\)] and [\(a,t\)] approach as the values of \(t\) move closer to \(a\), provided such a value exists
    integral calculus
    the study of integrals and their applications
    limit
    the process of letting x or t approach a in an expression; the limit of a function \(f(x)\) as \(x\) approaches \(a\) is the value that \(f(x)\) approaches as \(x\) approaches \(a\)
    multivariable calculus
    the study of the calculus of functions of two or more variables
    secant
    A secant line to a function \(f(x)\) at \(a\) is a line through the point (\(a,f(a)\)) and another point on the function; the slope of the secant line is given by \(m_{sec}=\dfrac{f(x)−f(a)}{x−a}\)
    tangent
    A tangent line to the graph of a function at a point (\(a,f(a)\)) is the line that secant lines through (\(a,f(a)\)) approach as they are taken through points on the function with \(x\)-values that approach \(a\); the slope of the tangent line to a graph at \(a\) measures the rate of change of the function at \(a\)

    This page titled 2.1: A Preview of Calculus is shared under a CC BY-NC-SA 4.0 license and was authored, remixed, and/or curated by Gilbert Strang & Edwin “Jed” Herman (OpenStax) via source content that was edited to the style and standards of the LibreTexts platform.