Research

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 Scholar

Research 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