chemart / fraglets
View on GitHubFraglets — Network protocols written as a chemistry. A fraglet is a string of symbols that is simultaneously a data packet and a fragment of program: its head symbol is an instruction, its tail is payload. Instructions transform a …
{"species": [{"id": "a[matchp,cdp,send,b,split,send,a,ack,*]", "structure": "a[matchp cdp send b split send a ack *]"}, {"id": "a[cdp,data]", "structure": "a[cdp data]"}, {"id": "a[send,b,split,send,a,ack,*,data]", "structure": "a[send b split send a ack * data]"}, {"id": "b[split,send,a,ack,*,data]", "structure": "b[split send a ack * data]"}, {"id": "b[send,a,ack]", "structure": "b[send a ack]"}, {"id": "b[data]", "structure": "b[data]"}, {"id": "a[ack]", "structure": "a[ack]"}], "reactions": [{"reactants": {"a[matchp,cdp,send,b,split,send,a,ack,*]": 1, "a[cdp,data]": 1}, "products": {"a[matchp,cdp,send,b,split,send,a,ack,*]": 1, "a[send,b,split,send,a,ack,*,data]": 1}, "rate": null, "count": null}, {"reactants": {"a[send,b,split,send,a,ack,*,data]": 1}, "products": {"b[split,send,a,ack,*,data]": 1}, "rate": null, "count": null}, {"reactants": {"b[split,send,a,ack,*,data]": 1}, "products": {"b[send,a,ack]": 1, "b[data]": 1}, "rate": null, "count": null}, {"reactants": {"b[send,a,ack]": 1}, "products": {"a[ack]": 1}, "rate": null, "count": null}], "status": "complete", "initial_state": {"a[matchp,cdp,send,b,split,send,a,ack,*]": 1.0, "a[cdp,data]": 1.0}, "inflow": null, "outflow": null, "extras": {"segments": {"net": ["a", "b"]}, "scheduling": "every reaction reachable from the program fraglets; no kinetics", "compartments": {"a": ["a[matchp,cdp,send,b,split,send,a,ack,*]", "a[cdp,data]", "a[send,b,split,send,a,ack,*,data]", "a[ack]"], "b": ["b[split,send,a,ack,*,data]", "b[send,a,ack]", "b[data]"]}}, "chemistry": "fraglets", "params": {"program": "a a net\na b net\nf a[matchp cdp send b split send a ack *]\nf a[cdp data]\n", "dialect": "pycellchem", "method": "closure", "max_species": 200, "steps": 1000}, "seed": 1}