Under each directory, there is a README file. Please read the README file before reading the files. dpph: The source code of DPPH. (including detailed comments) graph_realization: The source code of the graph realization. (including detailed comments) pph_step: The program reads one row in each run and shows how the output and tree change when each row is added. xhudson: A modified Hudson program which extracts the recombindation points and also can generate the mutations under certain percentage. gpph: The source code of GPPH. (including detailed comments) hpph: The source code of HPPH pphs: A program which can find intervals which have unique solutions when the input data has recombinations. (DPPH is used to find the unique solutions in each interval) large: This program can read a very large genotype file and find PPH solutions for 30 site intervals starting from each site. percent: The program does the experiments of the phase transitions. test_data: The test data for three PPH programs in the paper: "Empirical Exploration of Perfect Phylogeny Haplotyping and Haplotypers"