We unveil Elixir as a language and ecosystem that is exceptionally well-suited for automated reasoning. After a brief introduction to the technical concepts of “reasoning” and its “automation” as they are understood in academic literature, we share our experiences teaching the “Automation of Logical Reasoning” course using Elixir and Livebook over the past two summers. We also discuss plans to leverage the Nx ecosystem for research and development in hybrid symbolic-subsymbolic AI systems, and highlight the features of Elixir that we believe make it so effective for automated reasoning, illustrating them with examples: a pragmatic approach to functional programming and immutability; powerful pattern matching; first-class actor-based concurrency; an expressive set-theoretic type system; straightforward metaprogramming capabilities; and, last but not least, the extensive BEAM ecosystem, which eases the transition from theoretical proof-of-concepts to practical, real-world applications.
Key Takeaways:
- Elixir is exceptionally well-suited for automated reasoning
- Current efforts in implementing and integrating automated reasoning tools in Elixir
- Teaching a course with Elixir/Livebook is much fun
Target Audience:
- Elixir enthusiasts in general (who may or may not be familiarized with logic or automated reasoning).
- AI enthusiasts interested in hybrid AI methods