EQN(1)                                                     EQN(1)

              delim $$

     NAME
          eqn, neqn, checkeq  -  typeset mathematics

     SYNOPSIS
          eqn [ -dxy ] [ -pn ] [ -sn ] [ -fn ] [ -Tdest ] [ file ] ...

          neqn [ option ] ... [ file ] ...

          checkeq [ file ] ...

     DESCRIPTION
          Eqn is a troff(1) preprocessor for typesetting mathematics
          on a phototypesetter, neqn on terminals.  Usage is almost
          always

               eqn file ... | troff
               neqn file ... | nroff

          If no files are specified, these programs read from the
          standard input.  Eqn prepares output for the typesetter
          named in the -T option (Mergenthaler Linotron 202 default,
          see troff(1)).

          A line beginning with `.EQ' marks the start of an equation;
          the end of an equation is marked by a line beginning with
          `.EN'.  Neither of these lines is altered, so they may be
          defined in macro packages to get centering, numbering, etc.
          It is also possible to set two characters as `delimiters';
          subsequent text between delimiters is also treated as _eeee_qqqq_nnnn
          input.  Delimiters may be set to characters x and y with the
          command-line argument -dxy or (more commonly) with `delim
          xy' between .EQ and .EN.  The left and right delimiters may
          be identical.  Delimiters are turned off by `delim off'.
          All text that is neither between delimiters nor between .EQ
          and .EN is passed through untouched.

          Checkeq reports missing or unbalanced delimiters and .EQ/.EN
          pairs.

          Tokens within eqn are separated by spaces, tabs, newlines,
          braces, double quotes, tildes or circumflexes.  Braces {}
          are used for grouping; generally speaking, anywhere a single
          character like x could appear, a complicated construction
          enclosed in braces may be used instead.  Tilde ~ represents
          a full space in the output, circumflex ^ half as much, and
          tab represents an ordinary troff tab character.

          Subscripts and superscripts are produced with the keywords
          sub and sup. Thus x sub i makes $x sub i$, a sub i sup 2
          produces $a sub i sup 2$, and e sup {x sup 2 + y sup 2}

     EQN(1)                                                     EQN(1)

          gives $e sup {x sup 2 + y sup 2}$.

          Fractions are made with over: a over b yields $a over b$.

          sqrt makes square roots: 1 over sqrt {ax sup 2 +bx+c}
          results in $1 over sqrt {ax sup 2 +bx+c}$ .

          The keywords from and to introduce lower and upper limits on
          arbitrary things: $lim from {n-> inf} sum from 0 to n x sub
          i$ is made with lim from {n-> inf } sum from 0 to n x sub i.

          Left and right brackets, braces, etc., of the right height
          are made with left and right: left [ x sup 2 + y sup 2 over
          alpha right ] ~=~1 produces $left [ x sup 2 + y sup 2 over
          alpha right ] ~=~1$.  The right clause is optional.  Legal
          characters after left and right are braces, brackets, bars,
          c and f for ceiling and floor, and "" for nothing at all
          (useful for a right-side-only bracket).

          Vertical piles of things are made with pile, lpile, cpile,
          and rpile: pile {a above b above c} produces $pile {a above
          b above c}$.  There can be an arbitrary number of elements
          in a pile.  lpile left-justifies, pile and cpile center,
          with different vertical spacing, and rpile right justifies.

          Matrices are made with matrix: matrix { lcol { x sub i above
          y sub 2 } ccol { 1 above 2 } } produces $matrix { lcol { x
          sub i above y sub 2 } ccol { 1 above 2 } }$.  In addition,
          there is rcol for a right-justified column.

          Diacritical marks are made with prime, dot, dotdot, hat,
          tilde, bar, under, vec, dyad, and under: x sub 0 sup prime =
          f(t) bar + g(t) under is $x sub 0 sup prime = f(t) bar +
          g(t) under$, and x vec= y dyad is $x vec = y dyad$.

          Sizes and font can be changed with size n or size ±n, roman,
          italic, bold, and font n. Size and fonts can be changed
          globally in a document by gsize n and gfont n, or by the
          command-line arguments -sn and -fn.

          Normally subscripts and superscripts are reduced by 3 point
          sizes from the previous size; this may be changed by the
          command-line argument -pn.

          Successive display arguments can be lined up.  Place mark
          before the desired lineup point in the first equation; place
          lineup at the place that is to line up vertically in subse-
          quent equations.

          Shorthands may be defined or existing keywords redefined
          with define: define thing % replacement % defines a new
          token called thing which will be replaced by replacement

     EQN(1)                                                     EQN(1)

          whenever it appears thereafter.  The % may be any character
          that does not occur in replacement.

          Keywords like sum ( sum ) int ( int ) inf ( inf ) and short-
          hands like >= (>=) -> (->), and != ( != ) are recognized.
          Greek letters are spelled out in the desired case, as in
          alpha or GAMMA. Mathematical words like sin, cos, log are
          made Roman automatically.  Troff(1) four-character escapes
          like \(lh () can be used anywhere.  Strings enclosed in
          double quotes "..."  are passed through untouched; this per-
          mits keywords to be entered as text, and can be used to com-
          municate with troff when all else fails.

     SEE ALSO
          troff(1), tbl(1), ms(7), eqnchar(7), doctype(1)
          B. W. Kernighan and L. L. Cherry, _TTTT_yyyy_pppp_eeee_ssss_eeee_tttt_tttt_iiii_nnnn_gggg _MMMM_aaaa_tttt_hhhh_eeee_mmmm_aaaa_tttt_iiii_cccc_ssss-
          _UUUU_ssss_eeee_rrrr'_ssss _GGGG_uuuu_iiii_dddd_eeee
          J. F. Ossanna, _NNNN_RRRR_OOOO_FFFF_FFFF/_TTTT_RRRR_OOOO_FFFF_FFFF _UUUU_ssss_eeee_rrrr'_ssss _MMMM_aaaa_nnnn_uuuu_aaaa_llll

     BUGS
          To embolden digits, parens, etc., it is necessary to quote
          them, as in `bold "12.3"'.