Select this to skip to main content [CSUSB] >> [CNS] >> [Comp Sci ] >> [R J Botting] >> [MATHS] >> intro_documentation
 [Index] || [Contents] || [Source] || [Definitions] || [Search] || [Notation] || [Copyright] || [Comment] Fri Jan 16 12:31:55 PST 2004

Contents


    Introduction to MATHS

      Why

      This set of notes gives you a way to prepare formal or mathematical statements in ASCII. MATHS is very simple. It relies on smart interpreters to render it for presentation and analysis - there is a prototype tool for producing HTML for example. There experiemntal searching tools for it.

      If you want an easy to learn technique and do not need complex mathematical formula, but you do want to structure your document and incclude some formulae, then MATHS may help you.

      Sample

       		. Subsection heading
       		paragraph...
      
      
       		paragraph...
       		. Subsection heading
       		paragraph...
      
      
       		paragraph...
      Formal Parts
       		 defined_term::=expression
       			formula
       		(Evidence)|- (label): Conclusion
      Links
       		.See Universal_Resource_Locator
       			... $term ...
      Structures
       		.Set
       			item
       			item
       		.Close.Set

       		.Box
       			item
       			item
       		.Close.Box

       		.Open Section
       		paragraph...
      
      
       		paragraph...
      
      
       		.Close Section
      Logical Net of pieces and properties
       		.Net
       			item
       			item
       		.Close.Net
      Experiment with Some Assumptions
       		.Let
       			Assumptions
       			Derived formulae
       		.Close.Let
       		()|- Conclusion

      Introduction

      As a rule MATHS documents have definitions, declarations, assumptions, and theorems.
       	::=	Indicates a definition (like in BNF and EBNF)
       	::	Indicates a declaration
       	|-	Indicates a theorem, axiom or other assertion.
      The definitions, declarations, and formulae (quoted, proved, or unproven) are surrounded by comments. This should be informal and help the reader understand what is going on.

      A document is often split up into sections. This is done by directives. A directive starts with a period(.) as the first character in a line. Sections can be further split up into subsections. Ultimately a piece of documentation is a series of paragraphs(separated by blank lines), Definitions and declarations (see above), and formulae (Starting with 'For' or indented one or more tapbs or spaces. Some sections can indicate a prefered format: Set, Box, etc.

      Any collection of definitions, declarations, etc can be bracketed together and given a name using this syntax:

      	NAME::=Net{
      		Any documentation
      	}=::NAME.
      There is an alternative syntax:
      	NAME::=following.
       	.Net
      		Any documentation
      	.Close.Net
      These are just definitions, linking a NAME to a meaning. The meaning in this case being the contents. The NAME can the be used both formally and informally elsewhere to refer to the contents. The word "Net" was chosen because it is a short English word indicating a collection of interconnected objects. The word "Web" is already in use in computing for interconnected texts. A net is for interconnected ideas. Alternative forms include unordered Sets, Boxes, arguments (Lets), and Tables.

      Nets are a way of defining record structures, sets and classes of objects: [ intro_records.html ]

      The raw form of MATHS uses simple notations to show structure and links:

       	.Open Header
       	section
       	.Close Header
      Sections can be nested. A section can be made of simple headers and paragraphs.
       	. Header2
       	paragraph
      
      
       	paragraph
       	...

      Cross references are shown like this

       	.See NAME
      		where NAME is defined to be a "Net{.....}"
      			or any labeled formula
       	.See Header
      		where Header is any section header in the file
       	.See Any Universal Resource locator
      		proticol://host/path/file#anchor

      The raw (foo.mth) from is translated to the WWW form (foo.html) automatically by the UNIX script [ mth2html ] that in turn needs a compiled ANSI C program [ ascii2html.c ] to handle the character conversions.

      This Document in MATHS & HTML

      The raw form of this document is in [ intro_documentation.mth ] and the WWW form can be seen by viewing the source of this document in your browser options

    . . . . . . . . . ( end of section Introduction to MATHS) <<Contents | Index>>


Formulae and Definitions in Alphabetical Order