% % % Copyright (C) 2006-9 by the HeKatE Project % % VARDA has been develped by the HeKatE Project, % see http://hekate.ia.agh.edu.pl % % This file is part of VARDA. % % VARDA is free software: you can redistribute it and/or modify % it under the terms of the GNU General Public License as published by % the Free Software Foundation, either version 3 of the License, or % (at your option) any later version. % % VARDA is distributed in the hope that it will be useful, % but WITHOUT ANY WARRANTY; without even the implied warranty of % MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the % GNU General Public License for more details. % % You should have received a copy of the GNU General Public License % along with VARDA. If not, see . % varda_model_desc :- write('Bradycardia and tachycardia diagnostic system; Besides diagnosis it provides also hints for a doctor regarding patient treatment'). varda_model_cardio :- ard_att_add('Diagnosis'), ard_property_add(['Diagnosis']), ard_att_add('Diagnose'), ard_att_add('Treatment'), ard_finalize(['Diagnosis'],['Diagnose','Treatment']), ard_split(['Diagnose','Treatment'],[['Diagnose'],['Treatment']],[[['Diagnose'],['Treatment']]]), ard_att_add('BasicDiag'), ard_att_add('BradyAdvDiag'), ard_att_add('TachyAdvDiag'), ard_finalize(['Diagnose'], ['BasicDiag', 'BradyAdvDiag','TachyAdvDiag']), ard_split(['BasicDiag', 'BradyAdvDiag','TachyAdvDiag'], [ ['BasicDiag'],['BradyAdvDiag'],['TachyAdvDiag'] ], [ [['BasicDiag'],['BradyAdvDiag']],[['BasicDiag'],['TachyAdvDiag']], [['BradyAdvDiag'], ['Treatment']],[['TachyAdvDiag'],['Treatment']]]), ard_att_add('BradyTreatmentStage1'), ard_att_add('BradyTreatmentStage2'), ard_att_add('TachyTreatmentStage1'), ard_att_add('TachyTreatmentStage2'), ard_finalize(['Treatment'],['BradyTreatmentStage1','BradyTreatmentStage2','TachyTreatmentStage1','TachyTreatmentStage2']), ard_split(['BradyTreatmentStage1','BradyTreatmentStage2','TachyTreatmentStage1','TachyTreatmentStage2'], [['BradyTreatmentStage1'],['BradyTreatmentStage2'],['TachyTreatmentStage1'],['TachyTreatmentStage2']], [[['TachyTreatmentStage1'],['TachyTreatmentStage2']],[['BradyTreatmentStage1'],['BradyTreatmentStage2']]]), %TachyTreatment2 ard_att_add(sinus_rate), ard_att_add(tachy_treatment_finished), ard_finalize(['TachyTreatmentStage2'],[sinus_rate, tachy_treatment_finished]), ard_split([sinus_rate, tachy_treatment_finished],[[sinus_rate], [tachy_treatment_finished]], [ [[sinus_rate], [tachy_treatment_finished]] ]), %TachyTreatment1 ard_att_add(qrs_width), ard_att_add(qrs_rate), ard_att_add(qrs_action), ard_finalize(['TachyTreatmentStage1'],[qrs_width,qrs_rate, qrs_action]), ard_split([qrs_width,qrs_rate, qrs_action],[[qrs_width],[qrs_rate], [qrs_action]], [[[qrs_width],[qrs_action]],[[qrs_rate], [qrs_action]],[[qrs_action], [tachy_treatment_finished]] ]), %BradyTreatment2 ard_att_add(asystole_risk), ard_att_add(brady_treatment_finished), ard_finalize(['BradyTreatmentStage2'],[asystole_risk, brady_treatment_finished]), ard_split([asystole_risk, brady_treatment_finished],[[asystole_risk], [brady_treatment_finished]], [[[asystole_risk],[brady_treatment_finished]]]), %BradyTreatment1 ard_att_add(brady_treatment_response), % asystoly_riks, good_atrop_response ard_att_add(brady_second_action), % OK, specialist ard_finalize(['BradyTreatmentStage1'],[brady_treatment_response,brady_second_action]), ard_split([brady_treatment_response,brady_second_action], [[brady_treatment_response],[brady_second_action]], [[[brady_treatment_response],[brady_second_action]], [[brady_second_action],[brady_treatment_finished]]]), %TachyAdvDiag ard_att_add(tachy_symptoms), %stable, unstable ard_att_add(tachy_first_action), % done, qrs_tretment ard_finalize(['TachyAdvDiag'],[tachy_symptoms,tachy_first_action]), ard_split([tachy_symptoms,tachy_first_action],[[tachy_symptoms],[tachy_first_action]], [[[tachy_symptoms],[tachy_first_action]], [[tachy_first_action],[qrs_action]]]), %BradyAdvDiag ard_att_add(brady_symptoms), %blood pressure, heart_rate, none ard_att_add(brady_first_action), % meds_treat, obeserv ard_finalize(['BradyAdvDiag'],[brady_symptoms, brady_first_action]), ard_split([brady_symptoms, brady_first_action],[[brady_symptoms], [brady_first_action]],[[[brady_symptoms], [brady_first_action]], [[brady_first_action],[brady_second_action]] ]), %BasicDiag ard_att_add(basic_symptoms), %brady_risk, tachy_risk ard_att_add(basic_action), %diag_brady, diag_tachy ard_finalize(['BasicDiag'],[basic_symptoms,basic_action]), ard_split([basic_symptoms,basic_action],[[basic_symptoms],[basic_action]], [[[basic_symptoms],[basic_action]], [[basic_action],[brady_first_action]], [[basic_action],[tachy_first_action]] ]). :-varda_model_cardio.