amsmath.bug [1996/11/06]

This file contains a log of bug fixes and other changes for 
version 2.0 of the amsmath package.

Please direct bug reports or related questions to the AMS technical
support address: tech-support@ams.org (or by phone: 401-455-4080;
in the USA or Canada, 1-800-321-4267 ext 4080).

There is also a good alternative avenue for reporting bugs, through
the LaTeX bugs database Web page:

  http://www.latex-project.org/cgi-bin/ltxbugs2html

The bug report and responses then go into the public record and can be
searched for and so on.

------------------------------------------------------------------------
Not amsmath bugs
------------------------------------------------------------------------

---amsmath: Many bug reports arise from the use of `fragile' commands
inside `moving' arguments (article titles, section titles, figure
captions, table captions, etc.). Bear in mind that not all math commands
are robust, and some that are robust in ordinary LaTeX become fragile in
AMS-LaTeX (e.g., \longrightarrow). See Section C.1.3 of the LaTeX book.
Most of the more common math commands have been made robust, but for
each such command there is a hidden cost to users: making it robust uses
up an extra control sequence name, which makes the following sort of
error message more likely:

  TeX capacity exceeded [hash size=3500]

Unlike the `require \protect' solution, this latter problem can be very
difficult for the average user to solve: sometimes there is no good
solution short of upgrading their whole TeX system, perhaps including
hardware (if the new version of TeX requires more system resources).

---[amslatex/2104] Error messages or wrong output with \ensuremath
inside an alignment environment (aligned, array, etc).

  ! Incomplete \ifmmode; all text was ignored after line 9.
  <inserted text>
                  \fi
  l.9 }

This problem is not specific to amsmath but ultimately resolves to a
deficiency in the definition of \ensuremath that was fixed in LaTeX as
of 1996/06/01 [. If you can't upgrade your version of LaTeX to remedy this
problem, you may need to resort to the following patch in your
documents:

  \DeclareRobustCommand\ensuremath[1]{\ifmmode#1\else{$#1$}\fi}

------------------------------------------------------------------------
Reported bugs not yet dealt with (not a comprehensive list):
------------------------------------------------------------------------

---amsmath: \sideset can result in overlapping of the subscript with a
neighboring symbol.

---amsmath: Lower limits on \iint are positioned too far away from the
int symbol

---amsmath: \ldots spacing differs from normal LaTeX values

---amsmath: Various problems in multi-line equation environments

   --Environment `aligned' inside certain other equation environments
     doesn't work well (error messages, poor tag placement).
     -- in `xalignat', error `Extra & on this line'.

   --[amslatex/1834] Empty first cell in `aligned' environment leads to
      a TeX error.

   --`align*' within `gather' is shifted to the right; see example in
     testmath.tex, p.37.

   --Equation numbers are sometimes misplaced or shifted to a separate
     line when there seems to be enough room to keep them on the same
     line.

   --Various problems when using [fleqn]:
     --\mathindent is not used internally, so changing it has no effect
     --with `alignat', when widest input line exceeds a threshold,
       spaces between columns expand too far
     --with fleqn + leqno options, the `align' environment nevertheless
       puts the numbers on the right.

---amsxtra: [amslatex/2278] \accentedsymbol produces error message
`Missing number, treated as zero.'

---amsmath: \numberwithin{equation}{chapter} with the `report' or `book'
documentclass adds too many levels to the equation numbers: (1.1.x)
instead of (1.x)

------------------------------------------------------------------------
Changes done to date:
------------------------------------------------------------------------

163. amsmath: simplify the method for switching between compatibility
mode and the `nomath' and`noamsfonts' options.

162. amsclass (amsart.cls, amsbook.cls, amsproc.cls)
[amslatex/2389] [amslatex/2423] [amslatex/2443]:
The test whose purpose is to avoid loading an obsolete amslatex 1.1
version of amsfonts.sty referred explicitly to a mixed-case fd file
name; change to remove that dependency. Symptom:

  ! Class amsart Error: Font description files Umsa.fd et al. not found;
    amsfonts.sty not loaded.

161. amsmath [amslatex/2389]: Removed dependency in cmex font setup on
mixed case fd file names.

160. amsdtx (amsldoc.cls, amsdtx.cls) [amslatex/2389]: Fixed .fd loading
code in \allowtthyphens to work with either monocase (latex 1996-12-01
and later) or mixed case (latex 1996-06-01 and earlier) file names.

------------------------------------------------------------------------
Posted to e-math, 1996/11/04
------------------------------------------------------------------------

159. amstex: [amslatex/2096] \Bbb causes an endless loop if used in
\section title without \protect.

[bnb,1996/11/03]: \Bbb, \frak, \bold were robust in version 1.1 of
amstex.sty, lost their robustness (unintentionally) in version 1.2.
Restored in amstex.sty.

158. amsmath: [amslatex/1609] Use of \tag inside `multline' environment
produces an error message:

  ! Package amsmath Error: Multiple \tag.

[mjd,1996/10/31] Fixed

157. amsmath: Italic correction may be needed for equation numbers (e.g.,
inside a subequations environment when they end with a letter such as
'f').

[mjd,1996/10/30]: Added \@@italiccorr in the definition of \tagform,
unlikely to hurt even when not needed.

156. amstex.sty: Obsolete usage \usepackage{amstex} often makes trouble.

[mjd,1996/10/30]: Automatically substitute amsmath.sty, with error
message, except in compatibility mode. The help text with the error
message explains a workaround for existing documents where amsmath fails
to give satisfactory results (most likely due to the use of obsolete
commands in the body of the document): keep the old version of
amstex.sty under the name amstex12beta.sty and call it with
\usepackage{amstex12beta}.

155. amsmath: [amslatex/1595] Disabled \over (\atop, \above) can cause
problems for users trying to process pre-existing material or for people
writing macros that require \over but that may or may not be used in
conjunction with the amsmath package.

[mjd,1996/10/30]: Change the error message to a first-use-only warning.

154. amsmath: [amslatex/1858] [amslatex/2127]
! Missing number, treated as zero.

When the amsmath packaged is loaded after a documentclass or another
package that changes the definitions of the uppercase Greek letter
commands (e.g., Elsevier's elsart), it fails clumsily in its own attempt
to do the same:

  (amsmath.sty
  (/local/tex/latex/inputs/amstext.sty (/local/tex/latex/inputs/amsgen.sty))
  (/local/tex/latex/inputs/amsbsy.sty) (/local/tex/latex/inputs/amsopn.sty)
  ! Missing number, treated as zero.
  <to be read again> 
                     A
  l.131 \@tempa\Omega

[mjd,1996/10/30]: Added missing double-quote character after the \ifnum
test, which worked most of the time *except* in the rare case when the
first nonzero digit of the mathcode was an alphabetic hex digit.

153. amsmath: [amslatex/1568] \intertext alignment within \itemize:
\intertext text fails to follow current list margins.

[mjd,1996/10/30]: Reiterate the parshape setting of the parent list
environment, if \linewidth is not equal to \columnwidth. Also: silently
supply missing \\ before \intertext if not provided by the user.

152. amstex.sty: The definition of the `subequations' environment is
inconsistent with the one in amsmath.

[mjd,1996/10/30] Make it consistent (it's unlikely to be used anyway,
though, by documents that call amstex.sty).

151. upref: [amslatex/1444] [amslatex/1494] [amslatex/1839]
wrong argument on line 87 of upref.dtx 

[bnb,1996/09/26]: Fixed

150. amsart: [amslatex/2059] The optional argument to \title is read
with a long \def, so a missing ] can cause a document to be eaten.

[bnb,1996/09/26]: Title redefined with \renewcommand* to make the
optional argument short; missing ] will result in Runaway argument?

149. amsart: [amslatex/1860] Unnumbered equation* within the abstract
environment in amsart documentclass is not centered properly.

[bnb,1996/09/26]: Abstract rewritten to use normal list environment.

148. amsart: [amslatex/1437] ! Undefined control sequence error for
\paragraphname

[bnb,1996/09/25]: Initialize \paragraphname, \subparagraphname

147. amsart: [amslatex/1759] Error message 'Parameters must be numbered
consecutively' with nomath option and recent versions of LaTeX (due to
interface change in the \DeclareOption function).

  Document Class: amsart 1995/02/23 v1.2b
  (/usr/local/lib/teTeX/texmf/tex/latex/amslatex/amsgen.sty)
  ! Parameters must be numbered consecutively.
  <to be read again> 
                     ##
  l.320 \ProcessOptions\relax

[bnb,1996/09/24]: Changed the nomath option declaration to avoid use of
the # character so that it will work equally well for authors having
older or new versions of LaTeX 2e.

146. amsopn: [amslatex/1469] ! Undefined control sequence \DN@ if
amsopn package used alone:

  ! Undefined control sequence.
  \nolimits@ ->\DN@ 
                    {\nolimits \ifx \@let@token \limits \expandafter ...

Definition for \DN@ is normally supplied by the amsgen package but if
amsopn is used all by itself it's not there.

[bnb,1996/09/23]: Added fallback definition for \DN@.

145. amsthm: Using \theorembodyfont to change fonts has no effect.

Actually, it was not intended to have any effect either. That command
was accidentally left inside the amsthm package when it was created
(partly derived from amsart.sty version 1.1 and the `theorem' package),
thus deceiving users into thinking that it remained a legitimate theorem
modification command.

[bnb,1996/09/20] Removed left-over \theorembodyfont from amsthm.sty

------------------------------------------------------------------------
Version 1.2b posted to e-math.ams.org
------------------------------------------------------------------------

1995/02/27 Monday

144. diff12.tex: Add advice regarding pf, pf* when converting from
an old AMS documentstyle/class to version 1.2.

1995/02/23 Thursday

143. amsxtra.dtx: Make the amsxtra package work with either amstex or
amsmath.

142. READ.ME: Add mention of AMS documentclass documentation moving to
instr-l.tex.

141. instr-l.tex: Put back file, it failed to get copied to
/pub/tex/amslatex/classes by some sort of failure to follow the link.
Also removed a couple of lines rendered unnecessary by change 136.

1995/02/20 Monday

140. amsclass.dtx: Make the abstract always print, even if placed after
\maketitle. Update documentation (diff12.tex, instr-l.tex).

139. amsmath.dtx: Fix a bug in flalign* (showed up in amsldoc.tex). Bug
fix sent in by D. M. Jones.

138. amsclass.dtx: Make the titlepage option work for amsart, amsproc.

137. diff12.tex: Add a note about needing to place the abstract
environment before \maketitle.

136. amsclass.dtx: Suppress copyright info, series logo, `Received by'
date when not using an AMS publication-specific document class.

135. amsopn.dtx: Fixed \operatorname which was erroneously behaving like
\operatorname*

134. testmath.tex: Cleaned up obsolete usage of \operatorname, \:, vert
bars

1995/02/01 Wednesday

133. amscd.dtx, amsdtx.dtx, amsgen.dtx, amsmath.dtx: Updated \CheckSum
statements.

132. amsthm.dtx: \theoremnotefont was being ignored because not called
in \thmnote. Added \the\theoremnotefont in strategic places.

1995/01/31 Tuesday

131. amslatex.ins, amsclass.ins: Moved unpacking statements for amsthm,
upref from the former to the latter.

130. diff12.tex: Minor wording changes.

129. technote.tex: Update some obsolete references to e.g. \gfrac; add
missing file header a la diff12.tex.

128. amsldoc.tex: Minor changes, fix a few typos, correct some error
explanations.

127. amsmath.dtx: Fixed up the handling of some complications with the
`cmex10' option---sensitive to relative loading order with the amsfonts
package.

126. amsclass.dtx: Added global init for \@secnumber; added missing
percent sign after line-ending right brace; updated psamsfonts option to
pass cmex10 option to amsmath.

125. amsgen.dtx: Changed \newcommand to \def for \@oparg and \@ifempty,
to avoid error message with certain package loading sequences (e.g.,
\usepackage{amstex,amsthm}).

1995/01/30 Monday

124. Removed extraneous files from the AMSFonts distrib in the
amslatex/inputs subdirectory.

123. amsldoc.tex: Removed extra \begin{theindex} line.

122. amscd.dtx: Added missing \begin{macrocode} statement.

------------------------------------------------------------------------
Version 1.2 released, 27-Jan-1995
------------------------------------------------------------------------
1995/01/27 Friday

121. A number of last-minute changes for version 1.2, not individually
listed.

1995/01/12 Thursday

120. diff12.tex: New name for dif11-12.tex.

119. amsmath.dtx: Changed references to `-' character in \...arrowfill@
to \relbar (suggested by F. Jensen, to better support use of alternate
math fonts). Also done in amstex.sty.

1995/01/11 Wednesday

118. amsmath.dtx: `Equation number in split environment was moved to a
separate line when there was clearly enough room for it to remain
unmoved': corrected by change 116 below. Also corrected in amstex.sty.

117. amsmath.dtx: `The [t] option of \begin{gathered} doesn't work':
corrected by change 116 below.

116. amsmath.dtx: Merged in code from David M. Jones for overhauled
equation structures.

1995/01/10 Tuesday

115. amsmath.dtx: Created substack environment to replace Sb, Sp.

114. amsmath.dtx: Removed \AmSTeX definition (why include it here? this
is not a package for writing about Spivak's AMS-TeX or even about macro
packages in general. If anything it might go into amsdtx.cls, but I'm
not sure it's sufficiently important to make a definition even there.)

113. amsmath.dtx: Took off mandatory arg of subequations environment
that specified numbering type (only rarely will anything other than
a,b,c be desired; then you would have to redefine \theequation by
hand just as you would with other element numbers).

112. amsmath.dtx: Created \gfrac for generalized fractions; disallowed
primitive \over, \atop, etc.

1994/11/04 Friday

111. amsmath.dtx: Single-letter operatornames improperly positioned below
the baseline; the zero kern that prevents this phenomenon was misplaced
during revisions.

110. amstext.dtx: \index inside \begin{align} ... \end{align} caused trouble;
fixed \endgroup placement in \@wrindex, \@wrglossary.

1994/11/01 Tuesday

109. amsdtx.dtx: Make \cn, \cs work in math mode as well as text mode (by
calling \mbox if necessary).

108. eufrak.dtx: Add warning if redundant loading of amsfonts + eufrak
is detected, and prevent error message from \newcommand{\mathfrak}.

107. amscls.dtx: Make \cite robust so that it doesn't cause errors in
figure captions. Fix erroneous warning about \@sect.

1994/10/31 Monday

106. amscls.dtx: Correction to prevent second \thanks footnote from being
omitted.

105. amsthm.dtx: Correction to make theorem numbers always upright, never
italic/slanted. (Previous definition of \nonslanted failed because
\itdefault, \sldefault are \long.)

104. psamsfnt.ins: Changed name from psamsfonts.ins to psamsfnt.ins to fit
within 8+3 limitations.

103. amsmath.dtx: Made `centertags' option default as documented. Added old
option names `intlim', `nosumlim', `nonamelm', `righttag' for
compatibility mode.

102. amsldoc.tex: More documentation cleanup.

101. amstex.dtx: renamed to amsmath.dtx; removed call to amsfonts package.

100. amsintsm.dtx: renamed to amsintx.dtx; now use longer names \integral,
\summation, \product, ... instead of changing \int, \sum, ...

------------------------------------------------------------------------
Here ends version 1.2beta. The changes above appeared in v1.2 or later.
------------------------------------------------------------------------

1994/10/28 Friday

* dif11-12.tex: Fixed a couple of reported typos.

* amstex.dtx: Fixed \AmS to make it bold if the current fontseries is b
or bx. Yesterday's change failed because the comparison
\ifx\f@series\bfdefault fails (\bfdefault is \long).

* amsintsm.dtx: Cleaned up documentation.

1994/10/27 Thursday

* amstex.dtx: Changed \AmS to use the current fontseries (weight/width)
instead of always using \mdseries. This may produce font substitution
warnings under some circumstances. But the needed cmbsy fonts are now
part of the official LaTeX distribution.

* amsgen.dtx: Corrected missing \global in the assignment of \ex@ in
\every@math@size (but did this in a very complicated way with a new
nonlinear scaling function!). This fixes wrong vertical spacing in
commutative diagrams and certain other places.

* amsgen.dtx: In compatibility mode, omit the warning for obsolete
commands.

* amstex.dtx: Corrected poor vertical spacing in \varinjlim,
\varprojlim due to changes (some time ago) in \...arrowfill@.

* *.dtx: Cleaned up technical documentation sections so that most of the
.dtx files are now printable (even if some of the commentary doesn't
make sense at the moment ...). Exceptions: amstex.dtx and amsintsm.dtx
still need more work.

1994/10/26 Wednesday

* testmath.tex: More cleanup. Removed references to \bold,
\fracwithdelims, \lcfrac, \rcfrac, \samepage.

* amscls.dtx: Fixed vertical spacing problem in subjclass, keywords,
thanks footnotes; added \datename heading to date footnote; fixed
wrong heading font for theoremstyle{remark}.

1994/10/25 Tuesday

* The following .dtx files can now be printed: amsgen.dtx, amsfonts.dtx,
euscript.dtx, eufrak.dtx, amscls.dtx, amsdtx.dtx.

* amsgen.sty: Fix bug---$ ... \mbox{\small $...$}...$ made the parent
formula small as well.

* amsfonts.sty: Made code in \every@math@size hook global, necessary
with the above change to amsgen.sty. Update documentation.

* amsfonts.ins: Updated to create euscript.sty, eucal.sty, eufrak.sty.

* euscript.dtx: Added, version 2.1d (formerly in the latex/mfnfss area).
Now produces package eucal.sty which defines \mathcal = Euler script.

* eufrak.dtx: Added, version 2.1d (formerly in the latex/mfnfss area)
Defines \mathfrak = Euler Fraktur.

* testbook.tex: Suppress overfull hbox message, remove unused definition
of \square, corrected author, date.

* testart.tex: Remove unused definition of \square, corrected author,
date.

* testmath.tex: Fixed date, removed some redundant topmatter material.

1994/10/19 Wednesday

* amscls.dtx: In compatibility mode, load xxx.sty instead of giving an
error message for unrecognized class option `xxx';

* amscls.dtx: Fixed non-working \thanks

* amscls.dtx: Fixed \thebibliography, \theindex, etc. so that running
heads get proper capitalization.

* amscls.dtx: Changed \, to \thinspace in definition of \bysame to be
consistent with .bst files. (\, fails outside of math mode if the
`nomath' option is used).

1994/10/18 Tuesday

* testmath.tex: Changed \operatornamewithlimits (obsolete) to
\operatorname*; changed some instances of \texttt to \env

1994/10/17 Monday

* amstex.dtx: Added \makeatother line lost in change of 1994/10/14;
fixed \frac[...]{}{}, \cfrac.

* amsfonts.ins: Added note that amsfonts.fdd is technical documentation,
not necessary for the average user.

* amsfonts.fdd: Temporary patches to allow printing the .fdd file.

1994/10/14 Friday

* amstex.dtx: Ensure catcode of @ ends up set to 13 at top level
if amstex is loaded from a document class.

* amstext.dtx: Guard definition of \mathhexbox against active ".

* amstex.dtx: Guard against active " in several spots.

1994/10/13 Thursday

* amsplain.bst, amsalpha.bst: Use \providecommand for \bysame.
Changed \, to \thinspace in \bysame to avoid error message if 
not used in conjunction with the amstex package.

* amstex.dtx: Changed equation* environment to make the omission
of the number work if there is an embedded {split} environment.

* amslatex.ins: Add forgotten entry to generate amssymb.sty