]> thyrsus.com Git - mad.git/commitdiff
added more pages.
authorEric S. Raymond <esr@thyrsus,com>
Mon, 5 Apr 2004 02:34:16 +0000 (02:34 +0000)
committerEric S. Raymond <esr@thyrsus,com>
Mon, 5 Apr 2004 02:34:16 +0000 (02:34 +0000)
doc/mad-manual.xml

index 75d3e0cfb102ff134a71a6f75a69c2bcfd1186df..b1c0c4d6fa4ebd26e45c8cd02cc328073040c9e1 100644 (file)
@@ -40,6 +40,7 @@
 <!ENTITY scriptN "<emphasis>N</emphasis>">
 <!ENTITY scriptS "<emphasis>S</emphasis>">
 <!ENTITY scriptV "<emphasis>V</emphasis>">
+<!ENTITY scriptl "<emphasis>l</emphasis>">
 ]>
 <book>
 <preface><title>Notes from the 21st century</title>
@@ -4273,10 +4274,27 @@ this function, a simple one-line formula for this function is:</para>
 <para>where AGROSY is assumed to already contain GROSSW, i.e., to have
 been updated already.  We shall also apply this function in the case
 of the withholding tax to guarantee that we do not make a negative
-deduction.</para>
-
-<!-- FIXME: TEXT FOR PAGES III.30-32 GOES HERE -->
-
+deduction. Thus </para>
+
+<para role='centered'>W = .18*EXCESS. (GROSSW, 13*EXEMPT)</para>
+ 
+<para>Note 3: To check the order of input cards (normally in order of
+increasing employee number with a large employee number greater than
+the last employee number on the master tape) the program uses the
+subroutine SETEOF.(LABEL), where LABEL is the statement label of a
+statement to be executed if an end of file condition is detected
+during reading.</para>
+ 
+<para>Since the last input card has a large employee number the first
+end of file condition is normally detected at the end of processing,
+but an illegal input card may also exist with a high employee number.
+After the first end of file is detected the end of file return is
+changed and the input tape checked for end of file.  If no end of file
+exists a 
+<!-- beginpage III.32 -->
+comment is printed to change tapes and processing begins
+again.</para>
+ 
 <!-- beginpage III.33 -->
 <para role='note'><emphasis>Flow diagram:</emphasis></para>
 
@@ -4299,8 +4317,45 @@ deduction.</para>
 <!-- beginpage III.37 -->
 <sect2><title>Example 3<emphasis role='note'>: Mortgage Payment Processing</emphasis></title>
 
-<!-- FIXME: TEXT FOR PAGE III.37 GOES HERE -->
-
+<!-- "principle" usage error is in original -->
+<para>Problem: Mortgage Payment.  The type of mortgage we consider is
+the fixed principle type for which each installment consists of an
+interest payment, a fixed amount to be deducted from the outstanding
+principal, and an additional amount to be placed in escrow--to be used
+to make insurance and tax payments.</para>
+ 
+<!-- The original says "interest rage" and "nortage number" --> 
+<para>Assume that a master card file is available containing the
+following information for each mortgage: (1) the mortgage number; (2)
+amount of outstanding principal; (3) annual payment on principal; (4)
+interest rate; (5) annual escrow payment; and (6) current escrow
+balance.  There is also a file of cards available containing the
+current payment record consisting of mortgage number and amount of
+payment received.  The master file and current payment file are
+assumed to be in order of increasing mortgage number.</para>
+ 
+<!-- Original says "a and a interest payment" -->
+<para>The program is to read a card from the current payment record
+and check to see if it is acceptable.  A payment is deemed acceptable
+if it consists of a single normal payment (i.e., a payment consisting
+of a single principal payment, a single escrow payment,  and
+an interest payment for a single period) or if it consists of exactly
+two normal payments and any number (i=0, 1, 2, ...) of principal
+payments.</para>
+ 
+<para>Note 1: Since the Michigan Algorithm Decoder uses the dollar
+sign as the delimiter for characters it is not possible to print out
+the dollar sign in a hollerith field.  Using the - $=$ sets up the
+proper bit configuration for the dollar sign in storage since single
+characters appear in the left most position of the word.  This
+character constant can be named and put on the list of items to be
+printed out.</para>
+ 
+<para>Note 2: The current payments are processed until the file is
+exhausted.  The detection of the end of file on reading tranfers
+control to the section of the program which punches the new master
+file.</para>
+ 
 <!-- beginpage III.38 -->
 <para><emphasis>Flow diagram:</emphasis></para>
 
@@ -4329,6 +4384,24 @@ deduction.</para>
 <!-- beginpage III.42 -->
 <sect2><title>Example 4<emphasis role='note'>: Actuarial computation</emphasis></title>
 
+<para><emphasis>Problem</emphasis>: Computation of actuarial commutation
+columns based on an arbitrary set of mortality rates and an interest
+rate, as an external function to be used by another program.</para>
+
+<!-- first script-l in this graph was a plain lowercase l in the original --> 
+<para><emphasis>Analysis</emphasis>: Commutation columns, which are
+very important tools in actuarial problems are generated very easily
+by means of the formulas given below.  The quantities
+M<subscript>x</subscript>, N<subscript>x</subscript>, and
+D<subscript>x</subscript> in these formulas occur most often in
+combination, as in the computation of P<subscript>x</subscript>.
+Assuming a population of some initial size (at x =
+b<subscript>0</subscript>) (here 1,000,000), &scriptl;<subscript>x</subscript>
+is the number living a t age x (so that &scriptl;<subscript>bo</subscript> =
+1,000,000), q<subscript>x</subscript> is the mortality
+<emphasis>rate</emphasis>, and d<subscript>x</subscript> is the number
+of deaths at age x.</para>
+
 <!-- FIXME: TEXT FOR PAGES III.42-43 GOES HERE -->
 
 <!-- beginpage III.44 -->