essentialblend / integers-comm-ring

Type theoretical proofs in Agda proving the Ring of Integers.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The Commutative Ring of Integers: Type Theoretical Proofs With Agda

Aim

The goal of this research project submitted as part of requirements for my MS, was to use Agda (a computerized proof assistant) to constructively build a set of proofs. These proofs are reasoned about intuitionistically, starting from base constructs all the way to various algebraic properties required for a certain abstract mathematical structure referred to as a Ring.

This project was supervised by Dr Thorsten Altenkirch, and I'm forever grateful for all his time, expertise and most importantly, empathy towards my journey with Type Theory.

The final solution involves an object of type "Ring" which satisfies all algebraic commutative ring axioms.

Sample Proof

image

Construction

Project Structure

  • constructs\: Basic types and type variables.

  • natural_numbers\: Definition, operations and properties over natural numbers.

  • integers_MAIN\: Definition, operations and properties over Integers. Main folder of interest.

  • predicate_logic\: Tools for predicates.

About

Type theoretical proofs in Agda proving the Ring of Integers.

License:MIT License


Languages

Language:Agda 100.0%