There are two programs to run: 1) perl code 'data_runner.pl'-- creates necessary input files for the message-passing module. 2)c/c++ executable code 'gdppisim' (SunOS binary) or 'gdppisim2' (Linux binary)- executes a message-passing algorithm and outputs posterior probabilities of protein classification. The following files should be put to the same directory: a)'gene_ontology.obo' -- file describing GO hierarchy/relationships b)'inter_fly_yeast.txt' -- file that contains GO annotations for both Fly and Yeast proteins. c)'similarity_fly_yeast_numb.txt' - file of fly-fly, yeast-yeast and yeast-fly protein pairs which show high sequence homology (above 0.5) Format: "protein1" "protein2" "1-(BLAST p-value)" ("protein1" and "protein2" are array indexes) d)'gridesges_fly_yeast.txt' -- shows protein-protein interactions for fly and yeast networks. Format: "protein1 protein2 number". Number is ignored. 'protein1' and 'protein2' represent an interacting pair. Proteins are shown as array indexes. e)'goedges_fly_yeast.txt' - file which describes probability for a GO term being negative given that its parent (parents) is positive. Format "child" "parent" "probability" Example: 2 1 0.3 We provide a sample 'goedges_fly_yeast.txt'. If you wish, you an design your own file. The first line corresponds to the total number of terms in the GO subontology. data_runner.pl: The file data_runner.pl should be run with 7 (seven) arguments (the output files -- just provide their names, which can be arbitrary) with the following line: "./data_runner.pl ARGV[0] ARGV[1] ARGV[2] ARGV[3] ARGV[4] ARGV[5] ARGV[6]" ARGV[0] - file for positive and negative annotations of proteins ARGV[1] - reference file for a list of annotated to the GO subontology proteins for both Fly and Yeast. Format: "array_index" "protein" Same as shown in a Sample list_fly_yeast.txt. ARGV[2] - file for annotations without duplicates , then over-written with a training set. ARGV[3]- file with proteins and their annotations to the GO subontology. ARGV[4]- file of training set --80% of proteins annotated to the GO subontology ARGV[5]- file of testing set -- 20% proteins with eliminated annotations -- with array indexes ARGV[6]- file of a testing set -- 20% proteins with eliminated annotations -- with protein names and array indexes ARGV[7]- file to store (protedgepars)- describes probabilities of having a specific annotation given the positive or negative annotation of your interacting partner; the above is calculated for each term in the GO subontology. gdppisim: After the run of data_runner.pl, please use the following previously produced files: ARGV[4] and ARGV[7]. The gdppisim can be run on SunOS machine with the following line: "./gdppisim bel_prop similarity_fly_yeast_numb.txt gridedges_fly_yeast.txt goedges_fly_yeast.txt 'ARGV[4]' 'ARGV[7]' gdout_ppisim_GO_fly_yeast.txt status_ppisim_GO_fly_yeast.txt", where ARGV[i] is the file produced by the above perl code. The output will appear in gdout_ppisim_GO_fly_yeast.txt in the following format: 0,0,0.700000 0,1,0.560000 0,2,0.800000 0,3,0.700000 ......... 1,0,0.690000 ...... Each line has three columns, comma separated. The first column is the protein (array) index, the second is the term index, and the third is the final belief (posterior) that that protein is positive at that term.