Polynomial Functors in Agda: Theory and Practice

dc.contributor.authorJörgensson, Marcus
dc.contributor.authorMuricy Santos, André
dc.contributor.departmentChalmers tekniska högskola / Institutionen för data och informationstekniksv
dc.contributor.departmentChalmers University of Technology / Department of Computer Science and Engineeringen
dc.contributor.examinerAbel, Andreas
dc.contributor.supervisorCherubini, Felix
dc.date.accessioned2024-01-03T10:28:47Z
dc.date.available2024-01-03T10:28:47Z
dc.date.issued2023
dc.date.submitted2023
dc.description.abstractThe category of polynomial functors - Poly - has been studied for over two decades and is well known for its relevance to computer science [1] and deep mathematical structure [2]. In recent years, new interpretations of Poly have been found in dynamical systems theory [3]. This thesis formalizes Poly in Cubical Agda and showcases its use in dynamical systems, contributing to the Poly code ecosystem. The first part, theory, formalizes the category Poly itself and many of its categorical constructs, including the initial and terminal objects, product, coproduct, equalizer, composition and parallel product. Then Chart is formalized, together with its own categorical constructs. Finally, Poly and Chart morphisms are combined via commuting squares. The second part, practice, builds upon the theory by using these categories to implement dynamical systems. It covers how morphisms in Poly represent dynamical systems, how polynomials act as interfaces, how systems are wired together, how behavior is installed into wiring diagrams, and how to run systems arriving at concrete programs. Many dynamical system examples are given, such as a Fibonacci sequence generator, the Lorenz system, the Hodkgin-Huxley model, and an Echo-State Network that learns the Lorenz dynamics. Commuting squares are used as a way of showing that one dynamical system can be made to simulate another.
dc.identifier.coursecodeDATX05
dc.identifier.urihttp://hdl.handle.net/20.500.12380/307493
dc.language.isoeng
dc.setspec.uppsokTechnology
dc.subjectCategory theory
dc.subjectDependent types
dc.subjectAgda
dc.subjectCubical
dc.subjectPolynomial functors
dc.subjectDynamical systems
dc.subjectComplex systems
dc.titlePolynomial Functors in Agda: Theory and Practice
dc.type.degreeExamensarbete för masterexamensv
dc.type.degreeMaster's Thesisen
dc.type.uppsokH
local.programmeComplex adaptive systems (MPCAS), MSc
local.programmeComputer science – algorithms, languages and logic (MPALG), MSc

Ladda ner

Original bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
CSE 23-134 AS MJ.pdf
Storlek:
2.75 MB
Format:
Adobe Portable Document Format

License bundle

Visar 1 - 1 av 1
Hämtar...
Bild (thumbnail)
Namn:
license.txt
Storlek:
2.35 KB
Format:
Item-specific license agreed upon to submission
Beskrivning: