investigation(investigation_into_flux_balance_analysis_model).

domain_of_study(systems_biology).
has_proposition(investigation_into_flux_balance_analysis_model,systems_biology).

has_specified_input(investigation_into_flux_balance_analysis_model,reuse_data_reuse).
objective(reuse_data_reuse).



has_proposition(investigation_into_flux_balance_analysis_model,test_suitability_goal).
has_proposition(investigation_into_flux_balance_analysis_model,test_accuracy_goal).

has_representation(test_suitability_goal, 'to test suitability of flux balance analysis models').
text_representation('to test suitability of flux balance analysis models').
has_representation(test_accuracy_goal, 'to test accuracy of flux balance analysis models').
text_representation('to test accuracy of flux balance analysis models').

role(investigator).
investigator(chuan_lu).
has_agent(investigation_into_flux_balance_analysis_model,chuan_lu).
link('http://systemsbiology.ucsd.edu/In_Silico_Organisms/Yeast').
has_proposition(sb_model,'http://systemsbiology.ucsd.edu/In_Silico_Organisms/Yeast').


role(object_of_study).
object_of_study(fba_model).
has_object(investigation_into_flux_balance_analysis_model,fba_model).

has_specified_input(investigation_into_flux_balance_analysis_model,fba_model).

has_part(investigation_into_flux_balance_analysis_model,study_of_iIN750_systems_biology_model).

has_specified_input(investigation_into_flux_balance_analysis_model,stoichiometric_matrix_s).
has_specified_input(investigation_into_flux_balance_analysis_model,'not_match(model_iND750_prediction,data_reuse_results_rich_media)').
has_specified_input(investigation_into_flux_balance_analysis_model,'not_match(model_iND750_prediction,data_reuse_results_minimal_media)').

has_specified_output(investigation_into_flux_balance_analysis_model,'flux balance analysis models are not accurate').
text_representation('flux balance analysis models are not accurate').
conclusion('flux balance analysis models are not accurate').

has_specified_output(investigation_into_flux_balance_analysis_model,'flux balance analysis models are not suitable').
text_representation('flux balance analysis models are not suitable').
conclusion('flux balance analysis models are not suitable').


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
study(study_of_iIN750_systems_biology_model).

has_specified_input(study_of_iIN750_systems_biology_model,iIN750_model).
object_of_study(iIN750_model).

link('http://gcrg.ucsd.edu/In_Silico_Organisms/Yeast?action=AttachFile&do=get&target=Sc_iND750.xml').
has_proposition(iIN750_model,'http://gcrg.ucsd.edu/In_Silico_Organisms/Yeast?action=AttachFile&do=get&target=Sc_iND750.xml').
parameter(maximum_uptake_rate).
parameter(set_knock-outs).
parameter(set_upper_bound_fluxes). 
parameter(set_lower_bound_fluxes). 
parameter(growth_rate_maximisation).
objective_function(growth_rate_maximisation).
has_proposition(iIN750_model,maximum_uptake_rate).
has_proposition(iIN750_model,set_knock-outs).
has_proposition(iIN750_model,set_upper_bound_fluxes).
has_proposition(iIN750_model,set_lower_bound_fluxes).
has_proposition(iIN750_model,growth_rate_maximisation).


has_proposition(study_of_iIN750_systems_biology_model,test_accuracy_goal_iIN750).

text_representation('to test the accuracy of iND750 model for the study of relative growth of the knock-out and wild-type yeast strains').
has_representation(test_accuracy_goal_iIN750,'to test the accuracy of iND750 model for the study of relative growth of the knock-out and wild-type yeast strains'). 


has_proposition(study_of_iIN750_systems_biology_model,compare_goal).
text_representation('to compare growth rate from the investigation into the data reuse with the growth rate predicted by iND750 model').
has_representation(compare_goal,'to compare growth rate from the investigation into the data reuse with the growth rate predicted by iND750 model').
has_part(test_accuracy_goal_iIN750,compare_goal).

biological_object(saccharomyces_cerevisiae).
role(object_of_study).
object_of_study(saccharomyces_cerevisiae).
has_object(study_of_iIN750_systems_biology_model,saccharomyces_cerevisiae).
has_specified_input(study_of_iIN750_systems_biology_model,saccharomyces_cerevisiae).
has_proposition(saccharomyces_cerevisiae,'http://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=4932&lvl=3&p=mapview&p=has_linkout&p=blast_url&p=genome_blast&lin=f&keep=1&srchmode=1&unlock').
link('http://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?mode=Info&id=4932&lvl=3&p=mapview&p=has_linkout&p=blast_url&p=genome_blast&lin=f&keep=1&srchmode=1&unlock'). 

goal(compare_on_rich_media_goal).
has_proposition(study_of_iIN750_systems_biology_model,compare_on_rich_media_goal).
has_representation(compare_on_rich_media_goal,'to compare growth rate from the investigation into the data reuse with the growth rate predicted by iND750 model in rich media').
text_representation('to compare growth rate from the investigation into the data reuse with the growth rate predicted by iND750 model in rich media').

hypothesis(research_hypothesis).
research_hypothesis(h_1_1).


logical_representation('not_match(model_iND750_prediction,data_reuse_results_rich_media)').
text_representation('iND750 systems biology model prediction does not match to the results of the data reuse investigation for rich media').

has_representation(h_1_1,'not_match(model_iND750_prediction,data_reuse_results_rich_media)').
has_representation(h_1_1,'iND750 systems biology model prediction does not match to the results of the data reuse investigation for rich media').

hypothesis(negative_hypothesis).
negative_hypothesis(h_2_1).

logical_representation('match(model_iND750_prediction,data_reuse_results_rich_media)').
text_representation('iND750 systems biology model prediction matches to the results of the data reuse investigation for rich media').

has_representation(h_2_1,'match(model_iND750_prediction,data_reuse_results_rich_media)').
has_representation(h_2_1,'iND750 systems biology model prediction matches to the results of the data reuse investigation for rich media').

goal(compare_on_minimal_media_goal).
has_proposition(study_of_iIN750_systems_biology_model,compare_on_minimal_media_goal).
has_representation(compare_on_minimal_media_goal,'to compare growth rate from the investigation into the data reuse with the growth rate predicted by iND750 model in minimal media').
text_representation('to compare growth rate from the investigation into the data reuse with the growth rate predicted by iND750 model in minimal media').

research_hypothesis(h_1_2).
logical_representation('not_match(model_iND750_prediction,data_reuse_results_minimal_media)').
text_representation('iND750 systems biology model prediction does not match to the results of the data reuse investigation for minimal media').

has_representation(h_1_2,'not_match(model_iND750_prediction,data_reuse_results_minimal_media)').
has_representation(h_1_2,'iND750 systems biology model prediction does not match to the results of the data reuse investigation for minimal media').

negative_hypothesis(h_2_2).

logical_representation('match(model_iND750_prediction,data_reuse_results_minimal_media)').
text_representation('iND750 systems biology model prediction matches to the results of the data reuse investigation for rich media').

has_representation(h_2_2,'match(model_iND750_prediction,data_reuse_results_minimal_media)').
has_representation(h_2_2,'iND750 systems biology model prediction matches to the results of the data reuse investigation for minimal media').


has_specified_input(study_of_iIN750_systems_biology_model,h_1_1).
has_specified_input(study_of_iIN750_systems_biology_model,h_1_2).
has_specified_input(study_of_iIN750_systems_biology_model,h_2_1).
has_specified_input(study_of_iIN750_systems_biology_model,h_2_2).



classification_of_study(classification_of_study_by_organism).
classification_of_study_by_organism(study_of_iIN750_systems_biology_model,saccharomyces_cerevisiae_study).
classification_of_study(classification_of_study_by_hypothesis).
classification_of_study_by_hypothesis(study_of_iIN750_systems_biology_model,hypothesis_driven_study).

has_specified_output(study_of_iIN750_systems_biology_model,h_1_1_has_been_confirmed).
conclusion(h_1_1_has_been_confirmed).
has_specified_output(study_of_iIN750_systems_biology_model,h_1_2_has_been_confirmed).
conclusion(h_1_2_has_been_confirmed).

%%%%%%%%%%%%%%%%%%%%%%

has_part(study_of_iIN750_systems_biology_model,study_on_rich).
%study_on_rich is defined in the data_reuse.pl

has_part(study_of_iIN750_systems_biology_model,study_on_minimal).
%study_on_rich is defined in the data_reuse.pl



%%%%%%%%%%%%%%%%%%%%%%%%%
procedure(model_modification_procedure).
has_part(study_of_iIN750_systems_biology_model,model_modification_procedure).
goal(add_absent_gene).
has_proposition(model_modification_procedure,add_absent_gene).
link('http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').
has_proposition(model_modification_procedure,'http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').

has_specified_input(model_modification_procedure,iIN750_model).
has_specified_output(model_modification_procedure,modified_iIN750_model).
result(modified_iIN750_model).

%%%%%%%%%%%%%%%%%%%%%%%%%
procedure(model_solving_procedure).
has_part(study_of_iIN750_systems_biology_model,model_solving_procedure).

link('http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').
has_proposition(model_solving_procedure,'http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').
has_specified_input(model_solving_procedure,modified_iIN750_model).
has_specified_output(model_solving_procedure,estimation_growth_rate_knock_out_minimal_media).
has_specified_output(model_solving_procedure,estimation_growth_rate_wild_type_minimal_media).
has_specified_output(model_solving_procedure,estimation_growth_rate_knock_out_rich_media).
has_specified_output(model_solving_procedure,estimation_growth_rate_wild_type_rich_media).

has_specified_output(model_solving_procedure,estimation_growth_rate_for_knock_out_minimal_media).
has_specified_output(model_solving_procedure,estimation_growth_rate_for_wild_type_minimal_media).
has_specified_output(model_solving_procedure,estimation_growth_rate_for_knock_out_rich_media).
has_specified_output(model_solving_procedure,estimation_growth_rate_for_wild_type_rich_media).

data(flux_balance_analysis_investigation_data).
flux_balance_analysis_investigation_data(estimation_growth_rate_knock_out_minimal_media).
flux_balance_analysis_investigation_data(estimation_growth_rate_wild_type_minimal_media).
flux_balance_analysis_investigation_data(estimation_growth_rate_knock_out_rich_media).
flux_balance_analysis_investigation_data(estimation_growth_rate_wild_type_rich_media).
link('http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').
has_proposition(flux_balance_analysis_investigation_data,'http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').

% this procedure can be detailed into procedures for each deletant, i.e. YR152C. 


%%%%%%%%%%%%%%%%
procedure(comparison_of_results_procedure).
has_part(study_of_iIN750_systems_biology_model,comparison_of_results_procedure).
has_proposition(comparison_of_results_procedure,'http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').
link('http://www.aber.ac.uk/~dcswww/Research/bio/unicellsys/DataReuse/').

has_specified_input(comparison_of_results_procedure,growth_rate_knock_out_minimal_media).
has_specified_input(comparison_of_results_procedure,growth_rate_wild_type_minimal_media).
has_specified_input(comparison_of_results_procedure,growth_rate_knock_out_rich_media).
has_specified_input(comparison_of_results_procedure,growth_rate_wild_type_rich_media).

data(automated_investigation_data).
automated_investigation_data(growth_rate_knock_out_minimal_media).
automated_investigation_data(growth_rate_wild_type_minimal_media).
automated_investigation_data(growth_rate_knock_out_rich_media).
automated_investigation_data(growth_rate_wild_type_rich_media).

link('http://www.aber.ac.uk/compsci/Research/bio/robotsci/data/data_reuse/results/').
has_proposition(automated_investigation_data,'http://www.aber.ac.uk/compsci/Research/bio/robotsci/data/data_reuse/results/').

has_specified_input(comparison_of_results_procedure,estimation_growth_rate_knock_out_minimal_media).
has_specified_input(comparison_of_results_procedure,estimation_growth_rate_wild_type_minimal_media).
has_specified_input(comparison_of_results_procedure,estimation_growth_rate_knock_out_rich_media).
has_specified_input(comparison_of_results_procedure,estimation_growth_rate_wild_type_rich_media).


has_specified_output(comparison_of_results_procedure,'not_match(model_iND750_prediction,data_reuse_results_rich_media)').
has_specified_output(comparison_of_results_procedure,'not_match(model_iND750_prediction,data_reuse_results_minimal_media)').





%%%%%%%%%%%
% A-box %


has_transitive_part(X,Y):-has_part(X,Y).
has_transitive_part(X,Z):-has_part(X,Y),has_transitive_part(Y,Z).

goal(test_suitability_goal).
goal(test_accuracy_goal).
goal(test_accuracy_goal_iIN750).
goal(compare_goal).
representation(text_representation).
representation(logical_representation).





