Research that becomes
real analysis and testing tools
Interpretica grew out of program-analysis research. The methods we publish and prototype turn directly into Visao, TS Factory, Delta and Midair.
Peer-reviewed publications
Our founder publishes on program analysis
Maxim Menshikov (Founder & CEO) has a body of peer-reviewed work on static analysis, program-analysis intermediate representations and developer tools. Several of these results are now part of our platform — the Midair IR and the Visao engine among them.
View publications on Google ScholarResearch directions
Our research is not abstract. Each direction below solves a concrete problem in analysing and testing complex software — and each has produced results we ship or rely on today.
Language-agnostic static analysis
One analyzer, many languages. Instead of maintaining a separate tool per language, we lower source code into a shared semantic representation and reason about that — so a detector written once works across a codebase.
Result: the Midair intermediate representation and the Visao engine.
Midair: An Intermediate Representation for Multi-purpose Program Analysis (ICCSA 2020); Scalable semantic virtual machine framework for language-agnostic static analysis (GRID 2018).
Reasoning about program behavior
We combine model checking with abstract interpretation to explore how code behaves across execution paths — surfacing defects that emerge from complex interactions inside a program, not just known bug patterns.
Result: Equid, our earlier static-analysis framework, is the direct predecessor of today's Visao engine — its path-sensitive detectors grew out of this work.
Equid — a static analysis framework for industrial applications (ICCSA 2019).
Report quality: findings you can act on
A finding is only useful if an engineer can act on it. We research how to measure and improve the completeness and relevance of analysis output — and how to cut false positives that erode trust.
Result: the 5W+1H report-quality measure, guiding how Visao ranks and presents findings.
5W+1H static analysis report quality measure (TMPA 2017).
Resident & scalable analysis
Analysis should run continuously and incrementally on large codebases, not as a slow batch step. We study resident analyzers that stay live, and service models for delivering analysis at scale.
Result: the way Visao integrates into CI/CD and stays fast on big projects.
Towards a resident static analysis (ICCSA 2019); Review of static analyzer service models (Proceedings of ISP RAS, 2021).
Embedded & resource-constrained systems
Testing and virtualization for constrained devices, firmware and network hardware — where reproducing the exact environment is half the problem. We research how to isolate, snapshot and run tests on such targets reliably.
Result: informs TS Factory's device labs and Delta's runtime capture.
Design and testing of an LXC-based virtualization system for resource-constrained MIPS devices (SEIM 2018).
Distributed testing & runtime observability
How to run large multi-host test scenarios, record the exact environment each result came from, and connect runtime evidence back to the code findings that explain it.
Result: TS Factory (distributed testing) and Delta (runtime monitoring), tied together by Midair.
Selected publications
-
2020
Midair: An Intermediate Representation for Multi-purpose Program Analysis
ICCSA
-
2019
Equid — a static analysis framework for industrial applications
ICCSA
-
2019
Towards a resident static analysis
ICCSA
-
2018
Scalable semantic virtual machine framework for language-agnostic static analysis
GRID
-
2017
5W+1H static analysis report quality measure
TMPA
-
2021
Review of static analyzer service models
Proceedings of ISP RAS
-
2018
Design and testing of an LXC-based virtualization system for resource-constrained MIPS devices
SEIM