PPA 7/10: Data Flow Analysis program analysis crash course

A lecture for BSc students in Innopolis University. Blog: Books: GitHub: (don’t hesitate to follow in order to stay informed) Telegram channel with recent news and updates: (subscribe to not miss a thing) Twitter with daily and weekly updates: (follow me!) iTunes: SoundCloud: Yandex Music podcast by yegor256: 0:00 Introduction 1:50 Motivating Example. Unnasigned Variable 6:34 ChatGPT vs. Clang Tidy 11:02 MemorySanitizer 13:53 IntelliJ IDEA 15:53 Java Compiler 17:19 Method. Control Flow Graph 18:58 Six Properties of Data Flow Analysis 31:14 Over-approximation 33:23 Meet Operator 40:00 GEN and KILL Functions 42:37 Low Precision 46:47 Sensitivities. Path-Sensitive Analysis 50:16 Flow-Sensitive Analysis 53:28 Context-Sensitive Analysis 57:48 Most Common Types 1:17:22 Further Reading/Watching