Syntax


Basics | Specifics
1. Basics

  

introduces:  syntax-tree . 

needs:       Lists/Nested . syntax-tree <= tree

    • syntax-tree = character | list [syntax-tree]  (disjoint)
Back to the beginning.
2. Specifics

introduces: [[ ]], [[ _ ]], [[ _ _ ]], ... , < >, < _ > , < _ _ >, ...

includes:   Instant/Distinction ( syntax-tree for s , _is _ ) .

needs:      Tuples/Basics . 

    • [[ ]]		:  syntax-tree .
      
    • [[ _ ]]	:: syntax-tree* -> syntax-tree (total) . 
      
    • [[ _ _ ]] :: syntax-tree*, syntax-tree* -> syntax-tree (total) . ...
    • < > : syntax-tree* .
    • < _ > :: syntax-tree* -> syntax-tree* (total) .
    • < _ _ > :: syntax-tree*, syntax-tree* -> syntax-tree* (total) . ...
    • _is_ :: syntax-tree, syntax-tree -> truth-value (total) .

(1) [[ ]] = empty-list . 
    	[[ t:syntax-tree* ]] = list of t . 
    	[[ t1:syntax-tree* t2:syntax-tree* ]] = list of (t1, t2) . 
  	...
(2) 	< > = ( ) . 
    	< t:syntax-tree* > = t . 
    	< t1:syntax-tree* t2:syntax-tree* = (t1, t2) . 
   	...
Back to the beginning.

This specification is schematic. It may be regarded as an abbreviation for an infinite specification. Only a finite part of it is needed in practice.


Index | Instant | Tuples | Truth-Values | Numbers | Characters | Lists | Strings | Syntax | Sets | Maps

[Created by Jin Jin Yi and Ana Carla Santos. Last modified at 21 Dec 1997 by Jin Jing Yi]