Trailing-Edge
-
PDP-10 Archives
-
decuslib20-05
-
decus/20-0149/mulsyn.rnh
There are 2 other files named mulsyn.rnh in the archive. Click here to see a list.
.LM0;.RM75;.LC;.AP;.FLAG CAPITAL;.NO PAGING;.NO NUMBER;#
.BR;^MULTIPLE ^LINEAR ^REGRESSION ^ANALYSIS
.SK;^^DEFINITION OF THE SYNTAX OF A USER PROGRAM\\
^THE SYNTAX OF A USER PROGRAM IS DEFINED IN AN EXTENDED VERSION OF A NOTATION KNOWN AS THE
^BACKUS#^NAUR#^FORM (<BNF).
^THE EXTENSIONS COMPRISE AN EXPLICIT REPETITION AND OPTIONALITY
CONSTRUCT TOGETHER WITH THE POSSIBILITY OF FACTORIZATION.
^THE <BNF MAY BE REGARDED AS A METALANGUAGE FOR THE DESCRIPTION OF A
USER PROGRAM.
^IN ADDITION TO THE SYMBOLS THAT ARE ADMISSIBLE IN A USER PROGRAM,
THE METALANGUAGE REQUIRES A NUMBER OF EXTRA SYMBOLS, CALLED
METASYMBOLS. ^THE TEN METASYMBOLS USED IN EXTENDED <BNF ARE:##::=, |, _<, _>,
{, }, [, ], ( AND ). ^THE#,#AND#.#ARE PART OF THE METALANGUAGE ^ENGLISH IN WHICH WE
ARE DESCRIBING <BNF. ^WE WRITE:
.SK;.I10;_<EXPRESSION_>::= ['+'#|#'-'] _<TERM_> { ('+'#|#'-') _<TERM_> }
^THE METASYMBOLS _< AND _> ARE USED AS DELIMITERS TO ENCLOSE THE NAME OF
A CLASS. ^THE METASYMBOL#::=#MAY BE READ AS 'IS DEFINED AS' OR AS 'CONSISTS OF'.
^THE METASYMBOL#|#IS READ AS 'OR'.
^REPETITION IS DENOTED BY CURLY BRACKETS, I.E.#{#A#} STANDS FOR E#|#A#|#AA#|#...
^OPTIONALITY IS EXPRESSED BY SQUARE BRACKETS, I.E. [#A#] STANDS FOR E#|#A.
^PARENTHESES MERELY SERVE FOR GROUPING (FACTORIZATION) I.E. (A#|#B)#C STANDS FOR AB#|#AC.
^TERMINAL SYMBOLS APPEAR ENCLOSED IN SINGLE APOSTROPHES.
^THE ABOVE PHRASE DEFINES AN EXPRESSION AS
A TERM, OPTIONALLY PRECEEDED BY A '+' OR A '-' AND FOLLOWED BY AN ARBITRARY
REPETITION OF TERMS, EACH PRECEEDED BY A '+' OR A '-'.
.SK;^THE SYNTAX OF A USER PROGRAM CAN THUS BE DEFINED AS FOLLOWS:
.NO FILL;.NO JUSTIFY;.SK
.BR;_<LETTER_>::= ^^'A'|'B'|'C'|'D'|'E'|'F'|'G'|'H'|'I'|'J'|'K'|'L'|'M'|
.BR;.I12;'N'|'O'|'P'|'Q'|'R'|'S'|'T'|'U'|'V'|'W'|'X'|'Y'|'Z'|\\
.BR;.I12;'A'|'B'|'C'|'D'|'E'|'F'|'G'|'H'|'I'|'J'|'K'|'L'|'M'|
.BR;.I12;'N'|'O'|'P'|'Q'|'R'|'S'|'T'|'U'|'V'|'W'|'X'|'Y'|'Z'
.SK;_<DIGIT_>::= '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9'
.SK;_<MODEL KEYWORD_>::= '"^MODEL"' | '"<MO"'
.BR;_<INPUT KEYWORD_>::= '"^INPUT"' | '"<IN"'
.BR;_<OPTION KEYWORD_>::= '"^OPTIONS"' | '"<OP"'
.BR;_<DATA KEYWORD_>::= '"^DATA"' | '"<DA"'
.BR;_<RUN KEYWORD_>::= '"^RUN"' | '"<RU"'
.BR;_<EXIT KEYWORD_>::= '"^EXIT"' | '"<EX"'
.SK;_<FUNCTION NAME_>::= '^ABS' | '^SIGN' | '^SQRT' | '^SIN' | '^COS' | '^TAN' |
.BR;.I19;'^LN' | '^LOG' | '^EXP' | '^ENTIER' | '^ROUND' | '^MOD' |
.BR;.I19;'^MIN' | '^MAX' | '^ARCSIN' | '^ARCCOS' | '^ARCTAN' |
.BR;.I19;'^SINH' | '^COSH' | '^TANH' | '^INDICATOR'
.SK;_<OPTION NAME_>::= '^TRANSFORMED DATA MATRIX' | '^CORRELATION MATRIX' |
.BR;.I17;'^RESIDUAL ANALYSIS' | '^NO REGRESSION ANALYSIS' |
.BR;.I17;'^PROCESS SUBMODELS' | '^PRINT INPUT DATA' |
.BR;.I17;'^NO INPUT DATA REWIND' | '^SAVE ORIGINAL MODEL' |
.BR;.I17;'^TEST REDUCED MODEL' | '^MISSING VALUES'
.SK;_<OPTION NUMBER_>::= '1' | '2' | '3' | '4' | '5' |
.BR;.I19;'6' | '7' | '8' | '9' | '10'
.SK;_<NUMBER_>::= ['+' | '-'] _<UNSIGNED NUMBER_>
.BR;_<UNSIGNED NUMBER_>::= _<DECIMAL NUMBER_> | _<EXPONENT PART_> |
.BR;.I21;_<DECIMAL NUMBER_> _<EXPONENT PART_>
.BR;_<DECIMAL NUMBER_>::= _<UNSIGNED INTEGER_> | _<FRACTIONAL PART_> |
.BR;.I20;_<UNSIGNED INTEGER_> _<FRACTIONAL PART_>
.BR;_<EXPONENT PART_>::= '_#' _<INTEGER_>
.BR;_<FRACTIONAL PART_>::= '.' [ _<UNSIGNED INTEGER_> ]
.BR;_<INTEGER_>::= ['+' | '-'] _<UNSIGNED INTEGER_>
.BR;_<UNSIGNED INTEGER_>::= _<DIGIT_> { _<DIGIT_> }
.SK;_<IDENTIFIER_>::= _<LETTER_> { _<LETTER_> | _<DIGIT_> }
.SK;_<DATA SPECIFICATION_>::= _<DATA KEYWORD_> [ _<INPUT DATA_> ]
.BR;_<INPUT DATA_>::= _<NUMBER_> { _<NUMBER_> }
.SK;_<OPTION SPECIFICATION_>::= _<OPTION KEYWORD_> [ _<OPTION STATEMENT_> ] ';'
.BR;_<OPTION STATEMENT_>::= _<OPTION_> { ',' _<OPTION_> }
.BR;_<OPTION_>::= _<SIMPLE OPTION_> [ '(' _<SPECIFIER LIST_> ')' ]
.BR;_<SIMPLE OPTION_>::= _<OPTION NAME_> | _<OPTION NUMBER_>
.BR;_<SPECIFIER LIST_>::= _<SPECIFIER_> { ',' _<SPECIFIER_> }
.BR;_<SPECIFIER_>::= _<NUMBER_>
.SK;_<INPUT SPECIFICATION_>::= _<INPUT KEYWORD_> _<INPUT STATEMENT_> ';'
.BR;_<INPUT STATEMENT_>::= _<INPUT PART_> { ',' _<INPUT PART_> }
.BR;_<INPUT PART_>::= _<CONTROL_> | _<DESCRIPTION_> | _<CONTROL_> '*' _<DESCRIPTION_>
.BR;_<CONTROL_>::= _<NUMBER_> | _<IDENTIFIER_> | '_<' _<EXPRESSION_> '_>'
.BR;_<DESCRIPTION_>::= '(' _<INPUT STATEMENT_> ')' | '[' _<VARIABLE LIST_> ']'
.BR;_<VARIABLE LIST_>::= _<VARIABLE_> { ',' _<VARIABLE_> }
.BR;_<VARIABLE_>::= _<IDENTIFIER_>
.SK;_<MODEL SPECIFICATION_>::= _<MODEL KEYWORD_> _<MODEL STATEMENT_> ';'
.BR;_<MODEL STATEMENT_>::= _<LEFT HAND PART_> '=' _<RIGHT HAND PART_>
.BR;_<LEFT HAND PART_>::= _<EXPRESSION_> [ '_&' _<WEIGHT PART_> ]
.BR;_<WEIGHT PART_>::= _<EXPRESSION_>
.BR;_<RIGHT HAND PART_>::= ['+'] _<TERM_> { '+' _<TERM_> }
.BR;_<EXPRESSION_>::= ['+' | '-'] _<TERM_> { ('+' | '-') _<TERM_> }
.BR;_<TERM_>::= _<FACTOR_> { ('*' | '/' | ':') _<FACTOR_> }
.BR;_<FACTOR_>::= _<PRIMARY_> { '_^' _<PRIMARY_> }
.BR;_<PRIMARY_>::= _<UNSIGNED NUMBER_> | _<IDENTIFIER_> |
.BR;.I13;_<FUNCTION DESIGNATOR_> | '(' _<EXPRESSION_> ')'
.BR;_<FUNCTION DESIGNATOR_>::= _<FUNCTION NAME_> [ '(' _<PARAMETER LIST_> ')' ]
.BR;_<PARAMETER LIST_>::= _<PARAMETER_> { ',' _<PARAMETER_> }
.BR;_<PARAMETER_>::= _<EXPRESSION_>
.SK;_<USER PROGRAM_>::= { _<JOB_> } _<EXIT KEYWORD_>
.BR;_<JOB_>::= { _<SPECIFICATION_> } _<RUN KEYWORD_>
.BR;_<SPECIFICATION_>::= _<MODEL SPECIFICATION_> | _<INPUT SPECIFICATION_> |
.BR;.I19;_<OPTION SPECIFICATION_> | _<DATA SPECIFICATION_>
.BR;#