Glossary¶
The glossary explains terminology that may not be familiar to new users of Autory.
Variable¶
A variable is simply a name associated with a formula. See https://en.wikipedia.org/wiki/Variable_(computer_science) .
Variable set¶
A group of variables that are calculated together. Variables in the same set may depend on each other.
Variable library¶
The list of all variables from all variable sets.
Variable set inheritance¶
A variable set may inherit variables from another variable set.
If variable set A inherits from variable set B, then all variables in B that are not defined in A,
are made available in A.
Parent variable set¶
The variable set from which variables are inherited.
Child variable set¶
The variable set that inherits variables from the parent variable set.
Dimensionality¶
The number of dimensions of a variable. A scalar has a dimensionality of 0 and a time vector has a dimensionality of 1.
Time vector¶
A variable that directly or indirectly depends on t.
Such a variable may have a different value at each time step of a projection node.
Formerly called a "Proj Variable" or "Projection Variable".
Scalar¶
A variable that does not depend on t.
Such a variable may only have a single value in a given projection node.
Formerly called a "Constant".
Hierarchy¶
A user-defined tree structure that may represent the structure of the business for which calculations are being done.
Hierarchy node¶
A node in the hierarchy tree.
Valuation type¶
A user-defined name given to a relationship between a hierarchy node and a variable set. This can be used to perform different calculations on the same hierarchy node. For example, different per-policy runs that are required to perform an analysis of surplus.
Projection node¶
The combination of a hierarchy node, valuation type, and valuation date. This is where the actual calculation happens.
Entry point¶
The combination of a hierarchy node and a valuation type, which defines which variable set should be used for the calculation of a projection node.
Dependent projection node¶
A projection node that depends on the results of another projection node.
Precedent projection node¶
A projection node whose results are used by another projection node.
Projection node tree¶
The tree of precedent and dependent projection nodes.
Sometimes referred to as the dependency tree or calculation tree.
Calculation tree¶
The projection node tree.
Dependency tree¶
The projection node tree.
Valuation date¶
The intended starting date for the calculations in a projection node.
This is often the value of the Date variable at t=1. However, if the projection node has
precedents with an earlier valuation date, the value of Date at t=1 will be the
earliest of all the valuation dates in the precedent projection nodes.
Autory model¶
A file that contains everything needed to perform calculations, including:
- The hierarchy of the calculations to be performed.
- A variable library that contains all the variables and their formulas.
- Configuration tables that point to input files.
An Autory model may be specified as a JSON or YAML file, or as a workbook.
Model workbook¶
A workbook that defines and configures a model.
Autory inputs workbook¶
A former name for the model workbook.
Calculation engines¶
The same Autory model can be executed by various calculation engines, as detailed below.
Python-Julia¶
The Python-Julia engine is written in Python and Julia. The model is compiled to Julia code, which is much faster than using Excel as the calculation engine. It can still optionally output Excel workbooks for a transparent calculation audit trail.
This engine is not yet available for general use.
Python-Excel¶
The Python-Excel engine is written completely in Python. It uses Excel as a calculation engine.
VBA engine¶
The VBA engine was the original version of Autory. It was written in VBA. It is deprecated since Autory 3, and will be removed in Autory 4.
IEEE 754 standard¶
This is the standard for storing floating-point numbers in computers. Almost all modern CPUs use this standard. It is important to know that while computers can store integers exactly using this standard, they cannot store all floating-point numbers exactly. This causes tiny numeric errors in calculations.
Further reading:
- Wikipedia: https://en.wikipedia.org/wiki/IEEE_754
- Python's documentation: https://docs.python.org/3/tutorial/floatingpoint.html
- A useful calculator that shows the error: https://www.h-schmidt.net/FloatConverter/IEEE754.html
- The official standard: https://ieeexplore.ieee.org/document/30711
Working directory¶
The directory in which a command is executed. Relative paths are resolved relative to this directory, e.g., when you
are working in C:\Users\Alice, the relative path document.xlsx refers to C:\Users\Alice\document.xlsx.
Further reading:
- Wikipedia: https://en.wikipedia.org/wiki/Working_directory