Show simple item record

Modeling of query languages and applications in code refactoring and code optimization

dc.contributor.advisorVujošević Janičić, Milena
dc.contributor.otherMitić, Nenad
dc.contributor.otherMarić, Filip
dc.contributor.otherGilezan, Silvia
dc.creatorSpasić, Mirko
dc.date.accessioned2021-06-22T10:15:21Z
dc.date.available2021-06-22T10:15:21Z
dc.date.issued2021-03-23
dc.identifier.urihttp://eteze.bg.ac.rs/application/showtheses?thesesId=8186
dc.identifier.urihttps://fedorabg.bg.ac.rs/fedora/get/o:23860/bdef:Content/download
dc.identifier.urihttp://vbs.rs/scripts/cobiss?command=DISPLAY&base=70036&RID=40408841
dc.identifier.urihttps://nardus.mpn.gov.rs/handle/123456789/18403
dc.description.abstractПроблем садржаности упита један је од фундаменталних проблема у рачунар- ским наукама, иницијално дефинисан за релационе упите. Са растућом популарношћу SPARQL упитног језика, проблем постаје релевантан и актуелан и у овом новом контексту. У тези је представљен оригинални приступ решавању овог проблема заснован на сво- ђењу на задовољивост у логици првог реда. Подржана је садржаност упита узимајући у обзир RDF схему, а разматра се и релација стапања, као слабија форма садржаности. Доказана је сагласност и потпуност предложеног приступа на широком спектру језич- ких конструката. Описана је и његова имплементација, у виду решавача SPECS, чији је кôд јавно доступан. Представљени су резултати детаљне експерименаталне евалуације на релевантним скуповима примера за тестирање који показују да је SPECS ефикасан, и да у поређењу са осталим савременим решавачима истог проблема даје прецизније ре- зултате у краћем времену, уз бољу покривеност језичких конструката. Једна од примена моделовања упитних језика може бити и при рефакторисању апликација које присту- пају базама података. У таквим ситуацијама, врло су честе измене којима се мењају и упити и кôд на језику у коме се они позивају. Такве промене могу сачувати укупну еквивалентност кода, док на нивоу појединачних делова еквивалентност не мора бити одржана. Коришћење алата за аутоматску верификацију еквивалентности рефактори- саног кода може да дâ гаранцију задржавања понашања програма и од суштинског је значаја за поуздан развој софтвера. Са том мотивацијом, у тези се разматра и модело- вање SQL упита у теоријама логике првог реда, којим се омогућава аутоматска провера еквивалентности C/C++ програма са уграђеним SQL-ом, што је и имплементирано у виду јавно доступног алата отвореног кода SQLAV.sr
dc.description.abstractThe query containment problem is a very important computer science problem, originally defined for relational queries. With the growing popularity of the SPARQL query language, it became relevant and important in this new context, too. This thesis introduces a new approach for solving this problem, based on a reduction to satisfiability in first order logic. The approach covers containment under RDF SCHEMA entailment regime, and it can deal with the subsumption relation, as a weaker form of containment. The thesis proves soundness and completeness of the approach for a wide range of language constructs. It also describes an implementation of the approach as an open source solver SPECS. The experimental evaluation on relevant benchmarks shows that SPECS is efficient and comparing to state-of-the-art solvers, it gives more precise results in a shorter amount of time, while supporting a larger fragment of SPARQL constructs. An application of query language modeling can be useful also along refactoring of database driven applications, where simultaneous changes that include both a query and a host language code are very common. These changes can preserve the overall equivalence, without preserving equivalence of these two parts considered separately. Because of the ability to guarantee the absence of differences in behavior between two versions of the code, tools that automatically verify code equivalence have great benefits for reliable software development. With this motivation, a custom first-order logic modeling of SQL queries is developed and described in the thesis. It enables an automated approach for reasoning about equivalence of C/C++ programs with embedded SQL. The approach is implemented within a publicly available and open source framework SQLAV.en
dc.languagesr
dc.publisherУниверзитет у Београду, Математички факултетsr
dc.relationinfo:eu-repo/grantAgreement/MESTD/Basic Research (BR or ON)/178006/RS//
dc.rightsopenAccessen
dc.rights.urihttps://creativecommons.org/licenses/by-nc/4.0/
dc.sourceУниверзитет у Београдуsr
dc.titleМоделовање упитних језика са применама у рефакторисању и оптимизацији кодаsr
dc.title.alternativeModeling of query languages and applications in code refactoring and code optimizationen
dc.typedoctoralThesisen
dc.rights.licenseBY-NC
dc.identifier.fulltexthttp://nardus.mpn.gov.rs/bitstream/id/72042/IzvestajKomisije28860.pdf
dc.identifier.fulltexthttp://nardus.mpn.gov.rs/bitstream/id/72041/Disertacija.pdf
dc.identifier.rcubhttps://hdl.handle.net/21.15107/rcub_nardus_18403


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record

openAccess
Except where otherwise noted, this item's license is described as openAccess