Original title:
Abstract interpretation of pandas
Translated title:
Abstract interpretation of pandas
Authors:
Hrubý, Jan ; Petříček, Tomáš (advisor) ; Parízek, Pavel (referee) Document type: Bachelor's theses
Year:
2024
Language:
cze Abstract:
[cze][eng] Pandas je oblíbená knihovna pro manipulaci a analýzu dat v Pythonu. Kód napsaný s Pandas nemá žádné typové kontroly a vše je rozhodováno za běhu programu. To může být zdrojem chyb a pádu celého programu za běhu. Jeden ze způsobů jak tento problém řešit je použít jiný, staticky typovaný, jazyk a knihovnu se silnějšími bezpečnostními záru- kami a kompilačními kontrolami. Takové řešení se však nerozšířilo kvůli horší uživatelské přívětivosti. Alternativní cesta by mohla být použítí metody Abstraktní Interpretace ke kontrole programu před jeho během. Cílem této práce je navrhnout způsob jak vyu- žít Abstraktni Interpretaci k analýze programů pro manipulaci s daty, a implementovat analyzátor pro knihovnu Pandas. Schopnosti implementovaného analyzátoru budou zhod- noceny na několika malých avšak realistických případových studiích.Pandas is a Python library widely used for data-manipulation. The code written with Pandas lacks any type-safety and everything is decided at runtime. This can potentially be a source of errors and crashes at runtime. One way to deal with that is to use another, type-safe, language and a library with better safety guarantees and compile-time checks. This approach is not widely used as it is not very user-friendly. An alternative approach could be to use program verification method Abstract Interpretation to perform some checks before the run of the program. The goal of this thesis is to design a framework for analyzing data-manipulation programs and implement an analyzer for the Pandas library. The framework will be based on the Abstract Interpretation. The capabilities of the resulting analyzer will be evaluated on a set of small but realistic case studies.
Keywords:
pandas|python|program analysis|abstract interpretation; pandas|python|program analysis|abstract interpretation
Institution: Charles University Faculties (theses)
(web)
Document availability information: Available in the Charles University Digital Repository. Original record: http://hdl.handle.net/20.500.11956/192042