kl.spad line 226 [edit on github]
A kernel over a set S
is an operator applied to a given list of arguments from S
.
argument(op(a1, ..., an))
returns [a1, ..., an]
.
height(k)
returns the nesting level of k
.
is?(op(a1, ..., an), f)
tests if op = f
.
is?(op(a1, ..., an), s)
tests if the name of op is s
.
kernel(op, [a1, ..., an], m)
returns the kernel op(a1, ..., an)
of nesting level m
. Error: if op
is k
-ary for some k
not equal to n
.
kernel(x)
returns x
viewed as a kernel.
name(op(a1, ..., an))
returns the name of op.
operator(op(a1, ..., an))
returns the operator op.
symbolIfCan(k)
returns k
viewed as a symbol if k
is a symbol, and "failed" otherwise.
ConvertibleTo(Pattern(Integer))
Patternable(S)