-
Notifications
You must be signed in to change notification settings - Fork 2
DanielKrawisz/Truth
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
The Curry Howard isomorphism says that given a programming language with a expressive type system, a correspondence can be defined between propositions with types on the one hand, and proofs and programs on the other. In other words, we can express any mathematical claim as a type whose truth is proven by its instantiation. This means that a compiler can be used as a proof-checker. If the proof represented by the instantiation was invalid, then compilation should fail. Organization * There is some old experimental stuff I did in Scala a long time ago before I was fully prepared to build this thing for real. * include/logic/intuitionistic.hpp : intuitionistic logic is a version of logic where propositions are about the existence of a proof rather than about truth. * include/math/number/natural/peano.hpp : the peano axioms of the natural numbers. Further plans: * finiteness * prime numbers * algebraic structures such as groups, rings, and fields. * cyclic, symmetric, and alternating groups * integers and rationals * cauchy sequences * real numbers and calculus. * linear algebra * complex numbers * affine spaces * exterior algebra * differentials * spinors * combine linear algebra and groups to get representation theory * combine linear algebra with algebra to get Galois theory * combine linear algebra with calculus to get differential geometry * finally can get to real math when comlplex analysis, differential geometry, and number theory all work together.
About
Mathematical proofs in c++ by way of the Curry Howard isomorphism.
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published