Break-It-Fix-It: Learning to Repair Programs from Unlabeled Data
 
				BIFI
Break-It-Fix-It: Learning to Repair Programs from Unlabeled Data
This repo provides the source code & data of our paper: Break-It-Fix-It: Unsupervised Learning for Program Repair (ICML 2021).
@InProceedings{yasunaga2021break,
  author =  {Michihiro Yasunaga and Percy Liang},
  title =   {Break-It-Fix-It: Unsupervised Learning for Program Repair},
  year =    {2021},  
  booktitle = {International Conference on Machine Learning (ICML)},  
}
Problem: Repair Task

Our approach: BIFI

0. Dependencies
Specifically, run the following commands to create a conda environment (assuming CUDA10.1):
conda create -n BIFI python=3.7.7
conda activate BIFI
pip install tqdm
pip install torch==1.4.0 torchvision==0.5.0
cd utils/fairseq
pip install -e .
pip numpy==1.20.1 editdistance
1. Download Data
Download all the data from here (data.zip) and unzip it (note: 67GB when compressed,