formulas
Python · Open sourceAn Excel formula interpreter and workbook compiler in Python. Executes supported calculations without an Excel COM server.
Documentation for formulasR&D
We develop and experiment with computational models, algorithms and architectures for decision systems. Verifiability, reproducibility and interoperability guide the transition from prototype to application.
Computational modelling, simulation and optimization to explore problems, objectives and uncertainty.
Dependency graphs, multi-runtime orchestration and interfaces connecting heterogeneous models and systems.
Reference cases, equivalence tests and recorded assumptions for evaluating and repeating analyses.
Open-source foundation
formulas is a Python library, distinct from Formulas S.r.l. and the proprietary platform. Together with schedula it provides inspectable computational components. The libraries follow their respective licences; Enterprise components and services have specific terms.
An Excel formula interpreter and workbook compiler in Python. Executes supported calculations without an Excel COM server.
Documentation for formulasA Python library for describing functions and dependencies as a graph, and dispatching the computation.
Documentation for schedulaInspect the implementation, releases and contributions at the source. These libraries are distinct from the proprietary Formulas platform.
In this small schedula example, multiply needs the result of add. The graph makes that dependency visible; the code below reproduces the calculation.
a = 2
b = 3add(a, b)a + bc = 5c = 5
d = 4multiply(c, d)c × dresult = 20import schedula as sh
def add(a, b):
return a + b
def multiply(c, d):
return c * d
dsp = sh.Dispatcher(name="Dependency example")
dsp.add_function("add", add,
inputs=["a", "b"], outputs=["c"])
dsp.add_function("multiply", multiply,
inputs=["c", "d"], outputs=["result"])
solution = dsp({"a": 2, "b": 3, "d": 4})
assert solution["c"] == 5
assert solution["result"] == 20schedula documentation ↗Let’s talk
Let’s define the decision to support and the path from analysis to an operational system.
Start a conversation