Deep.Net


ElemExpr

Namespace: SymTensor

element expression

Nested types and modules

TypeDescription
ArgElementSpecT

element of an argument

ArgT

argument

BinaryOpT
ElemExprT

an element expression

LeafOpT
UnaryOpT

Functions and values

Function or valueDescription
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

Fork me on GitHub