Automata Theory Used to Detect Plagiarism
but.committee | doc. Ing. Radek Burget, Ph.D. (předseda) doc. Ing. Petr Motlíček, Ph.D. (člen) doc. Ing. Petr Matoušek, Ph.D., M.A. (člen) Mgr. Kamil Malinka, Ph.D. (člen) Ing. Bohuslav Křena, Ph.D. (člen) | cs |
but.defence | Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C. | cs |
but.jazyk | angličtina (English) | |
but.program | Informační technologie | cs |
but.result | práce byla úspěšně obhájena | cs |
dc.contributor.advisor | Meduna, Alexandr | en |
dc.contributor.author | Beňuš, Alexej | en |
dc.contributor.referee | Havel, Martin | en |
dc.date.created | 2024 | cs |
dc.description.abstract | {Bakalářská práce se zabývá hledáním a rozpoznáváním plagiátorství v programovacím jazyce C++. Jaké metody existují, které jsou nejefektivnější a zároveň ukazuje slabiny těchto metod. Samotný program je naprogramován v C++, s využitím nástroje Clang pro generaci abstraktních syntaktických stromů. Vygenerované stromy se nadále porovnávají různými metodami - statistickou, která počítá a porovnává počty programovacích konstrukcí, algoritmy pro řetězcové porovnávání jako Levenshteinova vzdálenost a nejdelší společný podřetězec a konečně porovnávání stromů, která se soustředí na metodu porovnávání pomocí hashování stromů. Hlavní zaměření práce bylo na strukturální porovnávání C++ programů. Je uvedeno a otestováno několik různých porovnávacích metod. Je také uvedeno nastavení dalších parametrů pro zpřesnění detekce. Po dokončení porovnání, je vypsáno skóre, které podle definované funkce rozhodne zda jsou soubory plagiátorství nebo nikoliv. Také jsou shrnuty některé problémy a slepé uličky v rámci implementace a detekce. | en |
dc.description.abstract | The bachelor's thesis addresses the detection and recognition of plagiarism in the C++ programming language. Which algorithms exist, which methods are the most effective and also showing their weaknesses. The program itself is coded in C++, utilizing Clang for the generation of abstract syntax trees. Generated trees are compared different techniques - statistic comparison utilizing counting and comparing number of coding constructs, string difference operations like Levenshtein distance and longest common substring and finally tree comparison operations which goes deep into comparison of trees using hashes. Main focus was on the structural comparison of C++ programs. Multiple comparison techniques are presented with testing and results. Additional parameters like minimum match size are also presented to make the comparison more precise. After comparison is done, score is presented and with defined functions it is shown if files are or are not plagiarism. Some problems with detection and implementation are also summarized in the text. | cs |
dc.description.mark | C | cs |
dc.identifier.citation | BEŇUŠ, A. Automata Theory Used to Detect Plagiarism [online]. Brno: Vysoké učení technické v Brně. Fakulta informačních technologií. 2024. | cs |
dc.identifier.other | 153123 | cs |
dc.identifier.uri | http://hdl.handle.net/11012/249401 | |
dc.language.iso | en | cs |
dc.publisher | Vysoké učení technické v Brně. Fakulta informačních technologií | cs |
dc.rights | Standardní licenční smlouva - přístup k plnému textu bez omezení | cs |
dc.subject | C++ | en |
dc.subject | Clang | en |
dc.subject | plagiátorství | en |
dc.subject | abstraktní syntaktické stromy | en |
dc.subject | Levenshteinova vzdálenost | en |
dc.subject | detekce | en |
dc.subject | C++ | cs |
dc.subject | Clang | cs |
dc.subject | plagiarism | cs |
dc.subject | abstract syntax tree | cs |
dc.subject | Levenshtein distance | cs |
dc.subject | detection | cs |
dc.title | Automata Theory Used to Detect Plagiarism | en |
dc.title.alternative | Automata Theory Used to Detect Plagiarism | cs |
dc.type | Text | cs |
dc.type.driver | bachelorThesis | en |
dc.type.evskp | bakalářská práce | cs |
dcterms.dateAccepted | 2024-08-21 | cs |
dcterms.modified | 2024-08-21-10:02:29 | cs |
eprints.affiliatedInstitution.faculty | Fakulta informačních technologií | cs |
sync.item.dbid | 153123 | en |
sync.item.dbtype | ZP | en |
sync.item.insts | 2025.03.18 21:02:07 | en |
sync.item.modts | 2025.01.17 10:21:37 | en |
thesis.discipline | Informační technologie | cs |
thesis.grantor | Vysoké učení technické v Brně. Fakulta informačních technologií. Ústav informačních systémů | cs |
thesis.level | Bakalářský | cs |
thesis.name | Bc. | cs |