arg1
Signature: ShapeSpecT -> ElemExprT
Type parameters: 'T
|
tuple of 1 argument
|
arg2
Signature: (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT)
Type parameters: 'T
|
tuple of 2 arguments
|
arg3
Signature: (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT)
Type parameters: 'T
|
tuple of 3 arguments
|
arg4
Signature: (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT)
Type parameters: 'T
|
tuple of 4 arguments
|
arg5
Signature: (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT)
Type parameters: 'T
|
tuple of 5 arguments
|
arg6
Signature: (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT)
Type parameters: 'T
|
tuple of 6 arguments
|
arg7
Signature: (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT) * (ShapeSpecT -> ElemExprT)
Type parameters: 'T
|
tuple of 7 arguments
|
argElem pos idx
Signature: pos:int -> idx:ShapeSpecT -> ElemExprT
Type parameters: 'T
|
the element with index idx of the n-th argument
|
argElemWithType typ pos idx
Signature: typ:Type -> pos:int -> idx:ShapeSpecT -> ElemExprT
|
the element with index idx of the n-th argument of given type
|
canEvalAllSymSizes expr
Signature: expr:ElemExprT -> bool
|
true if all size symbols can be evaluated to numeric values
|
check expr
Signature: expr:ElemExprT -> ElemExprT
|
checks the elements expression
|
checkCompatibility (...)
Signature: expr:ElemExprT -> argShapes:ShapeSpecT list -> argTypes:TypeNameT list -> resShape:ShapeSpecT -> unit
|
checks if the arguments' shapes are compatible with the result shape and that the types match
|
constSpec cs
Signature: cs:ConstSpecT -> ElemExprT
|
a constant value given by a ConstSpec
|
extractArg expr
Signature: expr:ElemExprT -> ArgElementSpecT
|
extract ArgElementSpec from element expression
|
idx dim
Signature: dim:int -> SizeSpecT
|
index size of given dimension of the result
|
idx1
Signature: SizeSpecT
|
tuple of 1 index symbol
|
idx2
Signature: SizeSpecT * SizeSpecT
|
tuple of 2 index symbols
|
idx3
Signature: SizeSpecT * SizeSpecT * SizeSpecT
|
tuple of 3 index symbols
|
idx4
Signature: SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT
|
tuple of 4 index symbols
|
idx5
Signature: SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT
|
tuple of 5 index symbols
|
idx6
Signature: SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT
|
tuple of 6 index symbols
|
idx7
Signature: SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT * SizeSpecT
|
tuple of 7 index symbols
|
idxSymbol dim
Signature: dim:int -> SizeSymbolT
|
index symbol for given dimension of the result
|
ifThenElse left right thenExpr elseExpr
Signature: left:SizeSpecT -> right:SizeSpecT -> thenExpr:ElemExprT -> elseExpr:ElemExprT -> ElemExprT
|
If left=right, then thenExpr else elseExpr.
|
kroneckerRng sym first last expr
Signature: sym:SizeSpecT -> first:SizeSpecT -> last:SizeSpecT -> expr:ElemExprT -> ElemExprT
|
expr if first <= sym <= last, otherwise 0.
|
prettyString expr
Signature: expr:ElemExprT -> string
|
pretty string of an element expression
|
requiredNumberOfArgs expr
Signature: expr:ElemExprT -> int
|
returns the required number of arguments of the element expression
|
scalar f
Signature: f:'a -> ElemExprT
Type parameters: 'a
|
a constant value
|
signt a
Signature: a:ElemExprT -> ElemExprT
|
sign keeping type
|
sqrtt a
Signature: a:ElemExprT -> ElemExprT
|
square root
|
substSymSizes symSizes expr
Signature: symSizes:Map<SizeSymbolT,SizeSpecT> -> expr:ElemExprT -> ElemExprT
|
substitutes the specified size symbols with their replacements
|
sum idx first last expr
Signature: idx:SizeSpecT -> first:SizeSpecT -> last:SizeSpecT -> expr:ElemExprT -> ElemExprT
|
sum exprover given index (created by sumIdx) from first to last
|
sumIdx name
Signature: name:string -> SizeSpecT
|
summation index size of given name
|
sumSymbol name
Signature: name:string -> SizeSymbolT
|
summation symbol of given name
|
typeName expr
Signature: expr:ElemExprT -> TypeNameT
|
data type name of the element expression
|