SMT Solving for Vesicle Traffic Systems in Cells A. Shukla 2 M. Srivas 2 A. Gupta 1 M. Thattai 3 1 TIFR, Mumbai 2 CMI, Chennai 3 NCBS, Bangalore August 29, 2017 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
An interesting question Biological interest: What is the form of an eukaryotic membrane traffic? Figure from mukund’s recent paper [mani16a]. 2 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Vesicular Transport in eukaryotic Cells consist of compartments (nodes) 10. n 9 n 6 n 3 n 5 n 8 n 2 n 7 n 4 n 1 3 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Vesicular Transport in eukaryotic Cells consist of compartments (nodes) 10. Compartments contain n 0 : 01234 molecules (labels). n 1 : 01236 n 2 : 12357 3 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Vesicular Transport in eukaryotic Cells consist of compartments (nodes) 10. Compartments contain n 0 : 01234 molecules (labels). Molecules moves around via “transfer vesicles ” among n 1 : 01236 n 2 : 12357 compartments. (edges label: 123 transferred molecules). 3 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
VTS ≡ labeled directed graph... n 0 : 01234 013 01 23 0123 n 1 : 01236 n 2 : 12357 123 13 that follows certain biological rules. 4 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Problem? Find a VTS that satisfies some biological rules . 1 VTS is most complex network in cells [mani 16b] 5 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Problem? Find a VTS that satisfies some biological rules . Solution? 1 VTS is most complex network in cells [mani 16b] 5 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Problem? Find a VTS that satisfies some biological rules . Solution? Easy... 1 VTS is most complex network in cells [mani 16b] 5 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Problem? Find a VTS that satisfies some biological rules . Solution? Easy... Encode rules as combinatorial constraints and use SAT/SMT solvers 1 VTS is most complex network in cells [mani 16b] 5 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Problem? Find a VTS that satisfies some biological rules . Solution? Easy... Encode rules as combinatorial constraints and use SAT/SMT solvers However, encoding is treacherous!! 1 1 VTS is most complex network in cells [mani 16b] 5 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Problem? Find a VTS that satisfies some biological rules . Solution? Easy... Encode rules as combinatorial constraints and use SAT/SMT solvers However, encoding is treacherous!! 1 Contribution: an effective encoding. 1 VTS is most complex network in cells [mani 16b] 5 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Find VTS that satisfied these constraints 1 Activity constraint. 2 Fusion constraint. 3 Pairing function. 4 Stability constraint. 5 Connectivity constraint. 6 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
1 “Activity constraint”: a molecule may or may not be active on the edge/nodes. 2 A VTS is k-connected if every pair of compartments remain reachable after dropping k 1 vesicles. 7 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
1 “Activity constraint”: a molecule may or may not be active on the edge/nodes. 2 “Fusion constraint”: each edge must have an active molecule that fuses with some active molecule at its target node. 2 A VTS is k-connected if every pair of compartments remain reachable after dropping k 1 vesicles. 7 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
1 “Activity constraint”: a molecule may or may not be active on the edge/nodes. 2 “Fusion constraint”: each edge must have an active molecule that fuses with some active molecule at its target node. 3 “Pairing function”: the fusion is dependent on molecule pairs for each edge. 2 A VTS is k-connected if every pair of compartments remain reachable after dropping k 1 vesicles. 7 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
1 “Activity constraint”: a molecule may or may not be active on the edge/nodes. 2 “Fusion constraint”: each edge must have an active molecule that fuses with some active molecule at its target node. 3 “Pairing function”: the fusion is dependent on molecule pairs for each edge. 4 “Stability constraint”: all molecules must move around in closed cycles. 2 A VTS is k-connected if every pair of compartments remain reachable after dropping k 1 vesicles. 7 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
1 “Activity constraint”: a molecule may or may not be active on the edge/nodes. 2 “Fusion constraint”: each edge must have an active molecule that fuses with some active molecule at its target node. 3 “Pairing function”: the fusion is dependent on molecule pairs for each edge. 4 “Stability constraint”: all molecules must move around in closed cycles. 5 “Connectivity constraint”: resulting graph is not k-connected 2 . 2 A VTS is k-connected if every pair of compartments remain reachable after dropping k 1 vesicles. 7 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Formal VTS A Formal VTS is a tuple Definition G = (N, M, E, L, P, f). where N set of nodes representing compartments. M is a different type of molecules in the system. E is the set of edges with molecule sets as labels . L is the set of node labels . 8 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Formal VTS A Formal VTS is a tuple Definition G = (N, M, E, L, P, f). where N set of nodes representing compartments. M is a different type of molecules in the system. E is the set of edges with molecule sets as labels . L is the set of node labels . P is the pairing relation . f : M → ℘ ( M ) → B are the activity maps . 8 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
The search problem Fix k, M, N ; find a G such that following constraints are satisfied: 1 Activity constraint. 2 Fusion constraint. 3 Pairing function. 4 Stability constraint. 5 Connectivity constraint. 9 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Results Constraints Variant Graph connectivity Rest Activity A. N + N No graph B. B + N No graph C. F + P + S + C N + B 3-connected D. B + B 2-connected E. N + P No graph F. B + P 4-connected N: No regulation. Every present molecule is active. B : Use boolean function for regulation. P: Use pairing matrix for regulation. 10 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Example: Variation C Regulation on node: None Regulation on edge: Boolean function 11 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 n 1 : 01236 n 2 : 12357 123 13 M1 → M6 M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 13 M1 → M6 M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 : M2 is active. 123 13 M1 → M6 M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 : M2 is active. 123 Fusion constraint. 13 M1 → M6 M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 : M2 is active. 123 Fusion constraint. M2, M5 are active. 13 M1 → M6 M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 : M2 is active. 123 Fusion constraint. M2, M5 are active. 13 Pairing function. M1 → M6 M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 : M2 is active. 123 Fusion constraint. M2, M5 are active. 13 Pairing function. M1 → M6 M2, M5 form a pair. M2 → M5 M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Our favorite VTS: Our favorite edge n 0 : 01234 N = { n 0 , n 1 , n 2 } 013 M = { M0, ..., M7 } 01 23 0123 Activity constraint. n 1 : 01236 n 2 : 12357 123 : M2 is active. 123 Fusion constraint. M2, M5 are active. 13 Pairing function. M1 → M6 M2, M5 form a pair. M2 → M5 Stability constraint. M3 → M4 12 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Example: Our favorite edge, Stability condition n 0 : 01234 013 01 23 0123 n 1 : 01236 n 2 : 12357 Stability constraint. 123 M1 , M3 come back direct edge. 13 M1 → M6 M2 → M5 M3 → M4 13 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Example: Our favorite edge, SS condition n 0 : 01234 013 01 23 0123 Stability constraint. n 1 : 01236 n 2 : 12357 M1, M3 come back 123 direct edge. M2 comes back using 13 node n 0 . M1 → M6 M2 → M5 M3 → M4 14 A.Gupta, A.Shukla, M.Srivas, M.Thattai SASB 2017
Recommend
More recommend