About morgenfryd¶
Mission¶
The mission for Morgenfryd is to uncover the mathematical laws governing our world by automating the generation of explicit, verifiable, high-fidelity models — and to build powerful tools for modelling, simulating and solving dynamical systems.
The world today: Manually defined explicit represenations¶
Dynamical systems are modelled using explicitly defined equational systems generated manually by domain experts.
Pros The governing equations are well-known, verifiable and explainable. It is easy to extend systems to new circumstances and transfer learnings from one domain to another.
Cons Very time and cost consuming.
The world we are moving to: Implicitly learned representations¶
Taking advantage of large scale machine learning, models are now being trained to replicate observed data. The governing equations are in this case unknown to us, they are implicitly learned by large models - typically deep learning approaches, diffussion models, neural ODEs etc.
Pros Brute-force, automated and hugely scalable. Can be applied to a variety of types of systems without having to really understand the governing dynamics.
Cons Black box. No understanding of the governing dynamics and no ability to extrapolate beyond training dynamics to unseen data. Since the governing equations are not explicitly learned, little new knowledge of the fundamentals of the governing equations of the world are acquired and what is learned is not transferable between domains.
The future: Learned explicit representations¶
Using recent advances in reasoning capabilities of AI we can combine the two above approaches to instead automate the generation of explicit governing equations. This allows us to get the best of both worlds.
Pros Automation, scale, explainability, verifiabilty, transfer of knowledge between domains and the ability to truly understand the governing equations of our world.
Functionality¶
Simulating¶
Given a dynamical system expressed as a set of equations, we can use LCL networks to simulate them to within a given level precision. This is a mechanical process - turning a dynamical system into LCL is a symbolic task and the simulation itself is straightforward large scale numerical computation.
Modelling¶
Given a dataset we can generate LCL code that models it - ie an LCL network that when executed generates the dataset given to within a given precision. This allows us to "uncover" the governing equations that generates the dataset. As the process runs the set of governing equations are refined to a smaller and smaller and more precise set. We can further restrict the set of possible networks by adding further behavioral or equational deconstraints on the output systems.
Solving¶
Given an LCL network we can through proof reasoning and search, find equivalent LCL networks with given attributes. This allows us to solve open-form equational systems by finding equivalent LCL networks that represent closed form equational systems.
Practical use cases¶
Some of the most important fields that rely heavily on modelling of dynamicals systems and for which an improvement in modelling capabilities would have a large impact.
- Climate science and meteorology
- Engineering design and industry
- Biology, medicine and life sciences
- Financial modelling and economics
- Energy systems
Theoretical applications¶
The ability to link dynamical systems to proof theory, in a similar way to how Curry-Howard links computation to proof theory, would give us a way to link dynamical systems to the theory of computation.
In a way we would be linking the discrete world of computation to the continuous world of dynamical systems, allowing us to more formally view evolving dynamical systems as "nature's way of performing computation"!
This would then in turn allow us to transfer some of the rich theory developed within the world of computation to the world of dynamical systems. What does complexity theory map to in the world of dynamical systems? Can we quantify how difficult dynamical systems are to model and solve? Does physical system have a complexity to them similar to that of programs? Is this a type of entropy?
And, more practically, can we can make progress towards finding closed form solutions, or proving the impossibility of them, for some of the most important dynamical systems in our world, like Navier-Stokes.