>> << Ndx Usr Pri Phr Dic Rel Voc !: wd Help Dictionary

F. Trains
An isolated sequence, such as`(+ */)`,`` which the "normal" parsing rules (other than the three labelled trident and bident) do not resolve to a single part of speech is called a train, and may be further resolved as described below.
Meanings are assigned to certain trains of two or three elements and, by implication, to trains of any length by repeated resolution. For example, the trains`+-*%` and`+-*%^` are equivalent to`+(-*%)` and`+-(*%^)`.
A verb is produced by trains of three or two verbs, as defined by the following diagrams:

             HOOK                FORK             CAPPED FORK

          g       g           g        g            g     g
         / \     / \         / \      / \           |     |
        y   h   x   h       f   h    f   h          h     h
            |       |       |   |   / \ / \         |    / \
            y       y       y   y   x y x y         y   x   y

For example,`5(+*-)3` is`(5+3)*(5-3).` If`f` is a cap`` (`[:`)`` the capped branch simplifies the forks to`g h y` and`g x h y`.
The ranks of the hook and fork are infinite.
Trains may also produce adverbs and conjunctions, and trains of two and three elements are called bidents, and tridents, respectively; hooks and forks are special cases. Tree displays illustrate the choice of the names fork and trident:

       mean=: +/ % #
       conj=: ]. , [.
       tree=: 5!:4@<

       tree 'mean'
      +- / --- +
    --+- %
      +- #

      tree 'conj'
      +- ].
    --+- ,
      +- [.

The following tables define all possible tridents and bidents, using italics to denote the optional left arguments of (ambivalent) verbs:

`N0 V1 N2` | noun | `x V1 y`
`V0 V1 V2` | verb | `(x V0 y) V1 (x V2 y)`
`V0 V1 C2` | conj | `V0 V1 (x C2 y)`
`A0 V1 V2` | adv | `(x A0) V1 V2`
`C0 V1 V2` | conj | `(x C0 y) V1 V2`
`C0 V1 C2` | conj | `(x C0 y) V1 (x C2 y)`
`A0 A1 V2` | conj | `(x A0) (y A1) V2`
`A0 A1 A2` | adv | `((x A0) A1) A2`
`C0 A1 A2` | conj | `((x C0 y) A1) A2`
`N0 C1 N2` | verb | `x (N0 C1 N2) y`
`N0 C1 V2` | verb | `x (N0 C1 V2) y`
`N0 C1 A2` | adv | `N0 C1 (x A2)`
`N0 C1 C2` | conj | `N0 C1 (x C2 y)`
`V0 C1 N2` | verb | `x (V0 C1 N2) y`
`V0 C1 V2` | verb | `x (V0 C1 V2) y`
`V0 C1 A2` | adv | `V0 C1 (x A2)`
`V0 C1 C2` | conj | `V0 C1 (x C2 y)`
`A0 C1 N2` | adv | `(x A0) C1 N2`
`A0 C1 V2` | adv | `(x A0) C1 V2`
`A0 C1 A2` | conj | `(x A0) C1 (y A2)`
`A0 C1 C2` | conj | `(x A0) C1 (x C2 y)`
`C0 C1 N2` | conj | `(x C0 y) C1 N2`
`C0 C1 V2` | conj | `(x C0 y) C1 V2`
`C0 C1 A2` | conj | `(x C0 y) C1 (y A2)`
`C0 C1 C2` | conj | `(x C0 y) C1 (x C2 y)`
`N0 A1` | verb | `x (N0 A1) y`
`N0 C1` | adv | `N0 C1 x`
`V0 N1` | noun | `V0 y`
`V0 V1` | verb | `x (or y) V0 V1 y`
`V0 A1` | verb | `x (V0 A1) y`
`V0 C1` | adv | `V0 C1 x`
`A0 V1` | adv | `(x A0) V1`
`A0 A1` | adv | `(x A0) A1`
`A0 C1` | adv | `(x A0) C1 x`
`C0 N1` | adv | `x C0 N1`
`C0 V1` | adv | `x C0 V1`
`C0 A1` | conj | `(x C0 y) A1`

>> << Ndx Usr Pri Phr Dic Rel Voc !: wd Help Dictionary