DSL for Type Systems
| dc.contributor.advisor | Sawa, Zdeněk | |
| dc.contributor.author | Sinkovicz, Marian | |
| dc.contributor.referee | Běhálek, Marek | |
| dc.date.accepted | 2026-08-10 | |
| dc.date.accessioned | 2026-09-02T14:34:30Z | |
| dc.date.available | 2026-09-02T14:34:30Z | |
| dc.date.issued | 2026 | |
| dc.description.abstract | The result of this thesis is a tiny dependently typed language suitable for specifying type systems and proving properties about them. This language is build around the idea of \emph{bidirectional types} — types whose parameters are separated into inputs and outputs. Most dependently typed languages have a big problem: using a lot of dependent types leads to combinatoric explosion of parameters that need to be dragged everywhere. It's common to sweap them under the rug by making them implicit, but that still has issues. To avoid them entirely, the presented type system allows output parameters to bind variables and to be pattern matched on. This eliminates most of these parameters. A prototype of this language has been implemented. One of my goals is portability: I should be able to write definitions and basic proofs once, and export them to various languages. To demonstrate that my language is suitable for this, a specification and implementation of a translation to Rocq has been provided. | en |
| dc.description.abstract | Výsledkem této práce je malý, závisle typovaný (dependently typed) programovací jazyk vhodný pro specifikaci typových systémů, a dokazování jejich vlastností. Tento jazyk je postaven na konceptu \emph{bidirekcionálních typů} — typů, jejichž parametry jsou rozlišeny na vstupní a výstupní. Většina jazyků se závislými typy má značný problém: používání většího množství závislých typů vede ke kombinatorické explozi parametů, které musí být explivitně či implicitně součástí termů. Často bývají tyto parametry zameteny pod koberec, tím že se udělají implicitní, ale to stále vede k problémům. Abochom se těmto parametrům zcela vyhnuli, navržený typový systém dovolí výstupním parametrům aby fungovaly jako bindery (přidaly proměnné do scopu) a aby byly pattern matchnuté. Tím eliminuje většinu parametrů, které by normálně byly implicitní. Byl implementován prototyp tohoto jazyka. Jeden z mých záměrů je portabilita: mělo by stačit napsat definice a základní důkazy jednou a poté je exportovat do růzdných jazyků. Na demonstrování, že tento jazyk je pro to vhodný, byl specifikován a implementován export to jazyka Rocq. | cs |
| dc.description.department | 470 - Katedra aplikované matematiky | cs |
| dc.description.result | výborně | cs |
| dc.format.extent | 851291 bytes | |
| dc.format.mimetype | application/pdf | |
| dc.identifier.other | OSD002 | |
| dc.identifier.sender | S2724 | |
| dc.identifier.thesis | SIN0153_FEI_B0541A170008_2026 | |
| dc.identifier.uri | http://hdl.handle.net/10084/160301 | |
| dc.language.iso | en | |
| dc.publisher | Vysoká škola báňská – Technická univerzita Ostrava | cs |
| dc.rights.access | openAccess | |
| dc.subject | Type theory | en |
| dc.subject | Type systems | en |
| dc.subject | LF | en |
| dc.subject | Twelf | en |
| dc.subject | Bidirectional type checking | en |
| dc.subject | dependent types | en |
| dc.subject | Teorie typů | cs |
| dc.subject | Typové systémy | cs |
| dc.subject | LF | cs |
| dc.subject | Twelf | cs |
| dc.subject | Bidirectional type checking | cs |
| dc.subject | závislé typy | cs |
| dc.thesis.degree-grantor | Vysoká škola báňská – Technická univerzita Ostrava. Fakulta elektrotechniky a informatiky | cs |
| dc.thesis.degree-level | Bakalářský studijní program | cs |
| dc.thesis.degree-name | Bc. | |
| dc.thesis.degree-program | Výpočetní a aplikovaná matematika | cs |
| dc.title | DSL for Type Systems | en |
| dc.title.alternative | DSL pro typové systémy | cs |
| dc.type | Bakalářská práce | cs |
| local.files.count | 6 | |
| local.files.size | 1549298 | |
| local.has.files | yes |
Files
Original bundle
1 - 5 out of 6 results
Loading...
- Name:
- SIN0153_FEI_B0541A170008_2026.pdf
- Size:
- 831.34 KB
- Format:
- Adobe Portable Document Format
- Description:
- Text práce
Loading...
- Name:
- SIN0153_FEI_B0541A170008_2026_zadani.pdf
- Size:
- 139.34 KB
- Format:
- Adobe Portable Document Format
- Description:
- Zadání
Loading...
- Name:
- SIN0153_FEI_B0541A170008_2026_priloha.zip
- Size:
- 91.72 KB
- Format:
- ZIP
- Description:
- Příloha
Loading...
- Name:
- SIN0153_FEI_B0541A170008_2026_posudek_vedouci_Sawa_Zdenek.pdf
- Size:
- 192.45 KB
- Format:
- Adobe Portable Document Format
- Description:
- Posudek vedoucího – Sawa, Zdeněk
Loading...
- Name:
- SIN0153_FEI_B0541A170008_2026_posudek_oponent_Behalek_Marek.pdf
- Size:
- 194.98 KB
- Format:
- Adobe Portable Document Format
- Description:
- Posudek oponenta – Běhálek, Marek