The greatest benefits from bringing Maple into the classroom are realized when the static pedagogy of a printed textbook is enlivened by the interplay of symbolic, graphic, and numeric calculations made possible by technology. It is not enough merely to compute or check answers with Maple. To stop after noting that indeed, Maple can compute the correct answer is not a pedagogical breakthrough.
Getting Maple to compute the correct answer is just the first step. Using Maple to bring insights not easily realized with byhand calculations should be the goal of everyone who sets a hand to improving the learning experiences of students.
For example, let's look at how the notion of a matrix norm might be taught in a Maple environment. In particular, let's consider the definition
=
where the vector norm is the Euclidean, or 2norm, so that is actually . Of course, Maple can compute the 2norm of a given matrix. We'll show that, but in addition, we want to show how technology can be used to provide added insight that just does not jump off a static printed page.
Table 1 shows how the 2norm of a matrix can be obtained interactively in Maple. The displayed information is what a student sees in the typical textbook. The interactive computation is both easy and concrete, fostering the connection between the terms "matrix," "norm," and "Euclidean."
• 
Using the Matrix palette, insert the template for a 2×2 Matrix. Fill in the fields as shown.

• 
Context Menu: Assign to a Name_A

• 
Type and press the Enter key.

• 
Context Menu: Norm_Euclidean

• 
Context Menu: Approximate_10



Table 1 Interactive computation of the 2norm of a given matrix

Having computed the norm, we must now give it meaning. For this, we use the task template in Table 2.
Tools_Tasks_Browse: Linear Algebra_Visualizations_Matrix Action 2D

Matrix Action: 2D

Matrix:
Eigenpairs


=


Table 2 Exploring the meaning of a 2norm via the Matrix Action 2D task template

The example matrix can be referenced by its name. Pressing the Start button initializes to the unit vector , and to . Both vectors are drawn in black: the first in the lower graph, and the second, in the upper. The upper graph also shows the orbit the tip of will trace as traverses the unit circle. The length of the longest is the 2norm. Both the varying length of and the fixed value of the 2norm are reported on the left. The slider at the bottom controls the unit vector by setting the angle it makes with the positive horizontal axis. Also displayed on the left are the eigenpairs , and if real, they are also displayed as the red and green vectors in the lower graph on the right. Both and are displayed in the same color. The eigenpairs are provided to clarify that the vector for which is of maximal length, is not necessarily an eigenvector.
Having used the task template to explore the behavior of in response to unit vectors , we'll next obtain Figure 1, a graph of as a function of . The interactive calculations for this are in Table 3. Note that the graph in Figure 1 can be interactively explored for the coordinates at any visible maxima.
• 
Using the Matrix palette, enter the unit vector as a column vector.

• 
Context Menu: Assign to a Name_



• 
Enter (typed as shown to the right). Press the Enter key.

• 
Context Menu: Norm_Euclidean

• 
Context Menu: Simplify_Assuming Real

• 
Context Menu: Assign to a Name_



• 
Type and press the Enter key.

• 
Context Menu: Axes_Labels_Edit Vertical Type as the label on the vertical axis

• 
Context Menu: Title_Add Caption Type a caption for the figure.

• 
Context Menu: Probe Info_Nearest datum Locate the first maximum

• 
Context Menu: Probe Info_Copy data



Table 3 Interactively obtaining a graph of as a function of

The coordinates of a point extracted from a graph are reported as a column vector. We obtained
as an approximation to the coordinates of the first maximum in Figure 1. Of course, an exact value for this maximum can be obtained with the techniques of elementary calculus. An interactive version of this calculation is seen in Table 4 where the equation is solved numerically.
• 
Type and press the Enter key.

• 
Context Menu: Differentiate_

• 
Context Menu: Solve_Numerically Solve from point_1

• 
Using the Evaluation template from the Expression palette, evaluate at the computed value of



(1) 

(2) 
=

Table 4 Analytic determination of the maximum of

When the solve command is applied to an expression, Maple assumes that the expression is to be set equal to zero. (The Context Menu provides the Conversions_Equate to 0 option that we have chosen to omit.)
Maple can also solve the equation analytically. The simplest way to obtain the critical point in the first quadrant is to use the Roots command in the Student Calculus 1 package, implemented as follows.

(3) 
(The equivalent result can be obtained in many more steps with the Context Menu.) The maximal value of at this critical point is

(4) 

at which point we could use the Apply a Command option in the Context Menu to invoke the radnormal command that best simplifies this expression. The result would be
=
which we recognize as from Table 1.
Alternatively, we could take the vector as and use the Lagrange multiplier technique to optimize subject to the constraint . In this approach, the objective function is obtained interactively in Table 5.
• 
Using wedge brackets for the vector , enter as shown to the right.

• 
Context Menu: Norm_Euclidean

• 
Context Menu: Simplify_Assuming Real

• 
Context Menu: Assign to a Name_



Table 5 where

Expressing the constraint in the form , we invoke the Lagrange Multiplier task template as shown in Table 6.
Tools_Tasks_Browse: Calculus  Multivariate_Optimization_Lagrange Multiplier Method


Table 6 Lagrange Multiplier task template used to find the extrema of subject to the constraint

The Lagrange Multiplier task template is based on the LagrangeMultiplier command in the Student Multivariate Calculus package. This command does compute extrema exactly, but the task template floats expressions deemed too large to fit into the display window. At any rate, the results obtained by this task template are consistent with our earlier results for .
As a graduate student more than 40 years ago, I struggled with this definition of a matrix norm because I couldn't "see" what I was trying to compute. I especially remember how hard I found the exercises that asked for and , the one and infinitynorms, respectively. But let's apply the strategies we used for studying to understanding why for the matrix in Table 1.
First of all, we have to understand what the infinitynorm for a vector will be. If we can't "see" that, we won't be able to "see" the infinitynorm of the vector . We summarize these results in Table 7.
• 
Type and press the Enter key.

• 
Context Menu: Norm_infinity



• 
Using wedge brackets (inequality symbols), enter the general vector .

• 
Context Menu: Norm_infinity

• 
Using its equation label, set equal to 1 Press the Enter key.

• 
Context Menu: Plots_2D Implicit Plot_

Figure 2 implies that and are unit vectors in the plane under the infinitynorm.


(5) 

Table 7 That and that and are unit vectors in the plane under the infinitynorm

What remains is to form and optimize subject to the constraint that . We summarize the essentials of this exploration in Table 8.
• 
Enter using the syntax shown to the right. Press the Enter key.

• 
Context Menu: Norm_infinity

• 
Context Menu: Plots_Plot Builder Set Ranges Options: Axes_Boxed Options: Caption_Figure 3

From Figure 3, it is apparent that the maximum of the vector norm is 7. This is consistent with the constraint imposed by because this constraint forces the search for an extreme value to take place along the bounding edges of the surface drawn in Figure 3.


Table 8 Why subject to the constraint is 7

Throughout the 15 years I used Maple in the classroom with students, I was motivated by the conviction that "it's better with Maple." Tables 7 and 8 alone are enough to give evidence to that claim.
Download Matrix_Norm.mw