/autooracle

Primary LanguageJupyter Notebook

METAMON: Finding Inconsistencies between Program Documentation and Behavior using Metamorphic LLM Queries

This is an artifact accompanying the paper METAMON: Finding Inconsistencies between Program Documentation and Behavior using Metamorphic LLM Queries.

Requirements

  • H/W
    • A processor with the linux/amd64 architecture (only for RQ2-4)
  • S/W
    • 🐍 Python 3.9.1
      • Installing dependencies
        pip install -r requirements.txt
    • 🐳 docker
  • Evaluation Dataset
    • The regression tests, metamorphic prompts, and LLM responses used in our evaluation are located within the workspace/result folder, organized by each project's name.
    • The analysis for the Research Questions based on these dataset can be found in workspace/result/analyze/analyze.ipynb

Package structure

β”œβ”€β”€ workspace
β”‚     β”œβ”€β”€result
β”‚     β”‚   β”œβ”€β”€ Chart
β”‚     β”‚   β”œβ”€β”€ Closure
β”‚     β”‚   β”œβ”€β”€ Lang
β”‚     β”‚   β”œβ”€β”€ Math
β”‚     β”‚   └── Time
β”‚     └── src
β”‚         β”œβ”€β”€ analyze
β”‚         β”œβ”€β”€ step1_specification_quality_check
β”‚         β”œβ”€β”€ step2_test_genertaion
β”‚         β”œβ”€β”€ step3_prompt_generation
β”‚         └── step4_querying_LLM
β”‚
β”œβ”€β”€ Dockerfile
β”‚
β”œβ”€β”€ resources
β”‚
└── README.md