Commit graph

372 commits

Author SHA1 Message Date
Sergiu Ivanov
ac2d03f953 Add some tests for building signed interaction graphs from networks.
Previously I only had functions for building interaction graphs from
forms.  These do not play well with networks randomly generated from
truth tables.
2020-03-22 21:08:45 +01:00
Sergiu Ivanov
b79bae9d67 example: Update the randomly generated network. 2020-03-22 21:03:20 +01:00
Sergiu Ivanov
27fa176d0f utils: Make read-org-variable-mapping return an immutable hash. 2020-03-22 21:01:51 +01:00
Sergiu Ivanov
b0eb81b051 networks: Add build-signed-interaction-graph and build-boolean-signed-interaction-graph.
No tests yet.
2020-03-22 21:00:12 +01:00
Sergiu Ivanov
a77d42af85 networks: Functions for interaction graph explicitly say they use forms. 2020-03-22 20:45:11 +01:00
Sergiu Ivanov
65445e6ba8 networks: Make get-interaction-sign take a network, not a form. 2020-03-22 20:43:14 +01:00
Sergiu Ivanov
b38bebb67b example: Add some examples for random functions and networks. 2020-03-22 20:38:32 +01:00
Sergiu Ivanov
5330336b6d networks: Use '+ and '- as labels in the signed interaction graph. 2020-03-22 20:26:04 +01:00
Sergiu Ivanov
e7b35a451c Add the example on tabulating Boolean networks. 2020-03-22 20:22:23 +01:00
Sergiu Ivanov
32d117a155 example: Network functions -> Tabulating functions and networks. 2020-03-22 19:36:07 +01:00
Sergiu Ivanov
401f895dd2 networks: Make build-all-states order the variables. 2020-03-22 19:34:08 +01:00
Sergiu Ivanov
cd11bcc330 networks: Export and test the functions for generation of random networks. 2020-03-22 19:28:44 +01:00
Sergiu Ivanov
c823001492 networks: Add tabulate-network and tabulate-boolean-network. 2020-03-22 19:22:54 +01:00
Sergiu Ivanov
5fd16e4465 networks: Add random-network, random-boolean-network, random-boolean-networks/vars. 2020-03-22 18:40:50 +01:00
Sergiu Ivanov
75b19c7977 networks: Make sectioning more fine-grained. 2020-03-22 14:40:23 +01:00
Sergiu Ivanov
aa7ba6de8a network-test: Fix some indentation. 2020-03-22 14:36:02 +01:00
Sergiu Ivanov
a40106e47c networks: Add random-function/state and random-boolean-function/state. 2020-03-22 14:35:26 +01:00
Sergiu Ivanov
5358f9bf57 networks: Add tabulate-state and tabulate-state/boolean. 2020-03-22 14:34:40 +01:00
Sergiu Ivanov
f0ac9223e4 utils: Don't forget hash->list/ordered (the tests were broken). 2020-03-21 19:23:30 +01:00
Sergiu Ivanov
9113a788a9 networks: Make network? more precise.
Require that the hash table maps variables to procedures, instead of
requiring nothing of the values of the hash table.
2020-03-21 19:19:23 +01:00
Sergiu Ivanov
9682049df5 networks: Remove network/c.
I've never used it.
2020-03-21 19:18:45 +01:00
Sergiu Ivanov
8505d2d590 utils: Add hash->list/ordered. 2020-03-21 19:16:24 +01:00
Sergiu Ivanov
a55b671248 networks: Make the contracts on functions dealing with Boolean tables more precise. 2020-03-20 22:29:33 +01:00
Sergiu Ivanov
bba2dfad12 networks: Split the randomness functions into their own section. 2020-03-20 22:22:33 +01:00
Sergiu Ivanov
6c75a073c0 networks: Add random-boolean-table, random-boolean-function, random-boolean-function/list. 2020-03-20 22:15:29 +01:00
Sergiu Ivanov
435ee34acb utils: Refactor update-graph.
Make update-graph follow a little bit more the guidelines here:
https://docs.racket-lang.org/style/Choosing_the_Right_Construct.html
2020-03-20 21:42:10 +01:00
Sergiu Ivanov
519f3759ea networks,enumerate-boolean-tables: Use boolean-power/stream. 2020-03-20 16:43:14 +01:00
Sergiu Ivanov
59d5b040f4 networks: Remove n from boolean-power-n and boolean-power-n/stream. 2020-03-20 16:41:26 +01:00
Sergiu Ivanov
e89163d044 networks: Add boolean-power-n/stream. 2020-03-20 16:40:15 +01:00
Sergiu Ivanov
36c26d2a1f networks: Export and test boolean-power-n. 2020-03-20 16:38:32 +01:00
Sergiu Ivanov
34fbc516e2 utils: Add cartesian-product/stream. 2020-03-20 16:07:34 +01:00
Sergiu Ivanov
9502a9e981 utils: Add in-random. 2020-03-20 01:19:14 +01:00
Sergiu Ivanov
f09f24d2dd networks: Use streams for enumerating Boolean functions. 2020-03-20 00:15:51 +01:00
Sergiu Ivanov
2c79ca3781 networks: Add enumerate-boolean-tables, enumerate-boolean-functions, and enumerate-boolean-functions/list. 2020-03-19 23:40:08 +01:00
Sergiu Ivanov
80ef41eaa4 networks,table->function: Store the function in a local binding.
This avoids reconstructing the function from the table every time the
lambda is called.
2020-03-19 23:17:23 +01:00
Sergiu Ivanov
9bcb5681ce networks: Add table->function and table->function/list. 2020-03-18 21:40:09 +01:00
Sergiu Ivanov
572bef8a7b networks: Add tabulate and illustrate it in example. 2020-03-15 16:12:35 +01:00
Sergiu Ivanov
a8ee7cc523 utils: Add procedure-fixed-arity?. 2020-03-15 16:12:05 +01:00
Sergiu Ivanov
f005d77516 example: Explain setting network variables to constants. 2020-03-04 23:51:11 +01:00
Sergiu Ivanov
07e1a73b50 networks: Add read-org-network-make-asyn and read-org-network-make-syn.
Also add some shortcuts.
2020-03-04 18:54:36 +01:00
Sergiu Ivanov
f8dc65df0a example: Promote Reaction Systems to top-level heading. 2020-03-04 18:21:20 +01:00
Sergiu Ivanov
0cf05acb21 Use a headline instead of #+TITLE:
Gitea seems to not handle Org-mode options either.
2020-03-03 17:50:26 +01:00
Sergiu Ivanov
20b629443a Remove Emacs Local Variables from README.org.
Gitea doesn't know not to render :noexport: tags (which is fine).
2020-03-03 17:48:21 +01:00
Sergiu Ivanov
c5dda2e6c7 Add the GNU GPL licence file. 2020-03-03 14:47:15 +01:00
Sergiu Ivanov
19e831b1a9 REAMDE.org: Add. 2020-03-03 14:44:55 +01:00
Sergiu Ivanov
2437dec620 example: Explain why states for reaction systems include full context sequences. 2020-03-03 01:03:33 +01:00
Sergiu Ivanov
cbdfdabe7a example: Illustrate building interactive processes. 2020-03-03 01:01:21 +01:00
Sergiu Ivanov
0d73b33ff3 example: Some updates to the state graph of the reaction system. 2020-03-03 01:01:00 +01:00
Sergiu Ivanov
d958533d2c rs: Make build-interactive-process run for one extra step. 2020-03-03 01:00:21 +01:00
Sergiu Ivanov
9ce3040240 rs: Add build-interactive-process. 2020-03-03 00:51:53 +01:00