(***********************************************************************

                    Mathematica-Compatible Notebook

This notebook can be used on any computer system with Mathematica 4.0,
MathReader 4.0, or any compatible application. The data for the notebook 
starts with the line containing stars above.

To get the notebook into a Mathematica-compatible application, do one of 
the following:

* Save the data starting with the line of stars above into a file
  with a name ending in .nb, then open the file inside the application;

* Copy the data starting with the line of stars above to the
  clipboard, then use the Paste menu command inside the application.

Data for notebooks contains only printable 7-bit ASCII and can be
sent directly in email or through ftp in text mode.  Newlines can be
CR, LF or CRLF (Unix, Macintosh or MS-DOS style).

NOTE: If you modify the data for this notebook not in a Mathematica-
compatible application, you must delete the line below containing the 
word CacheID, otherwise Mathematica-compatible applications may try to 
use invalid cache data.

For more information on notebooks and Mathematica-compatible 
applications, contact Wolfram Research:
  web: http://www.wolfram.com
  email: info@wolfram.com
  phone: +1-217-398-0700 (U.S.)

Notebook reader applications are available free of charge from 
Wolfram Research.
***********************************************************************)

(*CacheID: 232*)


(*NotebookFileLineBreakTest
NotebookFileLineBreakTest*)
(*NotebookOptionsPosition[     52943,       1751]*)
(*NotebookOutlinePosition[     72513,       2333]*)
(*  CellTagsIndexPosition[     70589,       2252]*)
(*WindowFrame->Normal*)



Notebook[{
Cell[TextData[{
  "Appendix: How ",
  StyleBox["Mathematica", "SBO"],
  " Packages Are Set Up"
}], "Section",
  CellTags->{"S6.14.0", "0.1"}],

Cell[TextData[{
  "This appendix discusses package contexts, loading packages, autoloading \
packages, and naming packages. Contexts in ",
  StyleBox["Mathematica", "TI"],
  " allow you to use the same symbol names for several different functions \
and to load and autoload packages in a system\[Hyphen]independent way. The \
discussion is illustrated using the standard add\[Hyphen]on packages, but it \
also applies to the ",
  StyleBox["Mathematica", "TI"],
  " Applications Library packages and ",
  StyleBox["Mathematica", "TI"],
  " packages you write and share with colleagues. The appendix concludes with \
a discussion of how to use the standard add\[Hyphen]on packages as building \
blocks for your own packages. "
}], "Text",
  CellTags->{"S6.14.0", "0.2"}],

Cell["Contexts", "Subsection",
  CellTags->{"S6.14.1", "1.1"}],

Cell[TextData[{
  "In ",
  StyleBox["Mathematica\[ThinSpace]", "TI"],
  "the mechanism of contexts is used to keep package symbols separate from \
symbols in the main session. The basic idea is that the ",
  StyleBox["full name", "TI"],
  " of any symbol is broken into two parts: a ",
  StyleBox["context", "TI"],
  " and a ",
  StyleBox["short name", "TI"],
  ". The full name is written as ",
  StyleBox["context", "TI"],
  StyleBox["`", "MR"],
  StyleBox["short", "TI"],
  ", where ",
  StyleBox["`", "MR"],
  " is the backquote or grave accent character, called a context mark in ",
  StyleBox["Mathematica", "TI"],
  ". \nContexts in ",
  StyleBox["Mathematica", "TI"],
  " work somewhat like file directories in many operating systems. You can \
always specify a particular file by giving its complete name, including its \
directory. But at any given point, there is usually a current working \
directory, analogous to the current ",
  StyleBox["Mathematica", "TI"],
  " context. Variables that are in the current context can be specified just \
by giving their short names in the same way that files in the current working \
directory can be specified by just giving their short names. The global \
variable ",
  StyleBox["$Context", "MR"],
  " gives the current ",
  StyleBox["Mathematica", "TI"],
  " context. \nAs is also the case with directories, contexts in ",
  StyleBox["Mathematica", "TI"],
  " can be hierarchical. For example, the full name of a symbol can involve a \
sequence of context names, as in ",
  Cell[BoxData[
      FormBox[
        SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"c\\\\\\\"\\\", \\\"TI\
\\\"]\\)\"\>", "1"], TraditionalForm]], "InlineFormula"],
  StyleBox["`", "MR"],
  Cell[BoxData[
      FormBox[
        SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"c\\\\\\\"\\\", \\\"TI\
\\\"]\\)\"\>", "2"], TraditionalForm]], "InlineFormula"],
  StyleBox["`", "MR"],
  Cell[BoxData[
      FormBox[
        SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"c\\\\\\\"\\\", \\\"TI\
\\\"]\\)\"\>", "3"], TraditionalForm]], "InlineFormula"],
  StyleBox["`", "MR"],
  StyleBox["name", "TI"],
  ". By convention, the symbols that are created by loading a standard ",
  StyleBox["Mathematica", "TI"],
  " package have a context whose name is related to the name of the package. \
As an example, loading the package ",
  StyleBox["Statistics`DescriptiveStatistics`", "MR"],
  " defines the symbol ",
  StyleBox["Statistics`DescriptiveStatistics`Mean", "MR"],
  ", which you can then use to compute the mean of a list of data. "
}], "Text",
  CellTags->{"S6.14.1", "1.2"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"<<\\\\\\\"\\\", \
\\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"context\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) \
\"\>", "\<\"read in a \\!\\(\\*StyleBox[\\\"\\\\\\\"Mathematica\\\\\\\"\\\", \
\\\"TI\\\"]\\) package corresponding to the specified context \"\>"},
                {
                  
                  RowBox[{"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"<<\\\\\\\"\\\", \
\\\"MR\\\"]\\)\"\>", 
                    StyleBox[
                      
                      SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"c\\\\\\\
\"\\\", \\\"TI\\\"]\\)\"\>", "1"],
                      
                      "InlineFormula"], \
"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\)\"\>", 
                    StyleBox[
                      
                      SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"c\\\\\\\
\"\\\", \\\"TI\\\"]\\)\"\>", "2"],
                      
                      "InlineFormula"], \
"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) \[Ellipsis]  \
\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\)\"\>", 
                    StyleBox[
                      
                      SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"c\\\\\\\
\"\\\", \\\"TI\\\"]\\)\"\>", "n"],
                      
                      "InlineFormula"], \
"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) \"\>"}], "\<\
\"read in a \\!\\(\\*StyleBox[\\\"\\\\\\\"Mathematica\\\\\\\"\\\", \
\\\"TI\\\"]\\) package corresponding to a hierarchical context \"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.1", "1.3"}],

Cell[TextData[{
  "Using contexts to specify a ",
  StyleBox["Mathematica", "SO"],
  " package. "
}], "Caption",
  CellTags->"S6.14.1"],

Cell["\<\
This loads a package for calculating descriptive statistics. \
\>", \
"MathCaption",
  CellTags->{"S6.14.1", "1.4"}],

Cell["<<Statistics`DescriptiveStatistics`", "Input",
  CellLabel->"In[1]:= ",
  CellTags->"S6.14.1"],

Cell[TextData[{
  "The symbol ",
  StyleBox["Mean", "MR"],
  " is in the context set up by the package. "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.5"}],

Cell[CellGroupData[{

Cell["Context[Mean]", "Input",
  CellLabel->"In[2]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \("Statistics`DescriptiveStatistics`"\)], "Output",
  CellLabel->"Out[2]= ",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell["You can refer to the symbol using its short name. ", "MathCaption",
  CellTags->{"S6.14.1", "1.6"}],

Cell[CellGroupData[{

Cell["Mean[{1., 2., 3., 4.}]", "Input",
  CellLabel->"In[3]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \(2.5`\)], "Output",
  CellLabel->"Out[3]= ",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell[TextData[{
  "The full names of symbols defined in packages can be quite long. In most \
cases, you will only need to use their short names. However, if two symbols \
with the same short name appear in two different packages, ",
  StyleBox["Mathematica", "TI"],
  " must decide which symbol to use. The decision is made using a list of \
contexts called the ",
  StyleBox["context search path", "TI"],
  ". The global variable ",
  StyleBox["$ContextPath", "MR"],
  " gives this list of contexts. \nWhen you type in a short name for a \
symbol, ",
  StyleBox["Mathematica", "TI"],
  " assumes that you want the symbol with that name whose context appears \
earliest in the context search path. As a result, symbols with the same short \
name whose contexts appear later in the context search path are effectively \
shadowed. To refer to these symbols, you need to use their full names. In \
such a case, ",
  StyleBox["Mathematica", "TI"],
  " will warn you when you read in the package that creates the overlap in \
short names. It will tell you which symbols will be shadowed by the new \
symbols that are being introduced. "
}], "Text",
  CellTags->{"S6.14.1", "1.7"}],

Cell["\<\
This reads in a package that contains specifications for various \
colors. \
\>", "MathCaption",
  CellTags->{"S6.14.1", "1.8"}],

Cell["<<Graphics`Colors`", "Input",
  CellLabel->"In[4]:= ",
  CellTags->"S6.14.1"],

Cell[TextData[{
  "A warning is generated because a symbol with the short name ",
  StyleBox["Gray", "MR"],
  " occurs in both packages we have loaded. "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.9"}],

Cell[CellGroupData[{

Cell["<<Miscellaneous`Units`", "Input",
  CellLabel->"In[5]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \(Gray::"shdw" \(\(:\)\(\ \)\) 
      "Symbol \!\(\"Gray\"\) appears in multiple contexts \
\!\({\"Miscellaneous`SIUnits`\", \"Graphics`Colors`\"}\); definitions in \
context \!\(\"Miscellaneous`SIUnits`\"\) may shadow or be shadowed by other \
definitions."\)], "Message",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell[TextData[{
  "You can use the full name to distinguish between the two uses of ",
  StyleBox["Gray", "MR"],
  ". This gives a color specification. "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.10"}],

Cell[CellGroupData[{

Cell["?Graphics`Colors`Gray", "Input",
  CellLabel->"In[6]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \("Gray is a color given in the RGBColor system."\)], "Print",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell["This gives a unit of radiation. ", "MathCaption",
  CellTags->{"S6.14.1", "1.11"}],

Cell[CellGroupData[{

Cell["?Miscellaneous`SIUnits`Gray", "Input",
  CellLabel->"In[7]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \("Gray is the derived SI unit of absorbed dose of radiation."\)], "Print",\

  CellTags->"S6.14.1"]
}, Open  ]],

Cell[TextData[{
  "Conflicts can occur not only between symbols in different packages, but \
also between symbols in packages and symbols that you introduce directly in \
your ",
  StyleBox["Mathematica", "TI"],
  " session. If you define a symbol in your current context, then this symbol \
will shadow any other symbol with the same short name in packages that you \
read in. The reason for this is that ",
  StyleBox["Mathematica", "TI"],
  " always searches for symbols in the current context before looking in \
contexts on the context search path. "
}], "Text",
  CellTags->{"S6.14.1", "1.12"}],

Cell[TextData[{
  StyleBox["$Context", "MR"],
  " is a global variable that gives the current context. The default context \
for ",
  StyleBox["Mathematica", "TI"],
  " sessions is ",
  StyleBox["Global`", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.13"}],

Cell[CellGroupData[{

Cell["$Context", "Input",
  CellLabel->"In[8]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \("Global`"\)], "Output",
  CellLabel->"Out[8]= ",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell[TextData[{
  "This defines a function ",
  StyleBox["Div", "MR"],
  " in the current context ",
  StyleBox["Global`", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.14"}],

Cell["Div[f_] := 1/f", "Input",
  CellLabel->"In[9]:= ",
  CellTags->"S6.14.1"],

Cell[TextData[{
  "Any other functions with the short name ",
  StyleBox["Div", "MR"],
  " will be shadowed by the one in your current context. "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.15"}],

Cell[CellGroupData[{

Cell["<<Calculus`VectorAnalysis`", "Input",
  CellLabel->"In[10]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \(Div::"shdw" \(\(:\)\(\ \)\) 
      "Symbol \!\(\"Div\"\) appears in multiple contexts \
\!\({\"Calculus`VectorAnalysis`\", \"Global`\"}\); definitions in context \
\!\(\"Calculus`VectorAnalysis`\"\) may shadow or be shadowed by other \
definitions."\)], "Message",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell[TextData[{
  "This removes ",
  StyleBox["Div", "MR"],
  " completely from the current context. "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.16"}],

Cell["Remove[Div]", "Input",
  CellLabel->"In[11]:= ",
  CellTags->"S6.14.1"],

Cell[TextData[{
  "Now the ",
  StyleBox["Div", "MR"],
  " from the package is used. It computes the divergence of a given vector \
field in the Cartesian coordinate system. "
}], "MathCaption",
  CellTags->{"S6.14.1", "1.17"}],

Cell[CellGroupData[{

Cell["Div[{x, y^2, x}, Cartesian[x, y, z]]", "Input",
  CellLabel->"In[12]:= ",
  CellTags->"S6.14.1"],

Cell[BoxData[
    \(1 + 2\ y\)], "Output",
  CellLabel->"Out[12]= ",
  CellTags->"S6.14.1"]
}, Open  ]],

Cell[TextData[{
  "Many ",
  StyleBox["Mathematica", "TI"],
  " users choose to load their favorite packages automatically at start\
\[Hyphen]up, and autoloading is discussed later in this section. If you \
autoload your packages at start\[Hyphen]up, you will not need to be concerned \
about using a package function in a ",
  StyleBox["Mathematica", "TI"],
  " session before actually reading in the package. If you mistakenly \
introduce a package function and do not apply ",
  StyleBox["Remove", "MR"],
  " to the function before loading the package, ",
  StyleBox["Mathematica", "TI"],
  " will warn you that the package function is being shadowed. ",
  StyleBox["Mathematica", "TI"],
  " will use your version of the function, rather than the one from the \
package. Applying ",
  StyleBox["Remove", "MR"],
  " after the package is loaded will remove your version of the function and \
allow you to use the package definition for the function. "
}], "Text",
  CellTags->{"S6.14.1", "1.18"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"Remove[\\\\\\\\\\\\\\\"\\\
\\\\\"\\\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"\\\\\\\\\\\\\\\"]\\\\\\\"\\\", \\\
\"MR\\\"]\\) \"\>", "\<\"remove a function that has been introduced in \
error\"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.1", "1.19"}],

Cell[TextData[{
  "Making sure that ",
  StyleBox["Mathematica", "SO"],
  " uses correct definitions from packages."
}], "Caption",
  CellTags->"S6.14.1"],

Cell["Loading Packages", "Subsection",
  CellTags->{"S6.14.2", "2.1"}],

Cell[TextData[{
  "Contexts in ",
  StyleBox["Mathematica", "TI"],
  " are used to specify packages in a way that is independent of the \
particular computer system being used. From this point of view, loading a \
package is simply a way of making a particular context available. The global \
variable ",
  StyleBox["$Packages", "MR"],
  " gives a list of the contexts corresponding to all the packages that have \
been loaded in your current ",
  StyleBox["Mathematica", "TI"],
  " session. "
}], "Text",
  CellTags->{"S6.14.2", "2.2"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"<<\\\\\\\"\\\", \
\\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"context\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) \
\[ThinSpace]or \[ThinSpace]\\!\\(\\*StyleBox[\\\"\\\\\\\"Get[\\\\\\\\\\\\\\\"\
\\\\\\\"\\\", \
\\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"context\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\"]\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>", "\<\"read in a \
\\!\\(\\*StyleBox[\\\"\\\\\\\"Mathematica\\\\\\\"\\\", \\\"TI\\\"]\\) package \
corresponding to the specified context \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"Needs[\\\\\\\\\\\\\\\"\\\\\
\\\"\\\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"context\\\\\\\"\\\", \\\
\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\"]\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>", "\<\"read in the package if the specified context is \
not already in \\!\\(\\*StyleBox[\\\"\\\\\\\"$Packages\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>"},
                {
                  
                  RowBox[{"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"DeclarePackage[\\\
\\\\\\\\\\\\\"\\\\\\\"\\\", \
\\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"context\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\",\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>", 
                    StyleBox["{",
                      
                      "InlineFormula"], "\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"\\\
\\\\\\\\\\\\\"\\\\\\\"\\\", \\\"MR\\\"]\\)\"\>", 
                    StyleBox[
                      
                      SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\
\\\"\\\", \\\"TI\\\"]\\)\"\>", "1"],
                      
                      "InlineFormula"], "\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"\\\
\\\\\\\\\\\\\",\\\\\\\"\\\", \\\"MR\\\"]\\) \
\\!\\(\\*StyleBox[\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\"\\\", \
\\\"MR\\\"]\\)\"\>", 
                    StyleBox[
                      
                      SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\
\\\"\\\", \\\"TI\\\"]\\)\"\>", "2"],
                      
                      "InlineFormula"], "\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"\\\
\\\\\\\\\\\\\",\\\\\\\"\\\", \\\"MR\\\"]\\) \[Ellipsis] \"\>", 
                    StyleBox["}",
                      
                      "InlineFormula"], \
"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"]\\\\\\\"\\\", \\\"MR\\\"]\\) \"\>"}], 
                  
                  RowBox[{"\<\"declare that \
\\!\\(\\*StyleBox[\\\"\\\\\\\"Needs[\\\\\\\\\\\\\\\"\\\\\\\"\\\", \\\"MR\\\"]\
\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"context\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\"]\\\\\\\"\\\", \
\\\"MR\\\"]\\) should be automatically executed if a symbol with any of the \
names \\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \\\"TI\\\"]\\)\"\>", 
                    StyleBox[\(\[Null]\_i\),
                      "InlineFormula"], "\<\" is used\"\>"}]}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.2", "2.3"}],

Cell["Ways to load packages. ", "Caption",
  CellTags->"S6.14.2"],

Cell[TextData[{
  "You have already seen how to explicitly read in a package using the \
command ",
  StyleBox["<<", "MR"],
  StyleBox["context", "TI"],
  StyleBox["`", "MR"],
  ", or equivalently, ",
  StyleBox["Get[\"", "MR"],
  StyleBox["context", "TI"],
  StyleBox["`\"]", "MR"],
  ". Often, however, you will want to read in a particular package only if it \
is needed. The command ",
  StyleBox["Needs[\"", "MR"],
  StyleBox["context", "TI"],
  StyleBox["`\"]", "MR"],
  " tells ",
  StyleBox["Mathematica", "TI"],
  " to read in a package if the context associated with that package is not \
already in the list ",
  StyleBox["$Packages", "MR"],
  ". \nSome packages are not designed to be loaded twice and large packages \
may take a while to load. You should use ",
  StyleBox["Needs", "MR"],
  " if you are unsure whether you have loaded a particular package in your \
current session. Some packages are set up so that when they are loaded, other \
related packages are automatically loaded at the same time. Packages may have \
been loaded that you haven't explicitly read in, so it is best to let ",
  StyleBox["Mathematica", "TI"],
  " decide which packages need loading. \nWhen you set up a large collection \
of ",
  StyleBox["Mathematica", "TI"],
  " packages, it is a good idea to create an initialization package or names \
file that contains a sequence of ",
  StyleBox["DeclarePackage", "MR"],
  " commands, specifying packages to load when particular names are used. \
Within a particular ",
  StyleBox["Mathematica", "TI"],
  " session, you then need to load explicitly only the initialization \
package. When you have done this, all the other packages will automatically \
be loaded if and when they are needed. Initialization packages and \
autoloading packages via the ",
  StyleBox["Autoload", "MR"],
  " directory are discussed in detail in the next section. "
}], "Text",
  CellTags->{"S6.14.2", "2.4"}],

Cell[TextData[{
  "The package context list initially contains only the ",
  StyleBox["Global`", "MR"],
  " and ",
  StyleBox["System`", "MR"],
  " contexts. Usually new symbols are introduced in the context ",
  StyleBox["Global`", "MR"],
  ". Built\[Hyphen]in symbols are in the context ",
  StyleBox["System`", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.2", "2.5"}],

Cell[CellGroupData[{

Cell["$Packages", "Input",
  CellLabel->"In[1]:= ",
  CellTags->"S6.14.2"],

Cell[BoxData[
    \({"CleanSlate`", "TeXImport`TeXImport`", "Global`", 
      "System`"}\)], "Output",
  CellLabel->"Out[1]= ",
  CellTags->"S6.14.2"]
}, Open  ]],

Cell[TextData[{
  "This specifies that the symbols ",
  StyleBox["Div", "MR"],
  ", ",
  StyleBox["Grad", "MR"],
  ", and ",
  StyleBox["Curl", "MR"],
  " are defined in ",
  StyleBox["Calculus`VectorAnalysis`", "MR"],
  ". Now ",
  StyleBox["Needs[\"Calculus`VectorAnalysis`\"]", "MR"],
  " will be executed if any of these symbols are used. "
}], "MathCaption",
  CellTags->{"S6.14.2", "2.6"}],

Cell[CellGroupData[{

Cell["\<\
DeclarePackage[\"Calculus`VectorAnalysis`\",
 {\"Div\", \"Grad\", \"Curl\"}]\
\>", "Input",
  CellLabel->"In[2]:= ",
  CellTags->"S6.14.2"],

Cell[BoxData[
    \("Calculus`VectorAnalysis`"\)], "Output",
  CellLabel->"Out[2]= ",
  CellTags->"S6.14.2"]
}, Open  ]],

Cell[TextData[{
  "When you first use ",
  StyleBox["Grad", "MR"],
  ", ",
  StyleBox["Mathematica", "TI"],
  " automatically loads the package ",
  StyleBox["Calculus`VectorAnalysis`", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.2", "2.7"}],

Cell[CellGroupData[{

Cell["Grad[x^2 + y^2, Cartesian[x, y, z]]", "Input",
  CellLabel->"In[3]:= ",
  CellTags->"S6.14.2"],

Cell[BoxData[
    \({2\ x, 2\ y, 0}\)], "Output",
  CellLabel->"Out[3]= ",
  CellTags->"S6.14.2"]
}, Open  ]],

Cell[TextData[{
  "The package's context has been prepended to ",
  StyleBox["$Packages", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.2", "2.8"}],

Cell[CellGroupData[{

Cell["$Packages", "Input",
  CellLabel->"In[4]:= ",
  CellTags->"S6.14.2"],

Cell[BoxData[
    \({"Calculus`VectorAnalysis`", "CleanSlate`", "TeXImport`TeXImport`", 
      "Global`", "System`"}\)], "Output",
  CellLabel->"Out[4]= ",
  CellTags->"S6.14.2"]
}, Open  ]],

Cell["Autoloading Packages", "Subsection",
  CellTags->{"S6.14.3", "3.1"}],

Cell[TextData[{
  "Explicit loading of packages is useful if you are trying to minimize the \
amount of memory used by your ",
  StyleBox["Mathematica", "TI"],
  " session or if you are in an early stage of package development. However, \
most users find that they use a particular set of packages often, and they \
want those packages to load automatically. "
}], "Text",
  CellTags->{"S6.14.3", "3.2"}],

Cell["Initialization Packages", "Subsubsection",
  CellTags->{"S6.14.3", "3.3"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"<<\\\\\\\"\\\", \
\\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"dir\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) \
\"\>", "\<\"read in the initialization package from the directory \
\\!\\(\\*StyleBox[\\\"\\\\\\\"dir\\\\\\\"\\\", \\\"TI\\\"]\\)\"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.3", "3.4"}],

Cell["Initializing all packages in a directory. ", "Caption",
  CellTags->"S6.14.3"],

Cell[TextData[{
  "If you frequently use many functions from different packages in the same \
standard package directory, you will find it convenient to load the \
initialization package from that directory. After you load the initialization \
package you can use any of the functions contained in packages included in \
the directory. You will not need to load each package separately. \nFor \
example, ",
  StyleBox["<<Graphics`", "MR"],
  " loads the initialization package ",
  StyleBox["Graphics`Kernel`init`", "MR"],
  " and makes all the functions provided in the ",
  StyleBox["Graphics", "MR"],
  " packages available in your current session. Using one of these functions \
will cause the appropriate package to be loaded if it has not been loaded \
already. An initialization package really consists of nothing more than a \
sequence of ",
  StyleBox["DeclarePackage", "MR"],
  " commands. "
}], "Text",
  CellTags->{"S6.14.3", "3.5"}],

Cell[TextData[{
  "This loads the ",
  StyleBox["Graphics`Kernel`init`", "MR"],
  " package. All the functions contained in ",
  StyleBox["Graphics", "MR"],
  " packages are now available for use. "
}], "MathCaption",
  CellTags->{"S6.14.3", "3.6"}],

Cell["<<Graphics`", "Input",
  CellLabel->"In[1]:= ",
  CellTags->"S6.14.3"],

Cell[TextData[{
  "Since the ",
  StyleBox["Graphics`Graphics`", "MR"],
  " package defining ",
  StyleBox["BarChart", "MR"],
  " has not yet been loaded, using ",
  StyleBox["BarChart", "MR"],
  " will cause the package to load. "
}], "MathCaption",
  CellTags->{"S6.14.3", "3.7"}],

Cell[CellGroupData[{

Cell["BarChart[{1.2, 3.4, 2.2, 1.8}]", "Input",
  CellLabel->"In[2]:= ",
  CellTags->"S6.14.3"],

Cell[GraphicsData["PostScript", "\<\
%!
%%Creator: Mathematica
%%AspectRatio: .61803 
MathPictureStart
/Mabs {
Mgmatrix idtransform
Mtmatrix dtransform
} bind def
/Mabsadd { Mabs
3 -1 roll add
3 1 roll add
exch } bind def
%% Graphics
%%IncludeResource: font Courier
%%IncludeFont: Courier
/Courier findfont 10  scalefont  setfont
% Scaling calculations
-0.0952381 0.238095 0.0147151 0.173119 [
[.14286 .00222 -3 -9 ]
[.14286 .00222 3 0 ]
[.38095 .00222 -3 -9 ]
[.38095 .00222 3 0 ]
[.61905 .00222 -3 -9 ]
[.61905 .00222 3 0 ]
[.85714 .00222 -3 -9 ]
[.85714 .00222 3 0 ]
[-0.0125 .10127 -18 -4.5 ]
[-0.0125 .10127 0 4.5 ]
[-0.0125 .18783 -6 -4.5 ]
[-0.0125 .18783 0 4.5 ]
[-0.0125 .27439 -18 -4.5 ]
[-0.0125 .27439 0 4.5 ]
[-0.0125 .36095 -6 -4.5 ]
[-0.0125 .36095 0 4.5 ]
[-0.0125 .44751 -18 -4.5 ]
[-0.0125 .44751 0 4.5 ]
[-0.0125 .53407 -6 -4.5 ]
[-0.0125 .53407 0 4.5 ]
[ 0 0 0 0 ]
[ 1 .61803 0 0 ]
] MathScale
% Start of Graphics
1 setlinecap
1 setlinejoin
newpath
0 g
.25 Mabswid
[ ] 0 setdash
.14286 .01472 m
.14286 .02097 L
s
[(1)] .14286 .00222 0 1 Mshowa
.38095 .01472 m
.38095 .02097 L
s
[(2)] .38095 .00222 0 1 Mshowa
.61905 .01472 m
.61905 .02097 L
s
[(3)] .61905 .00222 0 1 Mshowa
.85714 .01472 m
.85714 .02097 L
s
[(4)] .85714 .00222 0 1 Mshowa
0 .01472 m
1 .01472 L
s
0 .10127 m
.00625 .10127 L
s
[(0.5)] -0.0125 .10127 1 0 Mshowa
0 .18783 m
.00625 .18783 L
s
[(1)] -0.0125 .18783 1 0 Mshowa
0 .27439 m
.00625 .27439 L
s
[(1.5)] -0.0125 .27439 1 0 Mshowa
0 .36095 m
.00625 .36095 L
s
[(2)] -0.0125 .36095 1 0 Mshowa
0 .44751 m
.00625 .44751 L
s
[(2.5)] -0.0125 .44751 1 0 Mshowa
0 .53407 m
.00625 .53407 L
s
[(3)] -0.0125 .53407 1 0 Mshowa
.125 Mabswid
0 .03203 m
.00375 .03203 L
s
0 .04934 m
.00375 .04934 L
s
0 .06665 m
.00375 .06665 L
s
0 .08396 m
.00375 .08396 L
s
0 .11859 m
.00375 .11859 L
s
0 .1359 m
.00375 .1359 L
s
0 .15321 m
.00375 .15321 L
s
0 .17052 m
.00375 .17052 L
s
0 .20515 m
.00375 .20515 L
s
0 .22246 m
.00375 .22246 L
s
0 .23977 m
.00375 .23977 L
s
0 .25708 m
.00375 .25708 L
s
0 .29171 m
.00375 .29171 L
s
0 .30902 m
.00375 .30902 L
s
0 .32633 m
.00375 .32633 L
s
0 .34364 m
.00375 .34364 L
s
0 .37826 m
.00375 .37826 L
s
0 .39558 m
.00375 .39558 L
s
0 .41289 m
.00375 .41289 L
s
0 .4302 m
.00375 .4302 L
s
0 .46482 m
.00375 .46482 L
s
0 .48214 m
.00375 .48214 L
s
0 .49945 m
.00375 .49945 L
s
0 .51676 m
.00375 .51676 L
s
0 .55138 m
.00375 .55138 L
s
0 .5687 m
.00375 .5687 L
s
0 .58601 m
.00375 .58601 L
s
0 .60332 m
.00375 .60332 L
s
.25 Mabswid
0 0 m
0 .61803 L
s
0 0 m
1 0 L
1 .61803 L
0 .61803 L
closepath
clip
newpath
1 0 0 r
.04762 .01472 m
.04762 .22246 L
.2381 .22246 L
.2381 .01472 L
F
0 g
.5 Mabswid
.04762 .01472 m
.04762 .22246 L
.2381 .22246 L
.2381 .01472 L
.04762 .01472 L
s
1 0 0 r
.28571 .01472 m
.28571 .60332 L
.47619 .60332 L
.47619 .01472 L
F
0 g
.28571 .01472 m
.28571 .60332 L
.47619 .60332 L
.47619 .01472 L
.28571 .01472 L
s
1 0 0 r
.52381 .01472 m
.52381 .39558 L
.71429 .39558 L
.71429 .01472 L
F
0 g
.52381 .01472 m
.52381 .39558 L
.71429 .39558 L
.71429 .01472 L
.52381 .01472 L
s
1 0 0 r
.7619 .01472 m
.7619 .32633 L
.95238 .32633 L
.95238 .01472 L
F
0 g
.7619 .01472 m
.7619 .32633 L
.95238 .32633 L
.95238 .01472 L
.7619 .01472 L
s
% End of Graphics
MathPictureEnd
\
\>"], "Graphics",
  ImageSize->{300, 180},
  ImageCacheValid->False,
  CellTags->"S6.14.3"],

Cell[BoxData[
    TagBox[\(\[SkeletonIndicator]  Graphics  \[SkeletonIndicator]\),
      False,
      Editable->False]], "Output",
  CellLabel->"Out[2]= ",
  CellTags->"S6.14.3"]
}, Open  ]],

Cell["Autoload Directory", "Subsubsection",
  CellTags->{"S6.14.3", "3.8"}],

Cell[TextData[{
  "The main ",
  StyleBox["Mathematica", "TI"],
  " distribution CD\[Hyphen]ROM typically includes the standard \
add\[Hyphen]on packages described in this book, placed in the ",
  StyleBox["AddOns/StandardPackages/", "MR"],
  " subdirectory of your main ",
  StyleBox["Mathematica", "TI"],
  " directory. ",
  StyleBox["Mathematica", "TI"],
  " application packages, such as ",
  StyleBox["Electrical Engineering", "TI"],
  ", are usually installed in the ",
  StyleBox["AddOns/Applications/", "MR"],
  " subdirectory. The ",
  StyleBox["AddOns/Autoload/", "MR"],
  " subdirectory provides another way to autoload packages. "
}], "Text",
  CellTags->{"S6.14.3", "3.9"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"AddOns/StandardPackages/\\\
\\\\\"\\\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"/\\\\\\\"\\\", \\\"MR\\\"]\\) \
\"\>", \("directory for a named category within the standard add\[Hyphen]on \
packages "\)},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"AddOns/Applications/\\\\\\\
\"\\\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"/\\\\\\\"\\\", \\\"MR\\\"]\\) \
\"\>", "\<\"directory for a named application within the \\!\\(\\*StyleBox[\\\
\"\\\\\\\"Mathematica\\\\\\\"\\\", \\\"TI\\\"]\\) Applications Library\"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"AddOns/Autoload/\\\\\\\"\\\
\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \\\"TI\\\"]\
\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"/\\\\\\\"\\\", \\\"MR\\\"]\\) \"\>", \
"\<\"directory in which to place an initialization file so that it is loaded \
when \\!\\(\\*StyleBox[\\\"\\\\\\\"Mathematica\\\\\\\"\\\", \\\"TI\\\"]\\) is \
started \"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.3", "3.10"}],

Cell[TextData[{
  "Directories for ",
  StyleBox["Mathematica", "SO"],
  " packages. "
}], "Caption",
  CellTags->"S6.14.3"],

Cell[TextData[{
  "If you would like ",
  StyleBox["Mathematica", "TI"],
  " to automatically load the initialization file for a directory of packages \
whenever you start the kernel, then you should copy the initialization file \
into the appropriate place in the ",
  StyleBox["AddOns/Autoload/", "MR"],
  " directory. For example, you might copy ",
  StyleBox["AddOns/StandardPackages/Graphics/Kernel/init.m", "MR"],
  " into ",
  StyleBox["AddOns/Autoload/Graphics/Kernel/init.m", "MR"],
  " so that all graphics packages will load as needed. If you have the ",
  StyleBox["Electrical Engineering", "TI"],
  " application, you might copy ",
  StyleBox["AddOns/Applications/EE/Kernel/init.m", "MR"],
  " into ",
  StyleBox["AddOns/Autoload/EE/Kernel/init.m", "MR"],
  " so that the ",
  StyleBox["Electrical Engineering", "TI"],
  " application will load as needed. Effective use of the ",
  StyleBox["Autoload", "MR"],
  " directory allows you to create a version of ",
  StyleBox["Mathematica", "TI"],
  " tailored to your needs. "
}], "Text",
  CellTags->{"S6.14.3", "3.11"}],

Cell["Advanced Topic: Package File Names", "Subsection",
  CellTags->{"S6.14.4", "4.1"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\".mx\\\\\\\"\\\", \\\"MR\\\"]\\) \
\"\>", "\<\"file in \\!\\(\\*StyleBox[\\\"\\\\\\\"DumpSave\\\\\\\"\\\", \
\\\"MR\\\"]\\) format \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\".m\\\\\\\"\\\", \\\"MR\\\"]\\) \"\
\>", "\<\"file in \\!\\(\\*StyleBox[\\\"\\\\\\\"Mathematica\\\\\\\"\\\", \
\\\"TI\\\"]\\) source format \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"/Kernel/init.m\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>", "\<\"kernel initialization file for a particular \
directory \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"name\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"/init.m\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>", "\<\"default initialization file for a particular \
directory \"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.4", "4.2"}],

Cell[TextData[{
  "The typical sequence of files looked for by ",
  StyleBox["<<", "MR"],
  StyleBox["name", "TI"],
  StyleBox["`", "MR"],
  ". "
}], "Caption",
  CellTags->"S6.14.4"],

Cell[TextData[{
  "To take advantage of loading packages using contexts, you should know how \
",
  StyleBox["Get", "MR"],
  " and related ",
  StyleBox["Mathematica", "TI"],
  " functions translate names of the form ",
  StyleBox["name", "TI"],
  StyleBox["`", "MR"],
  " into particular file names. ",
  StyleBox["<<", "MR"],
  StyleBox["name", "TI"],
  StyleBox["`", "MR"],
  " first tries to load ",
  StyleBox["name", "TI"],
  StyleBox[".mx", "MR"],
  ", the preferred name for a ",
  StyleBox["Mathematica", "TI"],
  " expression dump. If there is no ",
  StyleBox["name", "TI"],
  StyleBox[".mx", "MR"],
  ", ",
  StyleBox["<<", "MR"],
  StyleBox["name", "TI"],
  StyleBox["`", "MR"],
  " tries to load ",
  StyleBox["name", "TI"],
  StyleBox[".m", "MR"],
  ", the preferred name for a ",
  StyleBox["Mathematica", "TI"],
  " source file or package. If there is no ",
  StyleBox["name", "TI"],
  StyleBox[".m", "MR"],
  ", ",
  StyleBox["<<", "MR"],
  StyleBox["name", "TI"],
  StyleBox["`", "MR"],
  " tries to load the file ",
  StyleBox["name", "TI"],
  StyleBox["/Kernel/init.m", "MR"],
  ", the preferred name for a kernel initialization package for the directory \
",
  StyleBox["name", "TI"],
  ". If there is no ",
  StyleBox["name", "TI"],
  StyleBox["/Kernel/init.m", "MR"],
  ", ",
  StyleBox["<<", "MR"],
  StyleBox["name", "TI"],
  StyleBox["`", "MR"],
  " tries to load the file ",
  StyleBox["name", "TI"],
  StyleBox["/init.m", "MR"],
  ", the default initialization package for the directory ",
  StyleBox["name", "TI"],
  ". \nThe names of the source files for the standard packages have the ",
  StyleBox[".m", "MR"],
  " extension, and you are encouraged to name your package source files using \
this extension as well. "
}], "Text",
  CellTags->{"S6.14.4", "4.3"}],

Cell[TextData[{
  "Advanced Topic: Basing New Packages on the Standard ",
  StyleBox["Mathematica", "SBO"],
  " Packages"
}], "Subsection",
  CellTags->{"S6.14.5", "5.1"}],

Cell[TextData[{
  "There is a standard sequence of ",
  StyleBox["Mathematica", "TI"],
  " commands that is typically used to set up the contexts in a package. \
These commands set the values of ",
  StyleBox["$Context", "MR"],
  " and ",
  StyleBox["$ContextPath", "MR"],
  " so that the new symbols which are introduced are created in the \
appropriate contexts. "
}], "Text",
  CellTags->{"S6.14.5", "5.2"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"BeginPackage[\\\\\\\\\\\\\
\\\"\\\\\\\"\\\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"Package\\\\\\\"\
\\\", \\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\"]\\\\\\\"\\\
\", \\\"MR\\\"]\\) \"\>", "\<\"set \
\\!\\(\\*StyleBox[\\\"\\\\\\\"Package\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) to \
be the current context, and put only \
\\!\\(\\*StyleBox[\\\"\\\\\\\"System`\\\\\\\"\\\", \\\"MR\\\"]\\) on the \
context search path \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"f\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"::usage\\\\\\\"\\\", \
\\\"MR\\\"]\\) \\!\\(\\*StyleBox[\\\"\\\\\\\"=\\\\\\\"\\\", \\\"MR\\\"]\\) \
\\!\\(\\*StyleBox[\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\"\\\", \\\"MR\\\"]\\)\\!\
\\(\\*StyleBox[\\\"\\\\\\\"text\\\\\\\"\\\", \\\"TI\\\"]\\)\\!\\(\\*StyleBox[\
\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\"\\\", \\\"MR\\\"]\\), \[Ellipsis]  \"\>", \
"\<\"introduce the objects intended for export (and no others) \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"Begin[\\\\\\\\\\\\\\\"`\
Private`\\\\\\\\\\\\\\\"]\\\\\\\"\\\", \\\"MR\\\"]\\) \"\>", "\<\"set the \
current context to \\!\\(\\*StyleBox[\\\"\\\\\\\"Package\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`Private`\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"f\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"[\\\\\\\"\\\", \
\\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"args\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"]\\\\\\\"\\\", \\\"MR\\\"]\\) \\!\
\\(\\*StyleBox[\\\"\\\\\\\"=\\\\\\\"\\\", \\\"MR\\\"]\\) \\!\\(\\*StyleBox[\\\
\"\\\\\\\"value\\\\\\\"\\\", \\\"TI\\\"]\\), \[Ellipsis]  \"\>", "\<\"give \
the main body of definitions in the package \"\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"End[\\\\\\\"\\\", \
\\\"MR\\\"]\\) \\!\\(\\*StyleBox[\\\"\\\\\\\"]\\\\\\\"\\\", \\\"MR\\\"]\\) \"\
\>", "\<\"revert to the previous context (here \
\\!\\(\\*StyleBox[\\\"\\\\\\\"Package\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\)) \"\
\>"},
                {"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"EndPackage[\\\\\\\"\\\", \
\\\"MR\\\"]\\) \\!\\(\\*StyleBox[\\\"\\\\\\\"]\\\\\\\"\\\", \\\"MR\\\"]\\) \"\
\>", "\<\"end the package, prepending the \
\\!\\(\\*StyleBox[\\\"\\\\\\\"Package\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\"\\\", \\\"MR\\\"]\\) to \
the context search path \"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.5", "5.3"}],

Cell["\<\
The standard sequence of context control commands in a package. \
\
\>", "Caption",
  CellTags->"S6.14.5"],

Cell[TextData[{
  "When you write a package that uses symbols provided by one of the standard \
packages, you need to be aware of auxiliary packages automatically loaded via \
a multiargument ",
  StyleBox["BeginPackage", "MR"],
  ". A few directories have a ",
  StyleBox["Common", "MR"],
  " subdirectory for auxiliary packages containing shared symbols. For \
example, the package ",
  StyleBox["Statistics`ConfidenceIntervals`", "MR"],
  " automatically loads ",
  StyleBox["Statistics`Common`PopulationsCommon`", "MR"],
  " using the ",
  StyleBox["BeginPackage", "MR"],
  " function. "
}], "Text",
  CellTags->{"S6.14.5", "5.4"}],

Cell[BoxData[
    FormBox[
      StyleBox[
        FrameBox[
          StyleBox[GridBox[{
                {
                  
                  RowBox[{"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"BeginPackage[\\\\\
\\\\\\\\\\\"\\\\\\\"\\\", \\\"MR\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"Package\
\\\\\\\"\\\", \
\\\"TI\\\"]\\)\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\",\\\\\\\"\\\", \
\\\"MR\\\"]\\) \\!\\(\\*StyleBox[\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\"\\\", \\\
\"MR\\\"]\\)\"\>", 
                    StyleBox[
                      
                      SubscriptBox["\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"Needed\\\
\\\\\"\\\", \\\"TI\\\"]\\)\"\>", "1"],
                      
                      "InlineFormula"], \
"\<\"\\!\\(\\*StyleBox[\\\"\\\\\\\"`\\\\\\\\\\\\\\\",\\\\\\\"\\\", \
\\\"MR\\\"]\\) \[Ellipsis] \\!\\(\\*StyleBox[\\\"\\\\\\\"]\\\\\\\"\\\", \
\\\"MR\\\"]\\) \"\>"}], "\<\"begin a package, specifying that contexts in \
addition to \\!\\(\\*StyleBox[\\\"\\\\\\\"System`\\\\\\\"\\\", \\\"MR\\\"]\\) \
are needed \"\>"}
                },
              ColumnAlignments->{Right, Left}],
            GridBoxOptions->{RowLines->False}]],
        "2ColumnBox"], TraditionalForm]], "Text",
  CellTags->{"S6.14.5", "5.5"}],

Cell[TextData[{
  "Specifying interdependence of packages using ",
  StyleBox["BeginPackage", "MR"],
  ". "
}], "Caption",
  CellTags->"S6.14.5"],

Cell[TextData[{
  StyleBox["$ContextPath", "MR"],
  " is a global variable that gives a list of contexts to search in trying to \
find a symbol. "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.6"}],

Cell[CellGroupData[{

Cell["$ContextPath", "Input",
  CellLabel->"In[1]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({"Global`", "System`"}\)], "Output",
  CellLabel->"Out[1]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "This loads the standard package ",
  StyleBox["Statistics`ConfidenceIntervals`", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.7"}],

Cell["<<Statistics`ConfidenceIntervals`", "Input",
  CellLabel->"In[2]:= ",
  CellTags->"S6.14.5"],

Cell[TextData[{
  "The context for the auxiliary package ",
  StyleBox["PopulationsCommon", "MR"],
  " was automatically added to ",
  StyleBox["$ContextPath", "MR"],
  " when the package ",
  StyleBox["ConfidenceIntervals", "MR"],
  " was loaded. "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.8"}],

Cell[CellGroupData[{

Cell["$ContextPath", "Input",
  CellLabel->"In[3]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({"Statistics`ConfidenceIntervals`", 
      "Statistics`Common`PopulationsCommon`", 
      "Statistics`NormalDistribution`", 
      "Statistics`Common`DistributionsCommon`", 
      "Statistics`DescriptiveStatistics`", "Global`", "System`"}\)], "Output",\

  CellLabel->"Out[3]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "You can request all symbols from the  ",
  StyleBox["Statistics`Common`PopulationsCommon`", "MR"],
  "   context. "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.9"}],

Cell[CellGroupData[{

Cell["Names[\"Statistics`Common`PopulationsCommon`*\"]", "Input",
  CellLabel->"In[4]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({"EqualVariances", "KnownStandardDeviation", 
      "KnownVariance"}\)], "Output",
  CellLabel->"Out[4]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "You can determine the context of a particular symbol by applying the ",
  StyleBox["Context", "MR"],
  " function or by locating the symbol in the index of this book. "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.10"}],

Cell[CellGroupData[{

Cell["{Context[MeanCI], Context[KnownVariance]}", "Input",
  CellLabel->"In[5]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({"Statistics`ConfidenceIntervals`", 
      "Statistics`Common`PopulationsCommon`"}\)], "Output",
  CellLabel->"Out[5]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "Here is the confidence interval for the mean of the data set ",
  StyleBox["{-1.,", "MR"],
  " ",
  StyleBox["0.,", "MR"],
  " ",
  StyleBox["1.}", "MR"],
  ", where the default option setting ",
  StyleBox["KnownVariance", "MR"],
  " ",
  StyleBox["->", "MR"],
  " ",
  StyleBox["None", "MR"],
  " specifies that the population variance is to be estimated from the data. \
"
}], "MathCaption",
  CellTags->{"S6.14.5", "5.11"}],

Cell[CellGroupData[{

Cell["MeanCI[{-1., 0., 1.}]", "Input",
  CellLabel->"In[6]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({\(-2.4841377117503307`\), 2.4841377117503307`}\)], "Output",
  CellLabel->"Out[6]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "Here is the confidence interval for the mean of the data when the \
population variance is known to be ",
  Cell[BoxData[
      \(TraditionalForm\`1. \)], "InlineFormula"],
  ", a machine\[Hyphen]precision number. Both symbols ",
  StyleBox["MeanCI", "MR"],
  " and ",
  StyleBox["KnownVariance", "MR"],
  " are recognized because their contexts are on ",
  StyleBox["$ContextPath", "MR"],
  ". "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.12"}],

Cell[CellGroupData[{

Cell["MeanCI[{-1., 0., 1.}, KnownVariance -> 1.]", "Input",
  CellLabel->"In[7]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({\(-1.1315857340761715`\), 1.1315857340761715`}\)], "Output",
  CellLabel->"Out[7]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "When loading a standard package into a session, there is no need to be \
concerned about the existence of an auxiliary package, or the specific \
contexts of the symbols introduced by the load. However, if you would like to \
use ",
  StyleBox["BeginPackage", "MR"],
  " to base a package of your own on symbols from a standard package, then \
the contexts of the symbols are important. Consider the example packages ",
  StyleBox["myPackage1.m", "MR"],
  " and ",
  StyleBox["myPackage2.m", "MR"],
  ". "
}], "Text",
  CellTags->{"S6.14.5", "5.13"}],

Cell[" ", "ProgramTop",
  CellTags->{"S6.14.5", "5.14"}],

Cell["\<\
BeginPackage[\"myPackage1`\", \"Statistics`ConfidenceIntervals`\"]

myMeanCI::usage = \"myMeanCI[list] gives my value for MeanCI.\"

Begin[\"`Private`\"]

myMeanCI[list_] := MeanCI[list, KnownVariance -> 1.]

End[ ]

EndPackage[ ]\
\>", "Program",
  CellTags->{"S6.14.5", "5.15"}],

Cell[TextData[StyleBox[" ", "MR"]], "ProgramBottom",
  CellTags->{"S6.14.5", "5.16"}],

Cell[TextData[{
  "The sample package ",
  StyleBox["myPackage1.m", "MR"],
  ". "
}], "Caption",
  CellTags->"S6.14.5"],

Cell[TextData[{
  "In the first example package ",
  StyleBox["myPackage1.m", "MR"],
  ", the ",
  StyleBox["BeginPackage", "MR"],
  " statement calls ",
  StyleBox["Needs", "MR"],
  " on the standard package ",
  StyleBox["ConfidenceIntervals", "MR"],
  ". The function ",
  StyleBox["myMeanCI", "MR"],
  " is defined in terms of the package symbols ",
  StyleBox["MeanCI", "MR"],
  " and ",
  StyleBox["KnownVariance", "MR"],
  ". You probably won't want to create a package solely for the sake of \
hardwiring an option value for a function, but this example illustrates the \
general situation of using symbols defined in other packages in your own \
package definitions. "
}], "Text",
  CellTags->{"S6.14.5", "5.17"}],

Cell["This loads the package. ", "MathCaption",
  CellTags->{"S6.14.5", "5.18"}],

Cell["<<myPackage1`", "Input",
  CellLabel->"In[1]:= ",
  CellTags->"S6.14.5"],

Cell[TextData[{
  "This applies the package function ",
  StyleBox["myMeanCI", "MR"],
  " to the data set. "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.19"}],

Cell[CellGroupData[{

Cell["myMeanCI[{-1., 0., 1.}]", "Input",
  CellLabel->"In[2]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({\(-2.4841377117503307`\), 2.4841377117503307`}\)], "Output",
  CellLabel->"Out[2]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "Unfortunately, since the auxiliary package was not specified in ",
  StyleBox["BeginPackage", "MR"],
  ", the symbol ",
  StyleBox["KnownVariance", "MR"],
  " in the definition for ",
  StyleBox["myMeanCI", "MR"],
  " has context ",
  StyleBox["myPackage1`Private`", "MR"],
  " rather than context ",
  StyleBox["Statistics`Common`PopulationsCommon`", "MR"],
  ". The context ",
  StyleBox["myPackage1`Private`", "MR"],
  " is not on ",
  StyleBox["$ContextPath", "MR"],
  " after the package is loaded, so the option setting ",
  StyleBox["myPackage1`Private`KnownVariance", "MR"],
  " ",
  StyleBox["->", "MR"],
  " ",
  StyleBox["1.", "MR"],
  " is not recognized and the default ",
  StyleBox["KnownVariance", "MR"],
  " ",
  StyleBox["->", "MR"],
  " ",
  StyleBox["None", "MR"],
  " is used. Rather than the interval obtained using the option setting ",
  StyleBox["KnownVariance", "MR"],
  " ",
  StyleBox["->", "MR"],
  " ",
  StyleBox["1.", "MR"],
  ", ",
  StyleBox["myMeanCI", "MR"],
  " gives the same confidence interval as the default ",
  StyleBox["MeanCI", "MR"],
  ". \nThis example shows that when you want to use symbols from the standard \
packages in your own package, you should determine the specific context for \
each symbol you need, and include those contexts in the ",
  StyleBox["BeginPackage", "MR"],
  " statement of your package. The second example package does just that. "
}], "Text",
  CellTags->{"S6.14.5", "5.20"}],

Cell[" ", "ProgramTop",
  CellTags->{"S6.14.5", "5.21"}],

Cell["\<\
BeginPackage[\"myPackage2`\", \"Statistics`ConfidenceIntervals`\",
 \"Statistics`Common`PopulationsCommon`\"]

myMeanCI::usage = \"myMeanCI[list] gives my value for MeanCI.\"

Begin[\"`Private`\"]

myMeanCI[list_] := MeanCI[list, KnownVariance -> 1.]

End[ ]

EndPackage[ ]\
\>", "Program",
  CellTags->{"S6.14.5", "5.22"}],

Cell[TextData[StyleBox[" ", "MR"]], "ProgramBottom",
  CellTags->{"S6.14.5", "5.23"}],

Cell[TextData[{
  "The sample package ",
  StyleBox["myPackage2.m", "MR"],
  ". "
}], "Caption",
  CellTags->"S6.14.5"],

Cell[TextData[{
  "In the second example package ",
  StyleBox["myPackage2.m", "MR"],
  ", the ",
  StyleBox["BeginPackage", "MR"],
  " statement calls ",
  StyleBox["Needs", "MR"],
  " on both the ",
  StyleBox["ConfidenceIntervals", "MR"],
  " package and the auxiliary package ",
  StyleBox["PopulationsCommon", "MR"],
  ". This is necessary for ",
  StyleBox["Mathematica", "TI"],
  " to correctly interpret all the standard package symbols used in the ",
  StyleBox["myPackage2.m", "MR"],
  ". "
}], "Text",
  CellTags->{"S6.14.5", "5.24"}],

Cell["This loads the package. ", "MathCaption",
  CellTags->{"S6.14.5", "5.25"}],

Cell["<<myPackage2`", "Input",
  CellLabel->"In[1]:= ",
  CellTags->"S6.14.5"],

Cell[TextData[{
  "Now ",
  StyleBox["myMeanCI", "MR"],
  " implements ",
  StyleBox["KnownVariance", "MR"],
  " ",
  StyleBox["->", "MR"],
  " ",
  StyleBox["1.", "MR"],
  " as desired. "
}], "MathCaption",
  CellTags->{"S6.14.5", "5.26"}],

Cell[CellGroupData[{

Cell["myMeanCI[{-1., 0., 1.}]", "Input",
  CellLabel->"In[2]:= ",
  CellTags->"S6.14.5"],

Cell[BoxData[
    \({\(-1.1315857340761715`\), 1.1315857340761715`}\)], "Output",
  CellLabel->"Out[2]= ",
  CellTags->"S6.14.5"]
}, Open  ]],

Cell[TextData[{
  "Auxiliary packages are usually employed to allow two or more packages to \
share symbols without shadowing. Symbol shadowing can be useful when it warns \
you that two symbols with the same name, but different purposes, occur in \
your session. However, in the case of standard packages from a single \
subdirectory (such as ",
  StyleBox["Statistics", "MR"],
  "), the packages are meant to work together and shadowing is undesirable. \n\
In this book, symbols introduced by an auxiliary package are documented both \
with the standard packages that load the auxiliary package and in a separate \
section devoted to the auxiliary package. "
}], "Text",
  CellTags->{"S6.14.5", "5.27"}]
},
FrontEndVersion->"4.0 for X",
ScreenRectangle->{{0, 800}, {0, 600}},
WindowSize->{520, 455},
WindowMargins->{{140, Automatic}, {Automatic, 72}},
StyleDefinitions -> "HelpBrowser.nb"
]


(***********************************************************************
Cached data follows.  If you edit this Notebook file directly, not using
Mathematica, you must remove the line containing CacheID at the top of 
the file.  The cache data will then be recreated when you save this file 
from within Mathematica.
***********************************************************************)

(*CellTagsOutline
CellTagsIndex->{
  "S6.14.0"->{
    Cell[1717, 49, 141, 5, 70, "Section",
      CellTags->{"S6.14.0", "0.1"}],
    Cell[1861, 56, 768, 15, 70, "Text",
      CellTags->{"S6.14.0", "0.2"}]},
  "0.1"->{
    Cell[1717, 49, 141, 5, 70, "Section",
      CellTags->{"S6.14.0", "0.1"}]},
  "0.2"->{
    Cell[1861, 56, 768, 15, 70, "Text",
      CellTags->{"S6.14.0", "0.2"}]},
  "S6.14.1"->{
    Cell[2632, 73, 62, 1, 70, "Subsection",
      CellTags->{"S6.14.1", "1.1"}],
    Cell[2697, 76, 2600, 61, 70, "Text",
      CellTags->{"S6.14.1", "1.2"}],
    Cell[5300, 139, 1920, 42, 70, "Text",
      CellTags->{"S6.14.1", "1.3"}],
    Cell[7223, 183, 135, 5, 70, "Caption",
      CellTags->"S6.14.1"],
    Cell[7361, 190, 126, 4, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.4"}],
    Cell[7490, 196, 100, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[7593, 200, 156, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.5"}],
    Cell[7774, 209, 78, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[7855, 213, 117, 3, 70, "Output",
      CellTags->"S6.14.1"],
    Cell[7987, 219, 105, 1, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.6"}],
    Cell[8117, 224, 87, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[8207, 228, 86, 3, 70, "Output",
      CellTags->"S6.14.1"],
    Cell[8308, 234, 1176, 23, 70, "Text",
      CellTags->{"S6.14.1", "1.7"}],
    Cell[9487, 259, 138, 4, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.8"}],
    Cell[9628, 265, 83, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[9714, 269, 204, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.9"}],
    Cell[9943, 278, 87, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[10033, 282, 314, 6, 70, "Message",
      CellTags->"S6.14.1"],
    Cell[10362, 291, 205, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.10"}],
    Cell[10592, 300, 86, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[10681, 304, 103, 2, 70, "Print",
      CellTags->"S6.14.1"],
    Cell[10799, 309, 88, 1, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.11"}],
    Cell[10912, 314, 92, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[11007, 318, 118, 3, 70, "Print",
      CellTags->"S6.14.1"],
    Cell[11140, 324, 600, 12, 70, "Text",
      CellTags->{"S6.14.1", "1.12"}],
    Cell[11743, 338, 271, 9, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.13"}],
    Cell[12039, 351, 73, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[12115, 355, 91, 3, 70, "Output",
      CellTags->"S6.14.1"],
    Cell[12221, 361, 188, 7, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.14"}],
    Cell[12412, 370, 79, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[12494, 374, 197, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.15"}],
    Cell[12716, 383, 92, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[12811, 387, 307, 6, 70, "Message",
      CellTags->"S6.14.1"],
    Cell[13133, 396, 154, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.16"}],
    Cell[13290, 403, 77, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[13370, 407, 227, 6, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.17"}],
    Cell[13622, 417, 102, 2, 70, "Input",
      CellTags->"S6.14.1"],
    Cell[13727, 421, 91, 3, 70, "Output",
      CellTags->"S6.14.1"],
    Cell[13833, 427, 997, 21, 70, "Text",
      CellTags->{"S6.14.1", "1.18"}],
    Cell[14833, 450, 607, 14, 70, "Text",
      CellTags->{"S6.14.1", "1.19"}],
    Cell[15443, 466, 154, 5, 70, "Caption",
      CellTags->"S6.14.1"]},
  "1.1"->{
    Cell[2632, 73, 62, 1, 70, "Subsection",
      CellTags->{"S6.14.1", "1.1"}]},
  "1.2"->{
    Cell[2697, 76, 2600, 61, 70, "Text",
      CellTags->{"S6.14.1", "1.2"}]},
  "1.3"->{
    Cell[5300, 139, 1920, 42, 70, "Text",
      CellTags->{"S6.14.1", "1.3"}]},
  "1.4"->{
    Cell[7361, 190, 126, 4, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.4"}]},
  "1.5"->{
    Cell[7593, 200, 156, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.5"}]},
  "1.6"->{
    Cell[7987, 219, 105, 1, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.6"}]},
  "1.7"->{
    Cell[8308, 234, 1176, 23, 70, "Text",
      CellTags->{"S6.14.1", "1.7"}]},
  "1.8"->{
    Cell[9487, 259, 138, 4, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.8"}]},
  "1.9"->{
    Cell[9714, 269, 204, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.9"}]},
  "1.10"->{
    Cell[10362, 291, 205, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.10"}]},
  "1.11"->{
    Cell[10799, 309, 88, 1, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.11"}]},
  "1.12"->{
    Cell[11140, 324, 600, 12, 70, "Text",
      CellTags->{"S6.14.1", "1.12"}]},
  "1.13"->{
    Cell[11743, 338, 271, 9, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.13"}]},
  "1.14"->{
    Cell[12221, 361, 188, 7, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.14"}]},
  "1.15"->{
    Cell[12494, 374, 197, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.15"}]},
  "1.16"->{
    Cell[13133, 396, 154, 5, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.16"}]},
  "1.17"->{
    Cell[13370, 407, 227, 6, 70, "MathCaption",
      CellTags->{"S6.14.1", "1.17"}]},
  "1.18"->{
    Cell[13833, 427, 997, 21, 70, "Text",
      CellTags->{"S6.14.1", "1.18"}]},
  "1.19"->{
    Cell[14833, 450, 607, 14, 70, "Text",
      CellTags->{"S6.14.1", "1.19"}]},
  "S6.14.2"->{
    Cell[15600, 473, 70, 1, 70, "Subsection",
      CellTags->{"S6.14.2", "2.1"}],
    Cell[15673, 476, 537, 13, 70, "Text",
      CellTags->{"S6.14.2", "2.2"}],
    Cell[16213, 491, 3263, 65, 70, "Text",
      CellTags->{"S6.14.2", "2.3"}],
    Cell[19479, 558, 65, 1, 70, "Caption",
      CellTags->"S6.14.2"],
    Cell[19547, 561, 1931, 44, 70, "Text",
      CellTags->{"S6.14.2", "2.4"}],
    Cell[21481, 607, 378, 11, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.5"}],
    Cell[21884, 622, 74, 2, 70, "Input",
      CellTags->"S6.14.2"],
    Cell[21961, 626, 150, 4, 70, "Output",
      CellTags->"S6.14.2"],
    Cell[22126, 633, 395, 13, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.6"}],
    Cell[22546, 650, 149, 5, 70, "Input",
      CellTags->"S6.14.2"],
    Cell[22698, 657, 108, 3, 70, "Output",
      CellTags->"S6.14.2"],
    Cell[22821, 663, 250, 9, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.7"}],
    Cell[23096, 676, 100, 2, 70, "Input",
      CellTags->"S6.14.2"],
    Cell[23199, 680, 97, 3, 70, "Output",
      CellTags->"S6.14.2"],
    Cell[23311, 686, 154, 5, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.8"}],
    Cell[23490, 695, 74, 2, 70, "Input",
      CellTags->"S6.14.2"],
    Cell[23567, 699, 178, 4, 70, "Output",
      CellTags->"S6.14.2"]},
  "2.1"->{
    Cell[15600, 473, 70, 1, 70, "Subsection",
      CellTags->{"S6.14.2", "2.1"}]},
  "2.2"->{
    Cell[15673, 476, 537, 13, 70, "Text",
      CellTags->{"S6.14.2", "2.2"}]},
  "2.3"->{
    Cell[16213, 491, 3263, 65, 70, "Text",
      CellTags->{"S6.14.2", "2.3"}]},
  "2.4"->{
    Cell[19547, 561, 1931, 44, 70, "Text",
      CellTags->{"S6.14.2", "2.4"}]},
  "2.5"->{
    Cell[21481, 607, 378, 11, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.5"}]},
  "2.6"->{
    Cell[22126, 633, 395, 13, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.6"}]},
  "2.7"->{
    Cell[22821, 663, 250, 9, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.7"}]},
  "2.8"->{
    Cell[23311, 686, 154, 5, 70, "MathCaption",
      CellTags->{"S6.14.2", "2.8"}]},
  "S6.14.3"->{
    Cell[23760, 706, 74, 1, 70, "Subsection",
      CellTags->{"S6.14.3", "3.1"}],
    Cell[23837, 709, 404, 8, 70, "Text",
      CellTags->{"S6.14.3", "3.2"}],
    Cell[24244, 719, 80, 1, 70, "Subsubsection",
      CellTags->{"S6.14.3", "3.3"}],
    Cell[24327, 722, 632, 14, 70, "Text",
      CellTags->{"S6.14.3", "3.4"}],
    Cell[24962, 738, 84, 1, 70, "Caption",
      CellTags->"S6.14.3"],
    Cell[25049, 741, 945, 19, 70, "Text",
      CellTags->{"S6.14.3", "3.5"}],
    Cell[25997, 762, 249, 7, 70, "MathCaption",
      CellTags->{"S6.14.3", "3.6"}],
    Cell[26249, 771, 76, 2, 70, "Input",
      CellTags->"S6.14.3"],
    Cell[26328, 775, 282, 9, 70, "MathCaption",
      CellTags->{"S6.14.3", "3.7"}],
    Cell[26635, 788, 95, 2, 70, "Input",
      CellTags->"S6.14.3"],
    Cell[26733, 792, 3330, 247, 70, 3256, 244, "GraphicsData", 
    "PostScript", "Graphics",
      ImageCacheValid->False,
      CellTags->"S6.14.3"],
    Cell[30066, 1041, 178, 5, 70, "Output",
      CellTags->"S6.14.3"],
    Cell[30259, 1049, 75, 1, 70, "Subsubsection",
      CellTags->{"S6.14.3", "3.8"}],
    Cell[30337, 1052, 686, 18, 70, "Text",
      CellTags->{"S6.14.3", "3.9"}],
    Cell[31026, 1072, 1403, 25, 70, "Text",
      CellTags->{"S6.14.3", "3.10"}],
    Cell[32432, 1099, 124, 5, 70, "Caption",
      CellTags->"S6.14.3"],
    Cell[32559, 1106, 1081, 25, 70, "Text",
      CellTags->{"S6.14.3", "3.11"}]},
  "3.1"->{
    Cell[23760, 706, 74, 1, 70, "Subsection",
      CellTags->{"S6.14.3", "3.1"}]},
  "3.2"->{
    Cell[23837, 709, 404, 8, 70, "Text",
      CellTags->{"S6.14.3", "3.2"}]},
  "3.3"->{
    Cell[24244, 719, 80, 1, 70, "Subsubsection",
      CellTags->{"S6.14.3", "3.3"}]},
  "3.4"->{
    Cell[24327, 722, 632, 14, 70, "Text",
      CellTags->{"S6.14.3", "3.4"}]},
  "3.5"->{
    Cell[25049, 741, 945, 19, 70, "Text",
      CellTags->{"S6.14.3", "3.5"}]},
  "3.6"->{
    Cell[25997, 762, 249, 7, 70, "MathCaption",
      CellTags->{"S6.14.3", "3.6"}]},
  "3.7"->{
    Cell[26328, 775, 282, 9, 70, "MathCaption",
      CellTags->{"S6.14.3", "3.7"}]},
  "3.8"->{
    Cell[30259, 1049, 75, 1, 70, "Subsubsection",
      CellTags->{"S6.14.3", "3.8"}]},
  "3.9"->{
    Cell[30337, 1052, 686, 18, 70, "Text",
      CellTags->{"S6.14.3", "3.9"}]},
  "3.10"->{
    Cell[31026, 1072, 1403, 25, 70, "Text",
      CellTags->{"S6.14.3", "3.10"}]},
  "3.11"->{
    Cell[32559, 1106, 1081, 25, 70, "Text",
      CellTags->{"S6.14.3", "3.11"}]},
  "S6.14.4"->{
    Cell[33643, 1133, 88, 1, 70, "Subsection",
      CellTags->{"S6.14.4", "4.1"}],
    Cell[33734, 1136, 1271, 25, 70, "Text",
      CellTags->{"S6.14.4", "4.2"}],
    Cell[35008, 1163, 183, 7, 70, "Caption",
      CellTags->"S6.14.4"],
    Cell[35194, 1172, 1793, 60, 70, "Text",
      CellTags->{"S6.14.4", "4.3"}]},
  "4.1"->{
    Cell[33643, 1133, 88, 1, 70, "Subsection",
      CellTags->{"S6.14.4", "4.1"}]},
  "4.2"->{
    Cell[33734, 1136, 1271, 25, 70, "Text",
      CellTags->{"S6.14.4", "4.2"}]},
  "4.3"->{
    Cell[35194, 1172, 1793, 60, 70, "Text",
      CellTags->{"S6.14.4", "4.3"}]},
  "S6.14.5"->{
    Cell[36990, 1234, 171, 5, 70, "Subsection",
      CellTags->{"S6.14.5", "5.1"}],
    Cell[37164, 1241, 410, 11, 70, "Text",
      CellTags->{"S6.14.5", "5.2"}],
    Cell[37577, 1254, 2859, 49, 70, "Text",
      CellTags->{"S6.14.5", "5.3"}],
    Cell[40439, 1305, 116, 4, 70, "Caption",
      CellTags->"S6.14.5"],
    Cell[40558, 1311, 635, 16, 70, "Text",
      CellTags->{"S6.14.5", "5.4"}],
    Cell[41196, 1329, 1230, 28, 70, "Text",
      CellTags->{"S6.14.5", "5.5"}],
    Cell[42429, 1359, 145, 5, 70, "Caption",
      CellTags->"S6.14.5"],
    Cell[42577, 1366, 197, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.6"}],
    Cell[42799, 1375, 77, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[42879, 1379, 104, 3, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[42998, 1385, 164, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.7"}],
    Cell[43165, 1392, 98, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[43266, 1396, 300, 9, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.8"}],
    Cell[43591, 1409, 77, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[43671, 1413, 322, 8, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[44008, 1424, 185, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.9"}],
    Cell[44218, 1433, 113, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[44334, 1437, 150, 4, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[44499, 1444, 239, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.10"}],
    Cell[44763, 1453, 106, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[44872, 1457, 164, 4, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[45051, 1464, 446, 16, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.11"}],
    Cell[45522, 1484, 86, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[45611, 1488, 129, 3, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[45755, 1494, 467, 13, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.12"}],
    Cell[46247, 1511, 107, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[46357, 1515, 129, 3, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[46501, 1521, 569, 13, 70, "Text",
      CellTags->{"S6.14.5", "5.13"}],
    Cell[47073, 1536, 56, 1, 70, "ProgramTop",
      CellTags->{"S6.14.5", "5.14"}],
    Cell[47132, 1539, 290, 13, 70, "Program",
      CellTags->{"S6.14.5", "5.15"}],
    Cell[47425, 1554, 85, 1, 70, "ProgramBottom",
      CellTags->{"S6.14.5", "5.16"}],
    Cell[47513, 1557, 119, 5, 70, "Caption",
      CellTags->"S6.14.5"],
    Cell[47635, 1564, 722, 20, 70, "Text",
      CellTags->{"S6.14.5", "5.17"}],
    Cell[48360, 1586, 80, 1, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.18"}],
    Cell[48443, 1589, 78, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[48524, 1593, 160, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.19"}],
    Cell[48709, 1602, 88, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[48800, 1606, 129, 3, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[48944, 1612, 1470, 43, 70, "Text",
      CellTags->{"S6.14.5", "5.20"}],
    Cell[50417, 1657, 56, 1, 70, "ProgramTop",
      CellTags->{"S6.14.5", "5.21"}],
    Cell[50476, 1660, 333, 14, 70, "Program",
      CellTags->{"S6.14.5", "5.22"}],
    Cell[50812, 1676, 85, 1, 70, "ProgramBottom",
      CellTags->{"S6.14.5", "5.23"}],
    Cell[50900, 1679, 119, 5, 70, "Caption",
      CellTags->"S6.14.5"],
    Cell[51022, 1686, 545, 17, 70, "Text",
      CellTags->{"S6.14.5", "5.24"}],
    Cell[51570, 1705, 80, 1, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.25"}],
    Cell[51653, 1708, 78, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[51734, 1712, 240, 11, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.26"}],
    Cell[51999, 1727, 88, 2, 70, "Input",
      CellTags->"S6.14.5"],
    Cell[52090, 1731, 129, 3, 70, "Output",
      CellTags->"S6.14.5"],
    Cell[52234, 1737, 705, 12, 70, "Text",
      CellTags->{"S6.14.5", "5.27"}]},
  "5.1"->{
    Cell[36990, 1234, 171, 5, 70, "Subsection",
      CellTags->{"S6.14.5", "5.1"}]},
  "5.2"->{
    Cell[37164, 1241, 410, 11, 70, "Text",
      CellTags->{"S6.14.5", "5.2"}]},
  "5.3"->{
    Cell[37577, 1254, 2859, 49, 70, "Text",
      CellTags->{"S6.14.5", "5.3"}]},
  "5.4"->{
    Cell[40558, 1311, 635, 16, 70, "Text",
      CellTags->{"S6.14.5", "5.4"}]},
  "5.5"->{
    Cell[41196, 1329, 1230, 28, 70, "Text",
      CellTags->{"S6.14.5", "5.5"}]},
  "5.6"->{
    Cell[42577, 1366, 197, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.6"}]},
  "5.7"->{
    Cell[42998, 1385, 164, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.7"}]},
  "5.8"->{
    Cell[43266, 1396, 300, 9, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.8"}]},
  "5.9"->{
    Cell[44008, 1424, 185, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.9"}]},
  "5.10"->{
    Cell[44499, 1444, 239, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.10"}]},
  "5.11"->{
    Cell[45051, 1464, 446, 16, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.11"}]},
  "5.12"->{
    Cell[45755, 1494, 467, 13, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.12"}]},
  "5.13"->{
    Cell[46501, 1521, 569, 13, 70, "Text",
      CellTags->{"S6.14.5", "5.13"}]},
  "5.14"->{
    Cell[47073, 1536, 56, 1, 70, "ProgramTop",
      CellTags->{"S6.14.5", "5.14"}]},
  "5.15"->{
    Cell[47132, 1539, 290, 13, 70, "Program",
      CellTags->{"S6.14.5", "5.15"}]},
  "5.16"->{
    Cell[47425, 1554, 85, 1, 70, "ProgramBottom",
      CellTags->{"S6.14.5", "5.16"}]},
  "5.17"->{
    Cell[47635, 1564, 722, 20, 70, "Text",
      CellTags->{"S6.14.5", "5.17"}]},
  "5.18"->{
    Cell[48360, 1586, 80, 1, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.18"}]},
  "5.19"->{
    Cell[48524, 1593, 160, 5, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.19"}]},
  "5.20"->{
    Cell[48944, 1612, 1470, 43, 70, "Text",
      CellTags->{"S6.14.5", "5.20"}]},
  "5.21"->{
    Cell[50417, 1657, 56, 1, 70, "ProgramTop",
      CellTags->{"S6.14.5", "5.21"}]},
  "5.22"->{
    Cell[50476, 1660, 333, 14, 70, "Program",
      CellTags->{"S6.14.5", "5.22"}]},
  "5.23"->{
    Cell[50812, 1676, 85, 1, 70, "ProgramBottom",
      CellTags->{"S6.14.5", "5.23"}]},
  "5.24"->{
    Cell[51022, 1686, 545, 17, 70, "Text",
      CellTags->{"S6.14.5", "5.24"}]},
  "5.25"->{
    Cell[51570, 1705, 80, 1, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.25"}]},
  "5.26"->{
    Cell[51734, 1712, 240, 11, 70, "MathCaption",
      CellTags->{"S6.14.5", "5.26"}]},
  "5.27"->{
    Cell[52234, 1737, 705, 12, 70, "Text",
      CellTags->{"S6.14.5", "5.27"}]}
  }
*)

(*CellTagsIndex
CellTagsIndex->{
  {"S6.14.0", 53568, 1768},
  {"0.1", 53736, 1773},
  {"0.2", 53827, 1776},
  {"S6.14.1", 53920, 1779},
  {"1.1", 57041, 1862},
  {"1.2", 57134, 1865},
  {"1.3", 57224, 1868},
  {"1.4", 57315, 1871},
  {"1.5", 57411, 1874},
  {"1.6", 57507, 1877},
  {"1.7", 57603, 1880},
  {"1.8", 57694, 1883},
  {"1.9", 57790, 1886},
  {"1.10", 57887, 1889},
  {"1.11", 57986, 1892},
  {"1.12", 58084, 1895},
  {"1.13", 58177, 1898},
  {"1.14", 58276, 1901},
  {"1.15", 58375, 1904},
  {"1.16", 58474, 1907},
  {"1.17", 58573, 1910},
  {"1.18", 58672, 1913},
  {"1.19", 58765, 1916},
  {"S6.14.2", 58861, 1919},
  {"2.1", 60169, 1954},
  {"2.2", 60264, 1957},
  {"2.3", 60355, 1960},
  {"2.4", 60447, 1963},
  {"2.5", 60539, 1966},
  {"2.6", 60637, 1969},
  {"2.7", 60735, 1972},
  {"2.8", 60832, 1975},
  {"S6.14.3", 60933, 1978},
  {"3.1", 62357, 2015},
  {"3.2", 62452, 2018},
  {"3.3", 62542, 2021},
  {"3.4", 62640, 2024},
  {"3.5", 62731, 2027},
  {"3.6", 62822, 2030},
  {"3.7", 62919, 2033},
  {"3.8", 63016, 2036},
  {"3.9", 63115, 2039},
  {"3.10", 63208, 2042},
  {"3.11", 63303, 2045},
  {"S6.14.4", 63401, 2048},
  {"4.1", 63732, 2057},
  {"4.2", 63828, 2060},
  {"4.3", 63921, 2063},
  {"S6.14.5", 64018, 2066},
  {"5.1", 67952, 2167},
  {"5.2", 68049, 2170},
  {"5.3", 68141, 2173},
  {"5.4", 68234, 2176},
  {"5.5", 68326, 2179},
  {"5.6", 68419, 2182},
  {"5.7", 68517, 2185},
  {"5.8", 68615, 2188},
  {"5.9", 68713, 2191},
  {"5.10", 68812, 2194},
  {"5.11", 68912, 2197},
  {"5.12", 69013, 2200},
  {"5.13", 69114, 2203},
  {"5.14", 69208, 2206},
  {"5.15", 69306, 2209},
  {"5.16", 69403, 2212},
  {"5.17", 69504, 2215},
  {"5.18", 69598, 2218},
  {"5.19", 69697, 2221},
  {"5.20", 69797, 2224},
  {"5.21", 69892, 2227},
  {"5.22", 69990, 2230},
  {"5.23", 70087, 2233},
  {"5.24", 70188, 2236},
  {"5.25", 70282, 2239},
  {"5.26", 70381, 2242},
  {"5.27", 70482, 2245}
  }
*)

(*NotebookFileOutline
Notebook[{
Cell[1717, 49, 141, 5, 70, "Section",
  CellTags->{"S6.14.0", "0.1"}],
Cell[1861, 56, 768, 15, 70, "Text",
  CellTags->{"S6.14.0", "0.2"}],
Cell[2632, 73, 62, 1, 70, "Subsection",
  CellTags->{"S6.14.1", "1.1"}],
Cell[2697, 76, 2600, 61, 70, "Text",
  CellTags->{"S6.14.1", "1.2"}],
Cell[5300, 139, 1920, 42, 70, "Text",
  CellTags->{"S6.14.1", "1.3"}],
Cell[7223, 183, 135, 5, 70, "Caption",
  CellTags->"S6.14.1"],
Cell[7361, 190, 126, 4, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.4"}],
Cell[7490, 196, 100, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[7593, 200, 156, 5, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.5"}],

Cell[CellGroupData[{
Cell[7774, 209, 78, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[7855, 213, 117, 3, 70, "Output",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[7987, 219, 105, 1, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.6"}],

Cell[CellGroupData[{
Cell[8117, 224, 87, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[8207, 228, 86, 3, 70, "Output",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[8308, 234, 1176, 23, 70, "Text",
  CellTags->{"S6.14.1", "1.7"}],
Cell[9487, 259, 138, 4, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.8"}],
Cell[9628, 265, 83, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[9714, 269, 204, 5, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.9"}],

Cell[CellGroupData[{
Cell[9943, 278, 87, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[10033, 282, 314, 6, 70, "Message",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[10362, 291, 205, 5, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.10"}],

Cell[CellGroupData[{
Cell[10592, 300, 86, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[10681, 304, 103, 2, 70, "Print",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[10799, 309, 88, 1, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.11"}],

Cell[CellGroupData[{
Cell[10912, 314, 92, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[11007, 318, 118, 3, 70, "Print",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[11140, 324, 600, 12, 70, "Text",
  CellTags->{"S6.14.1", "1.12"}],
Cell[11743, 338, 271, 9, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.13"}],

Cell[CellGroupData[{
Cell[12039, 351, 73, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[12115, 355, 91, 3, 70, "Output",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[12221, 361, 188, 7, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.14"}],
Cell[12412, 370, 79, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[12494, 374, 197, 5, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.15"}],

Cell[CellGroupData[{
Cell[12716, 383, 92, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[12811, 387, 307, 6, 70, "Message",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[13133, 396, 154, 5, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.16"}],
Cell[13290, 403, 77, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[13370, 407, 227, 6, 70, "MathCaption",
  CellTags->{"S6.14.1", "1.17"}],

Cell[CellGroupData[{
Cell[13622, 417, 102, 2, 70, "Input",
  CellTags->"S6.14.1"],
Cell[13727, 421, 91, 3, 70, "Output",
  CellTags->"S6.14.1"]
}, Open  ]],
Cell[13833, 427, 997, 21, 70, "Text",
  CellTags->{"S6.14.1", "1.18"}],
Cell[14833, 450, 607, 14, 70, "Text",
  CellTags->{"S6.14.1", "1.19"}],
Cell[15443, 466, 154, 5, 70, "Caption",
  CellTags->"S6.14.1"],
Cell[15600, 473, 70, 1, 70, "Subsection",
  CellTags->{"S6.14.2", "2.1"}],
Cell[15673, 476, 537, 13, 70, "Text",
  CellTags->{"S6.14.2", "2.2"}],
Cell[16213, 491, 3263, 65, 70, "Text",
  CellTags->{"S6.14.2", "2.3"}],
Cell[19479, 558, 65, 1, 70, "Caption",
  CellTags->"S6.14.2"],
Cell[19547, 561, 1931, 44, 70, "Text",
  CellTags->{"S6.14.2", "2.4"}],
Cell[21481, 607, 378, 11, 70, "MathCaption",
  CellTags->{"S6.14.2", "2.5"}],

Cell[CellGroupData[{
Cell[21884, 622, 74, 2, 70, "Input",
  CellTags->"S6.14.2"],
Cell[21961, 626, 150, 4, 70, "Output",
  CellTags->"S6.14.2"]
}, Open  ]],
Cell[22126, 633, 395, 13, 70, "MathCaption",
  CellTags->{"S6.14.2", "2.6"}],

Cell[CellGroupData[{
Cell[22546, 650, 149, 5, 70, "Input",
  CellTags->"S6.14.2"],
Cell[22698, 657, 108, 3, 70, "Output",
  CellTags->"S6.14.2"]
}, Open  ]],
Cell[22821, 663, 250, 9, 70, "MathCaption",
  CellTags->{"S6.14.2", "2.7"}],

Cell[CellGroupData[{
Cell[23096, 676, 100, 2, 70, "Input",
  CellTags->"S6.14.2"],
Cell[23199, 680, 97, 3, 70, "Output",
  CellTags->"S6.14.2"]
}, Open  ]],
Cell[23311, 686, 154, 5, 70, "MathCaption",
  CellTags->{"S6.14.2", "2.8"}],

Cell[CellGroupData[{
Cell[23490, 695, 74, 2, 70, "Input",
  CellTags->"S6.14.2"],
Cell[23567, 699, 178, 4, 70, "Output",
  CellTags->"S6.14.2"]
}, Open  ]],
Cell[23760, 706, 74, 1, 70, "Subsection",
  CellTags->{"S6.14.3", "3.1"}],
Cell[23837, 709, 404, 8, 70, "Text",
  CellTags->{"S6.14.3", "3.2"}],
Cell[24244, 719, 80, 1, 70, "Subsubsection",
  CellTags->{"S6.14.3", "3.3"}],
Cell[24327, 722, 632, 14, 70, "Text",
  CellTags->{"S6.14.3", "3.4"}],
Cell[24962, 738, 84, 1, 70, "Caption",
  CellTags->"S6.14.3"],
Cell[25049, 741, 945, 19, 70, "Text",
  CellTags->{"S6.14.3", "3.5"}],
Cell[25997, 762, 249, 7, 70, "MathCaption",
  CellTags->{"S6.14.3", "3.6"}],
Cell[26249, 771, 76, 2, 70, "Input",
  CellTags->"S6.14.3"],
Cell[26328, 775, 282, 9, 70, "MathCaption",
  CellTags->{"S6.14.3", "3.7"}],

Cell[CellGroupData[{
Cell[26635, 788, 95, 2, 70, "Input",
  CellTags->"S6.14.3"],
Cell[26733, 792, 3330, 247, 70, 3256, 244, "GraphicsData", "PostScript", \
"Graphics",
  ImageCacheValid->False,
  CellTags->"S6.14.3"],
Cell[30066, 1041, 178, 5, 70, "Output",
  CellTags->"S6.14.3"]
}, Open  ]],
Cell[30259, 1049, 75, 1, 70, "Subsubsection",
  CellTags->{"S6.14.3", "3.8"}],
Cell[30337, 1052, 686, 18, 70, "Text",
  CellTags->{"S6.14.3", "3.9"}],
Cell[31026, 1072, 1403, 25, 70, "Text",
  CellTags->{"S6.14.3", "3.10"}],
Cell[32432, 1099, 124, 5, 70, "Caption",
  CellTags->"S6.14.3"],
Cell[32559, 1106, 1081, 25, 70, "Text",
  CellTags->{"S6.14.3", "3.11"}],
Cell[33643, 1133, 88, 1, 70, "Subsection",
  CellTags->{"S6.14.4", "4.1"}],
Cell[33734, 1136, 1271, 25, 70, "Text",
  CellTags->{"S6.14.4", "4.2"}],
Cell[35008, 1163, 183, 7, 70, "Caption",
  CellTags->"S6.14.4"],
Cell[35194, 1172, 1793, 60, 70, "Text",
  CellTags->{"S6.14.4", "4.3"}],
Cell[36990, 1234, 171, 5, 70, "Subsection",
  CellTags->{"S6.14.5", "5.1"}],
Cell[37164, 1241, 410, 11, 70, "Text",
  CellTags->{"S6.14.5", "5.2"}],
Cell[37577, 1254, 2859, 49, 70, "Text",
  CellTags->{"S6.14.5", "5.3"}],
Cell[40439, 1305, 116, 4, 70, "Caption",
  CellTags->"S6.14.5"],
Cell[40558, 1311, 635, 16, 70, "Text",
  CellTags->{"S6.14.5", "5.4"}],
Cell[41196, 1329, 1230, 28, 70, "Text",
  CellTags->{"S6.14.5", "5.5"}],
Cell[42429, 1359, 145, 5, 70, "Caption",
  CellTags->"S6.14.5"],
Cell[42577, 1366, 197, 5, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.6"}],

Cell[CellGroupData[{
Cell[42799, 1375, 77, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[42879, 1379, 104, 3, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[42998, 1385, 164, 5, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.7"}],
Cell[43165, 1392, 98, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[43266, 1396, 300, 9, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.8"}],

Cell[CellGroupData[{
Cell[43591, 1409, 77, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[43671, 1413, 322, 8, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[44008, 1424, 185, 5, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.9"}],

Cell[CellGroupData[{
Cell[44218, 1433, 113, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[44334, 1437, 150, 4, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[44499, 1444, 239, 5, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.10"}],

Cell[CellGroupData[{
Cell[44763, 1453, 106, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[44872, 1457, 164, 4, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[45051, 1464, 446, 16, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.11"}],

Cell[CellGroupData[{
Cell[45522, 1484, 86, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[45611, 1488, 129, 3, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[45755, 1494, 467, 13, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.12"}],

Cell[CellGroupData[{
Cell[46247, 1511, 107, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[46357, 1515, 129, 3, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[46501, 1521, 569, 13, 70, "Text",
  CellTags->{"S6.14.5", "5.13"}],
Cell[47073, 1536, 56, 1, 70, "ProgramTop",
  CellTags->{"S6.14.5", "5.14"}],
Cell[47132, 1539, 290, 13, 70, "Program",
  CellTags->{"S6.14.5", "5.15"}],
Cell[47425, 1554, 85, 1, 70, "ProgramBottom",
  CellTags->{"S6.14.5", "5.16"}],
Cell[47513, 1557, 119, 5, 70, "Caption",
  CellTags->"S6.14.5"],
Cell[47635, 1564, 722, 20, 70, "Text",
  CellTags->{"S6.14.5", "5.17"}],
Cell[48360, 1586, 80, 1, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.18"}],
Cell[48443, 1589, 78, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[48524, 1593, 160, 5, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.19"}],

Cell[CellGroupData[{
Cell[48709, 1602, 88, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[48800, 1606, 129, 3, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[48944, 1612, 1470, 43, 70, "Text",
  CellTags->{"S6.14.5", "5.20"}],
Cell[50417, 1657, 56, 1, 70, "ProgramTop",
  CellTags->{"S6.14.5", "5.21"}],
Cell[50476, 1660, 333, 14, 70, "Program",
  CellTags->{"S6.14.5", "5.22"}],
Cell[50812, 1676, 85, 1, 70, "ProgramBottom",
  CellTags->{"S6.14.5", "5.23"}],
Cell[50900, 1679, 119, 5, 70, "Caption",
  CellTags->"S6.14.5"],
Cell[51022, 1686, 545, 17, 70, "Text",
  CellTags->{"S6.14.5", "5.24"}],
Cell[51570, 1705, 80, 1, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.25"}],
Cell[51653, 1708, 78, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[51734, 1712, 240, 11, 70, "MathCaption",
  CellTags->{"S6.14.5", "5.26"}],

Cell[CellGroupData[{
Cell[51999, 1727, 88, 2, 70, "Input",
  CellTags->"S6.14.5"],
Cell[52090, 1731, 129, 3, 70, "Output",
  CellTags->"S6.14.5"]
}, Open  ]],
Cell[52234, 1737, 705, 12, 70, "Text",
  CellTags->{"S6.14.5", "5.27"}]
}
]
*)




(***********************************************************************
End of Mathematica Notebook file.
***********************************************************************)

