Ariteetti- ja tietotyyppigeneerinen ohjelmointi Coq-todistusassistentilla
Authors
Date
2021Copyright
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Tutkielman tavoitteena on luoda toimiva kirjasto ariteetti- ja tietotyyppigeneeristä ohjelmointia varten. Ariteetti- ja tietotyyppigeneerinen ohjelmointi edesauttaa toisteisen lähdekoodin määrän vähentämistä sekä määritelmien uudelleenkäyttöä, mikä helpottaa lähdekoodin ylläpitoa ja vähentää yksinkertaisten virheiden määrää. Kirjasto muodostetaan Coq-todistusassistentilla, hyödyntäen sen ominaisuuksia funktionaalisena ja riippuvasti tyyppitettynä ohjelmointikielenä. Lisäksi kirjaston toteutuksessa pyritään käyttämään universumipolymorfismia toisteisten määritelmien välttämiseksi. Coqille ei ole saatavilla ariteetti- ja tietotyyppigeneeristä kirjastoa, joten kirjaston luonnin seurauksena saadaan ariteetti- ja tietotyyppigeneerisyyden tuomat edut Coqille The goal of this thesis is to create a functional library for arity-generic datatype-generic programming. Arity-generic datatype-generic programming reduces the amount of code needed and helps reuse definitions, which leads to easier maintenance and decreases the amount of simple errors. The library is done using the Coq proof assistant by using its features as a functional and dependently-typed programming language. The library will also use universe polymorphism to avoid the need for duplicated definitions in the library. There is no available arity-generic datatype-generic library for Coq so the library will bring the benefits of arity-generic datatype-generic programming to Coq.
Metadata
Show full item recordCollections
- Pro gradu -tutkielmat [29040]
Related items
Showing items with similar title or keywords.
-
Metatieto tietovarastoympäristössä
Niemijärvi, Ville (2002) -
Induktiiviset tyypit
Vitikainen, Maxim (2024)Induktiiviset tyypit ovat tapa mallintaa erilaisia tietotyyppejä kuten listoja, luonnollisia lukuja ja binäärihakupuita tyyppiteoriassa. Induktiivisia tyyppejä käytetään laajasti todistusassistenteissa erilaisten teoreemojen ... -
Web-sovellusohjelmointi Scala-ohjelmointikielellä
Parpala, Joni (2021)Nykyisten web-sovellusten kasvavat vaatimukset painostavat etsimään ratkaisuja tavanomaisten ohjelmointiparadigmojen ulkopuolelta. Tässä tutkielmassa selvitetään, miten funktio-ohjelmoinnin ja olio-ohjelmoinnin perusperiaatteita ... -
Luokittelu ja perintä reaalimaailmasta oliosuuntautuneeseen ohjelmointiin
Laiho, Pauli (2022)Oliosuuntautunut ohjelmointi on erittäin suosittu tapa mallintaa ohjelmistoja. Oliot ja oliomainen ajattelutapa on kuitenkin merkittävästi ohjelmointia vanhempia käsitteitä ja niitä on tutkittu laajasti sekä filosofiassa ... -
Ohjelmointi 1 : jotta tietokoneisiin voitaisiin luottaa myös tulevaisuudessa : versio 1.5 07.09.2010
Hyvönen, Martti; Lappalainen, Vesa (Jyväskylän yliopisto, 2010)