# Boolean network model of Drosophila melanogaster from # "The topology of the regulatory interactions predicts the expression pattern of the # segment polarity genes in Drosophila melanogaster", R. Albert and H. G. Othmer, # Journal of Theoretical Biology, 2003, vol. 223, no. 1, pp. 1-18. # The number of cells is reducecd from 12 to 4 # total number of nodes # 4 cells each of 13 possible types = 52 .v 52 # labels of nodes and names of corresponding genes # 1-4 = SLP1-SLAP4 sloppy paired # 5-8 = wg1-wg4 gene # 9-12 = WG1-W4 secreted protein wingless # 13-16 = en1-en4 gene # 17-20 = EN1-EN4 engrailed protein # 21-24 = hh1-hh4 gene # 25-28 = HH1-HH4 hedgehog protein # 29-32 = ptc1-ptc4 gene # 33-36 = PTC1-PTC4 transmembrane receptor protein patched # 37-40 = ci1-ci4 gene # 41-44 = CI1-CI4 cytosolic protein cubitus interruptusy # 45-48 = CIA1-CIA4 transcriptional activator protein # 49-52 = CIR1-CIR4 transcriptional repressor protein # Since the activation of PH and SMO proteins is assumed to occur # instantaneously, they do not influence the number and length of # attractors. We do not introduce separate nodes for PH and SMO # and do not evaluate their values separately. If needed, they can be # computed as: # SMO_i(t) = (NOT PTC_i(t)) OR HH_{i-1}(t) OR HH_{i+1}(t) # PH_i(t) = PTC_i(t) AND (HH_{i-1}(t) OR HH_{i+1}(t)) # # Since SMO_i(t) acts as an input to CIA_i(t+1) and CIR_i(t+1) # we have substituted SMO_i(t) in these expressions by # SMO_i(t) = (NOT PTC_i(t)) OR HH_{i-1}(t) OR HH_{i+1}(t). # No expression uses PH_i(t) as an input. #--------------------------------------------------------------------------------- # SLP_i(t+1) = SLP_i(t) = 0, if (i mod 4 = 1) OR (i mod 4 = 2) # = 1, if (i mod 4 = 0) OR (i mod 4 = 3) #--------------------------------------------------------------------------------- # 1 = SLP1 .n 1 0 # 2 = SLP2 .n 2 0 # 3 = SLP3 .n 3 0 1 # 4 = SLP4 .n 4 0 1 #------------------------------------------------------------------------------------- # wg_i(t+1) = (CIA_i(t) AND SLP_i(t) AND (NOT CIR_i(t))) OR # = (wg_i(t) AND (CIA_i(t) OR SLP_i(t)) AND (NOT CIR_i(t))) #------------------------------------------------------------------------------------- # 5 = wg1 .n 5 4 5 45 1 49 -110 1 1-10 1 11-0 1 00-- 0 0-0- 0 -00- 0 ---1 0 # 6 = wg2 .n 6 4 6 46 2 50 -110 1 1-10 1 11-0 1 00-- 0 0-0- 0 -00- 0 ---1 0 # 7 = wg3 .n 7 4 7 47 3 51 -110 1 1-10 1 11-0 1 00-- 0 0-0- 0 -00- 0 ---1 0 # 8 = wg4 .n 8 4 8 48 4 52 -110 1 1-10 1 11-0 1 00-- 0 0-0- 0 -00- 0 ---1 0 #---------------------------------------------------------------------------------- # WG_i(t+1) = wg_i(t) #---------------------------------------------------------------------------------- # 9 = WG1 .n 9 1 5 1 1 0 0 # 10 = WG2 .n 10 1 6 1 1 0 0 # 11 = WG3 .n 11 1 7 1 1 0 0 # 12 = WG4 .n 12 1 8 1 1 0 0 #---------------------------------------------------------------------------------- # en_i(t+1) = (WG_{i-1}(t) OR WG_{i+1}(t)) AND (NOT SLP_i(t)) # by default WG0 = WG5= 0 # to avoid introducing variables for WG0 and WG5, we replaced # them by constant 0 and simplified associated functions #---------------------------------------------------------------------------------- # en1 is simplified to have 2 regulators, since WG0 = 0 # 13 = en1 .n 13 2 10 1 10 1 0- 0 -1 0 # 14 = en2 .n 14 3 9 11 2 -10 1 1-0 1 00- 0 --1 0 # 15 = en3 .n 15 3 10 12 3 -10 1 1-0 1 00- 0 --1 0 # en4 is simplified to have 2 regulators, since WG5 = 0 # 16 = en12 .n 16 2 11 4 10 1 0- 0 -1 0 #---------------------------------------------------------------------------------- # EN_i(t+1) = en_i(t) #---------------------------------------------------------------------------------- # 17 = EN1 .n 17 1 13 1 1 0 0 # 18 = EN2 .n 18 1 14 1 1 0 0 # 19 = EN3 .n 19 1 15 1 1 0 0 # 20 = EN4 .n 20 1 16 1 1 0 0 #---------------------------------------------------------------------------------- # hh_i(t+1) = EN_i(t) AND (NOT CIR_i(t)) #---------------------------------------------------------------------------------- # 21 = hh1 .n 21 2 17 49 10 1 0- 0 -1 0 # 22 = hh2 .n 22 2 18 50 10 1 0- 0 -1 0 # 23 = hh3 .n 23 2 19 51 10 1 0- 0 -1 0 # 24 = hh4 .n 24 2 20 52 10 1 0- 0 -1 0 #---------------------------------------------------------------------------------- # HH_i(t+1) = hh_i(t) #---------------------------------------------------------------------------------- # 25 = HH1 .n 25 1 21 1 1 0 0 # 26 = HH2 .n 26 1 22 1 1 0 0 # 27 = HH3 .n 27 1 23 1 1 0 0 # 28 = HH4 .n 28 1 24 1 1 0 0 #---------------------------------------------------------------------------------- # ptc_i(t+1) = CIA_i(t) AND (NOT EN_i(t)) AND (NOT CIR_i(t)) #---------------------------------------------------------------------------------- # 29 = ptc1 .n 29 3 45 17 49 100 1 0-- 0 -1- 0 --1 0 # 30 = ptc2 .n 30 3 46 18 50 100 1 0-- 0 -1- 0 --1 0 # 31 = ptc3 .n 31 3 47 19 51 100 1 0-- 0 -1- 0 --1 0 # 32 = ptc4 .n 32 3 48 20 52 100 1 0-- 0 -1- 0 --1 0 #---------------------------------------------------------------------------------------------------------- # PTC_i(t+1) = ptc_i(t) OR (PTC_i(t) AND (NOT HH_{i-1}(t)) AND (NOT HH_{i+1}(t))) # by default HH0 = HH5 = 0 # to avoid introducing variables for HH0 and HH5, we replaced # them by constant 0 and simplified associated functions #---------------------------------------------------------------------------------------------------------- # PTC1 is simplified to have 3 regulators, since HH0 = 0 # 33 = PTC1 .n 33 3 29 33 26 -10 1 1-- 1 00- 0 0-1 0 # 34 = PTC2 .n 34 4 30 34 25 27 -100 1 1--- 1 00-- 0 0-1- 0 0--1 0 # 35 = PTC3 .n 35 4 31 35 26 28 -100 1 1--- 1 00-- 0 0-1- 0 0--1 0 # PTC1 is simplified to have 3 regulators, since HH5 = 0 # 36 = PTC12 .n 36 3 32 36 27 -10 1 1-- 1 00- 0 0-1 0 #---------------------------------------------------------------------------------- # ci_i(t+1) = NOT EN_i(t) #---------------------------------------------------------------------------------- # 37 = ci1 .n 37 1 17 0 1 1 0 # 38 = ci2 .n 38 1 18 0 1 1 0 # 39 = ci3 .n 39 1 19 0 1 1 0 # 40 = ci4 .n 40 1 20 0 1 1 0 #---------------------------------------------------------------------------------- # CI_i(t+1) = ci_i(t) #---------------------------------------------------------------------------------- # 41 = CI1 .n 41 1 37 1 1 0 0 # 42 = CI2 .n 42 1 38 1 1 0 0 # 43 = CI3 .n 43 1 39 1 1 0 0 # 44 = CI4 .n 44 1 40 1 1 0 0 #------------------------------------------------------------------------------------------------------------------------------------- # CIA_i(t+1) = CI_i(t) AND ((NOT PTC_i(t)) OR HH_{i-1}(t) OR HH_{i+1}(t) OR hh_{i-1}(t) OR hh_{i+1}(t)) #------------------------------------------------------------------------------------------------------------------------------------- # CIA1 is simplified to have 4 regulators, since HH0 = 0 and hh0=0 # 45 = CIA1 .n 45 4 41 33 26 22 1--1 1 1-1- 1 10-- 1 -100 0 0--- 0 # 46 = CIA2 .n 46 6 42 34 25 27 21 23 1----1 1 1---1- 1 1--1-- 1 1-1--- 1 10---- 1 -10000 0 0----- 0 # 47 = CIA3 .n 47 6 43 35 26 28 22 24 1----1 1 1---1- 1 1--1-- 1 1-1--- 1 10---- 1 -10000 0 0----- 0 # CIA is simplified to have 4 regulators, since HH5 = 0 and hh5=0 # 48 = CIA4 .n 48 4 44 36 27 23 1--1 1 1-1- 1 10-- 1 -100 0 0--- 0 #--------------------------------------------------------------------------------------------------------------------------------------------------------- # CIR_i(t+1) = CI_i(t) AND PTC_i(t) AND (NOT HH_{i-1}(t)) AND (NOT HH_{i+1}(t)) AND (NOT hh_{i-1}(t)) AND (NOT hh_{i+1}(t))) #---------------------------------------------------------------------------------------------------------------------------------------------------------- # CIR1 is simplified to have 4 regulators, since HH0 = 0 and hh0=0 # 49 = CIR1 .n 49 4 41 33 26 22 1100 1 0--- 0 -0-- 0 --1- 0 ---1 0 # 50 = CIR2 .n 50 6 42 34 25 27 21 23 110000 1 0----- 0 -0---- 0 --1--- 0 ---1-- 0 ----1- 0 -----1 0 # 51 = CIR3 .n 51 6 43 35 26 28 22 24 110000 1 0----- 0 -0---- 0 --1--- 0 ---1-- 0 ----1- 0 -----1 0 # CIR5 is simplified to have 4 regulators, since HH5 = 0 and hh5=0 # 52 = CIR5 .n 52 4 44 36 27 23 1100 1 0--- 0 -0-- 0 --1- 0 ---1 0