Notation
Type |
Notation |
Examples |
Forms |
(…) |
|
Re-Entry Forms1 |
Re-Entry Forms are self-equivalent with nested arguments seperated by comma:
{a,…,z} {deepest nesting, …, shallowest nesting}
Options:2
{alt|a,…} → alternative interpretation3
{open|a,…} → open form (without outer cross)
{2r|a,b,…} → even re-entry number4
{2r+1|a,b,…} → odd re-entry number
|
{,} {,,,,,}
{a,b,c}
{alt|2r|open|L,E,R}
|
Constants |
0 → unmarked
1 → marked
2 → undetermined
3 → imaginary
|
(((1)))
(2)3
{open|1,2,0,0,3}
|
Variables |
a , b , …, z → single character labels
"var" → multiple character labels
"var_n+1" → subscript (will render as varn+1)
|
((a)b)((b)a)
{L,R} {2r+1|L,E,R}
(("reference_a")("reference_b"))
{f"x_1","…","x_2|v|+1"}
("uFORM")"iFORM" (u)i
("my focus")"all else"
(1)("6×2=13")
|
Unclear Forms5 |
/unclear/
/unclear_n+1/ (subscript)
|
((/green apple/)/red apple/)
/orchestra/ /smiley face/
(/smoke/)/fire/
{2r+1|/deeming/,/telling/,/understanding/}
|
Calculate
Click “calculate” to compute your form in a 4-valued calculus based on definitions/demonstrations in uFORM iFORM by Ralf Peyn. When there are only constants or unclear forms in your formula, the calculator will output one value. With variables, all possible interpretations will be computed.1
- Unclear forms are processed inside uFORMs (see page 48 of the book) and interpreted with an undetermined value.
Side note
Pressing “formDNA” to the right of the input field will output a string of numbers that I call (obviously) “formDNA”. It is a code format that stores all possible interpretation results of a FORM in a single quaternary number. It is essentially a compact representation of the value table that you can see by clicking on “calculate”. For more information about formDNA and its applications, please read my introductory notebook.
Analyze
I have designed two visualzation types that can be used to analyze value patterns and FORM structure:
vmap
vmaps are variable/value-maps and can be seen as an alternative representation of value tables that is especially useful for pattern recognition. Each variable of a FORM is represented as a diamond shaped group that consists of four smaller groups representing its interpretation states in four directions:
- ← :
0
(unmarked)
- → :
1
(marked)
- ↓ :
2
(undetermined)
- ↑ :
3
(imaginary)
Following each direction, this process is repeated recursively down to the smallest diamonds (the ones that are actually drawn), which represent the interpretation results. Each result is color-coded according to the color convention used in uFORM iFORM:
Below the diagram you can see the order in which variables are interpreted in the vmap. A different ordering can be selected using the drop-down menu above the diagram. A vmap of a FORM with more than one variable is called a vmap perspective, since it can only display one unique ordering path. It is often useful to examine multiple different perspectives side by side to spot different sub-patterns or symmetries. By clicking on the “+” next to the diagram, you can render all vmap perspectives at once.
Depth Tree
Depth trees help to analyze the structure of forms in detail and especially clarify what is going on in spaces of a certain depth if one works with more complex forms or for students to help to understand these concepts. Re-entry forms are indicated with a red circle that is not filled when the form is open. Their nested structure, that leads to the (tiny red) point of re-entry, is indicated by red dashed lines and circles.
Visualize
You can visualize your forms using one of two different representation types:
Circle Notation
A complete representation of forms using circles instead of the more common hooks.1 In my opinion, this is a more clear and intuitive representation of forms, although not necessarily the most spatially and notationally efficient. Boundaries are clearly separated (contrary to hook-notation), which makes it easier for learners to grasp the concept of forms and hopefully avoid violating the principle of “perfect continence”, making them unclear and thus inoperative.2 Also, this notation does not suggest any kind of reading order3.
Options
- Using the buttons below the visualization, you can switch to an alternative representation style I call “GestaltFORM”. It makes use of the figure-ground-relationship discovered by psychological gestalt theory to help you to visually distinguish between even and uneven depths. It can also reinforce the recognition of form patterns, such as
((a)(b))
(which can be interpreted as the conjunction of a
and b
in the context of propositional logic).
Hook Notation
This is the common representation of forms introduced by George Spencer-Brown in his Laws of Form and also used throughout in uFORM iFORM. You may prefer it over circle notation when working mathematically with forms, since it integrates much better with written text and is more spatially efficient. On the downside, it can be much more difficult to read when working with complex forms (as a demonstration, try ((((((a)b)a)(((a)b)(b)))a)b)
and compare both representations).
Options
- The “Compact Re-Entries” switch lets you activate a more compact style of visualization for self-equivalent nested re-entry forms as suggested by Ralf Peyn for a shorter notation syntax that is less clumsy with longer variable chains.1
Technical sidenotes
- Pressing “formJSON” to the right of the input field will display a JSON-representation of the form that is used internally to handle visualization and some of the calculation. Forms with the property
"unmarked": true
behave like groups and will not be displayed or computed.
- All visualization types (except vmaps) are developed with the help of the D3.js library and SVG, using my JSON representation as input data. If you are interested in creating a different representation style, take a look at my formform library – the engine behind this application.