dds: A Home-made Toolkit for Discrete Dynamical Systems in Racket
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sergiu Ivanov 208dc12060 networks: Add normalize-tbn. 2 days ago
example networks: Add build-tbn-state-graph and use it in example. 4 days ago
LICENSE Add the GNU GPL licence file. 7 months ago Use a headline instead of #+TITLE: 7 months ago
functions.rkt functions: Always use named test-cases in tests. 3 months ago
generic.rkt generic: Use collect-by-key/sets to collect the labels for state graphs. 7 months ago
info.rkt Add info.rkt. 5 months ago
networks.rkt networks: Add normalize-tbn. 2 days ago
rs.rkt rs/test: Use test-case and define instead of let. 5 months ago
utils.rkt utils: Typo in the error message in hash-intersect. 2 months ago

dds: A Home-made Toolkit for Discrete Dynamical Systems in Racket

This is a toolkit for playing with various discrete dynamical systems in Racket. A discrete dynamical system is a system which evolves from a discrete state to some other discrete states (many or one). The systems are discrete in the sense that we can identify successive states with no other states in between. Equivalently, the phase state of the system is discrete (and is often called the state graph). These constraints imply the possibility of associating discrete, possibly branching timelines to any evolution of the system.

DISCLAIMER: I develop this toolkit as a support for my research on discrete dynamical systems. The primary objective for this framework is to fit my approach to these systems. Essentially, this framework should fit to the "shape of my mind", which is not necessarily the same as yours.

Currently, the toolkit includes the following files:

  • generic.rkt: The generic interface for a discrete dynamical system, with functions for constructing state graphs.

  • utils.rkt: Misc utility functions.

  • networks.rkt: Implements network-based models, which generalise Boolean networks, threshold Boolean automata networks, multivalued networks, etc.

  • rs.rkt: Implements reaction systems, a variant of set rewriting.

The toolkit is designed with Emacs Org-mode interoperability in mind. The file example/ explains the features available for interaction with Org-mode.