Softanza
StartFrançais
Softanza
The library documents itself · Diagramming & graphs

stzMathSubstance

23 own methods · 10 forms written with extensions, listed under their method

the source: base/graph/stzMathDiagram.ring(opens in a new tab) · All classes · The area reference: Diagramming & graphs

Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean

Examples: 0 come from the library's tests; 4 were composed from each method's signature and run for this page, on a fresh object, for example o1 = new stzMathSubstance(StzDotDomain()). 19 methods have none yet. Examples run on 2026-10-03 20:23 inside the library at commit 0e72e2e2c.

Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
DomainQ
(no comment in the source: the name reads as a sentence) domain qno extension
Declare
objectsQCSXTZZZIBWUMany
DeclareAll
"Set A, B, C"QCSXTZZZIBWU
HasObject
(no comment in the source: the name reads as a sentence) has object
composed example
o1 = new stzMathSubstance(StzDotDomain())
? o1.HasObject("a")
#--> 0
composed from the signature, run for this page
no extension
TypeOf
(no comment in the source: the name reads as a sentence) type ofno extension
Objects
(no comment in the source: the name reads as a sentence) objectsno extension
ObjectNames
(no comment in the source: the name reads as a sentence) object namesno extension
ObjectsOfType
(no comment in the source: the name reads as a sentence) objects of typeno extension
Assert
relations ------------------------------------------------------------ Assert("Subset", [ "B", "A" ]) -- typechecked against the domain, because a relation over the wrong kind of object is a statement about nothing, and the earlier it is refused the nearer the refusal is to the line that made it.QCSXTZZZIBWU
Relations
(no comment in the source: the name reads as a sentence) relationsno extension
Holds
Does the substance state pcPredicate over exactly these objects? Order matters unless the domain declared the predicate symmetric.
composed example
o1 = new stzMathSubstance(StzDotDomain())
? o1.Holds("a", [ 2, 3 ])
#--> 0
composed from the signature, run for this page
no extension
Define
function applications ------------------------------------------------ Define("u", "addV", [ "v", "w" ]): u is declared as the function's output type and remembered as its result. Typechecked like Assert.QCSXTZZZIBWU
Definitions
(no comment in the source: the name reads as a sentence) definitionsno extension
SetData
data ------------------------------------------------------------------ A NUMBER ON AN OBJECT. Penrose's Substance carries no numbers, and for a set or a point that is right: the content is the relation, not the coordinate. A table is different -- a cell IS its row, its column and its value -- and a heatmap is nothing but numbers. SetData puts one on an object under a key; any Style expression reads it as "x.key", to drive a position or, through a colour rule, a fill.QCSXTZZZIBWU
SetDataFrom
(no comment in the source: the name reads as a sentence) set data fromQCSXTZZZIBWU
HasData
(no comment in the source: the name reads as a sentence) has data
composed example
o1 = new stzMathSubstance(StzDotDomain())
? o1.HasData("a", "a")
#--> 0
composed from the signature, run for this page
no extension
DataOf
(no comment in the source: the name reads as a sentence) data ofno extension
ToGraph
stzGraph folds node ids to lower case, and a substance's names are case-sensitive (DN7b). The true name rides as a node property, and two names that differ only by case are refused here, with the reason.QCSXTZZZIBWU
IsDefinedAs
Is pcName defined as pcFunction over exactly these objects, in order?
composed example
o1 = new stzMathSubstance(StzDotDomain())
? o1.IsDefinedAs("a", "a", [ 2, 3 ])
#--> 0
composed from the signature, run for this page
no extension
Label
labelsQCSXTZZZIBWU
AutoLabelAll
(no comment in the source: the name reads as a sentence) auto label allno extension
LabelOf
The label an object carries: the one given, else its own name when AutoLabel is on, else "".no extension