Skip to content

Latest commit

 

History

History
18 lines (12 loc) · 1.09 KB

README.md

File metadata and controls

18 lines (12 loc) · 1.09 KB

Aristotelian syllogisms in Scala 3

drawing

("Aristotle with lambda tattoo")



It turns out that Aristotle was a functional programmer. This repository shows that we can formalize Aristotle's syllogisms using Scala 3. In particular, it shows how signatures built upon traits, algebraic data types and dependent types, allow us to model these logical arguments, and how type-driven development mimics the logical reasoning behind their corresponding proofs.

drawing

Full list of valid syllogisms

Feel free to contribute!

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.