dataflow-analysis-framework

Implement dataflow analysis frameworks with lattices and worklist algorithms.

17|2|Updated Feb 16, 2026
One-click install
npx skills add https://github.com/rainoftime/pl-skills --skill dataflow-analysis-framework
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dataflow-analysis-framework
Source: https://github.com/rainoftime/pl-skills/tree/main/dataflow-analysis-framework
Command: npx skills add https://github.com/rainoftime/pl-skills --skill dataflow-analysis-framework

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides a generalized framework for implementing dataflow analysis, a crucial technique for static program analysis, compiler optimizations, and program verification.

Core Features & Use Cases

  • Lattice Definitions: Supports defining custom lattices for various analysis domains.
  • Framework Implementation: Handles both forward and backward analyses, as well as 'may' and 'must' analysis variations.
  • Equation Solving: Implements worklist algorithms for efficient solving of dataflow equations.
  • Use Case: Develop a compiler pass to identify dead code by analyzing variable liveness across the program's control flow graph.

Quick Start

Implement a live variable analysis for the given control flow graph using the dataflow analysis framework.

Frequently Asked Questions about dataflow-analysis-framework

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement static program analysis using dataflow analysis?

Static program analysis is implemented by defining custom lattices and transfer functions to solve dataflow equations. This framework handles both forward and backward analyses, enabling you to build analyses like variable liveness across a control flow graph.

What is dataflow analysis used for in compiler optimization?

Dataflow analysis in compiler optimization identifies runtime behaviors statically to enable transformations like dead code elimination. By analyzing variable liveness across the control flow graph, compilers can safely remove unused instructions and improve performance.

Can I define custom lattices for a specific program verification domain?

You can define custom lattices for specific program verification domains by specifying the required domain properties. The framework supports defining these custom lattices to accurately model various analysis states for static program verification.

How do I solve dataflow equations for both forward and backward analyses?

Dataflow equations are solved for both forward and backward analyses using worklist algorithms. This approach efficiently propagates information through the control flow graph, supporting 'may' and 'must' analysis variations for static program analysis.

Does this dataflow framework support may and must analysis variations?

The framework supports both 'may' and 'must' analysis variations for static program analysis. It handles the implementation of both forward and backward analyses to accurately compute the properties of program states.