Commit Graph

287 Commits

Author SHA1 Message Date
Sergiu Ivanov 90bebbded9 boolean-power,boolean-power-stream: Move from networks to utils. 2020-05-28 00:24:02 +02:00
Sergiu Ivanov b98d00320c networks: Use test-case and define instead of let. 2020-05-27 23:39:38 +02:00
Sergiu Ivanov c8d88de6c2 networks: Move the tests to the test submodule. 2020-05-22 23:40:40 +02:00
Sergiu Ivanov 82def3b704 networks: Ensure that all variables always appear in the interaction graphs. 2020-05-14 01:06:17 +02:00
Sergiu Ivanov 6c707ddba7 build-signed-interaction-graph: Use _. 2020-05-14 00:56:46 +02:00
Sergiu Ivanov faa3d9ff00 networks: Remove unorg-syn and unorg-asyn. 2020-03-25 23:21:16 +01:00
Sergiu Ivanov 319b15d956 networks: Remove ppsg and ppsgb. 2020-03-25 23:15:37 +01:00
Sergiu Ivanov e8e3a71d87 networks: Remove nn. 2020-03-25 23:05:28 +01:00
Sergiu Ivanov dfb882d891 networks: Remove st and stb. 2020-03-25 00:31:23 +01:00
Sergiu Ivanov ac8c999272 networks: Add table->network. 2020-03-24 00:18:39 +01:00
Sergiu Ivanov 9961dc7c8b networks: Add "and networks" to "Constructing functions". 2020-03-23 22:31:58 +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 5330336b6d networks: Use '+ and '- as labels in the signed interaction graph. 2020-03-22 20:26:04 +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 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 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 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 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 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 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 a3967d8bf8 utils: Move pretty-print-modalities as pretty-print-set-sets from networks. 2020-03-02 23:59:37 +01:00
Sergiu Ivanov ac7ce12a9d networks: Remove a custom definition of dds-step-one.
This method now falls back to dds-step-one-annotated.
2020-03-02 12:12:57 +01:00
Sergiu Ivanov 9143f6f9fc networks: Add pretty-print-modalities and use it for state graphs. 2020-03-01 17:57:58 +01:00
Sergiu Ivanov a3f5d4d2ba networks, pretty-print-state-graph-with: Use pretty-print-set for edges. 2020-03-01 15:20:44 +01:00
Sergiu Ivanov 6e5c73bcb2 networks: Add build-full-boolean-state-graph-annotated. 2020-02-28 21:56:42 +01:00
Sergiu Ivanov 2ece2e76ee networks: Re-export dds-build-state-graph-annotated and dds-build-n-step-state-graph-annotated. 2020-02-28 21:46:25 +01:00
Sergiu Ivanov fd290a049e networks: Make the pretty printing procedures sort the keys. 2020-02-26 21:27:02 +01:00
Sergiu Ivanov 63b676b1ba networks: Remove an extra call to booleanize-state. 2020-02-26 21:02:44 +01:00
Sergiu Ivanov b53639839f networks: Add booleanize-state and make stb a shortcut for it. 2020-02-26 20:47:38 +01:00
Sergiu Ivanov 2022e0187b networks: Add make-state-booleanize and stb. 2020-02-26 15:51:25 +01:00
Sergiu Ivanov 9e0db04035 networks: Make nn a shortcut form network-form->network.
It used to be for make-network-from-forms, but nn is more practical in
my Org-mode setup as of now.
2020-02-23 20:28:11 +01:00
Sergiu Ivanov b0acbadadd networks: Add build-all-boolean-states and build-full-boolean-state-graph. 2020-02-23 20:13:37 +01:00
Sergiu Ivanov f88bc0d01b networks: Add further infrastructure for pretty-printing networks. 2020-02-23 19:44:55 +01:00
Sergiu Ivanov 3a873ab256 networks: Add pretty-print-state. 2020-02-23 19:24:53 +01:00
Sergiu Ivanov 39575f39c2 generic: Add dds-build-state-graph and dds-build-n-step-state-graph.
Also provide a common fallback implementation.
2020-02-23 18:51:57 +01:00
Sergiu Ivanov e7eb1fb09e networks: Implement dds-step-one-annotated. 2020-02-23 14:11:55 +01:00
Sergiu Ivanov 5969595bed networks: Add and use modality? 2020-02-23 13:53:02 +01:00
Sergiu Ivanov 95d248c548 networks, generic: Make all set/c arguments 'dont-care. 2020-02-23 13:38:18 +01:00
Sergiu Ivanov 8c92a4bbd8 networks, generic: Add dds-step. 2020-02-23 13:29:09 +01:00
Sergiu Ivanov 598904fecd networks: Fix an extra newline in provides. 2020-02-23 12:27:59 +01:00
Sergiu Ivanov 5907edfef0 dds-step -> dds-step-one 2020-02-23 12:23:55 +01:00
Sergiu Ivanov 5d5d0347e8 networks: Make dynamics inherit from dds and implement dds-step. 2020-02-23 12:19:47 +01:00
Sergiu Ivanov f9191287e1 networks: Make update accept any kind of sets of variables. 2020-02-23 12:10:27 +01:00
Sergiu Ivanov cbf949ba5a network: Use domain-mapping/c in the contract of make-same-domains. 2020-02-23 11:51:59 +01:00
Sergiu Ivanov dedfddfe55 networks: Add make-dynamics-from-func, make-asyn-dynamics, make-syn-dynamics. 2020-02-23 11:42:01 +01:00
Sergiu Ivanov c9cbb1c951 networks: Add make-syn and make-asyn. 2020-02-23 11:25:19 +01:00
Sergiu Ivanov 2fa89f05b9 networks: Start section Dynamics of networks. 2020-02-23 11:10:35 +01:00
Sergiu Ivanov 2d0e688425 networks: Add build-boolean-signed-interaction-graph. 2020-02-23 10:00:48 +01:00
Sergiu Ivanov b04d897c67 Remove extra comments at the end of networks. 2020-02-23 09:26:07 +01:00
Sergiu Ivanov 4a6888ddde networks: Rewrite update for immutable hashes. 2020-02-23 09:19:45 +01:00
Sergiu Ivanov 1492c33e1a networks: Remove build-all-states-same-domain.
This is function is not really necessary, since I have
make-same-domains.
2020-02-23 09:13:03 +01:00
Sergiu Ivanov 245b22316e networks: Add and use domain-mapping/c. 2020-02-23 09:12:01 +01:00
Sergiu Ivanov bdbbae6eb6 networks: Make build-all-state take a hash as the domain mapping.
It used to take a list of pairs.
2020-02-23 09:09:43 +01:00
Sergiu Ivanov 9eca7bf449 Prefer for, for/list, and for/hash for iterating over hashes. 2020-02-23 08:57:50 +01:00
Sergiu Ivanov 5fd1b95d5c networks: Fix the comments for make-state and make-network-from-functions. 2020-02-23 08:47:16 +01:00
Sergiu Ivanov daf2e079ae networks: Add build-signed-interaction-graph. 2020-02-23 01:00:09 +01:00
Sergiu Ivanov 251a7dcf23 networks: make-same-domain-mapping -> make-same-domains, make-boolean-domain-mapping -> make-boolean-domains 2020-02-23 00:15:18 +01:00
Sergiu Ivanov 183160da6f networks: Add make-same-domain-mapping and make-boolean-domain-mapping. 2020-02-23 00:13:36 +01:00
Sergiu Ivanov cf676028d3 networks, update: Don't talk about Boolean networks. 2020-02-23 00:05:04 +01:00
Sergiu Ivanov fbef580a01 networks: Add get-interaction-sign. 2020-02-23 00:04:19 +01:00
Sergiu Ivanov c2c87d0a7d network: Create immutable hashes by default. 2020-02-22 23:22:43 +01:00
Sergiu Ivanov ac8e63c5f4 networks: Make the state an immutable hash table by default. 2020-02-22 23:20:10 +01:00
Sergiu Ivanov 25a88c820a networks: Add build-all-states-same-domain. 2020-02-22 22:41:56 +01:00
Sergiu Ivanov da3f25922a networks: Add build-all-states. 2020-02-22 22:31:05 +01:00
Sergiu Ivanov 8dfa11b17c networks: Say contracts are contract?. 2020-02-22 10:37:37 +01:00
Sergiu Ivanov 038e543eff networks: Add build-interaction-graph. 2020-02-20 15:56:48 +01:00
Sergiu Ivanov cd714773be lambda -> λ 2020-02-20 15:36:29 +01:00
Sergiu Ivanov 75bf044fd8 networks: Add list-interactions. 2020-02-20 15:17:32 +01:00
Sergiu Ivanov 768fa7aabc networks: Restructure the exports slightly. 2020-02-20 14:13:48 +01:00
Sergiu Ivanov cf19859be8 Rewrite bn without types, rename it to networks.
I tried generalising my code from Boolean networks to any kinds of
networks, but got tired of having to fight the type system (for now at
least). The last drop was the fact that the graph library does not
seem to have a typed version. So I decided to go with contracts
instead.
2020-02-20 00:56:30 +01:00