Connection-set algebra (CSA) library.
Library for algebraic connection-set expressions, built on M. Djurfeldt's idea of connection-set algebra [1].
1: Mikael Djurfeldt. The Connection-set Algebra: a formalism for the representation of connectivity structure in neuronal network models, implementations in Python and C++, and their use in simulators, BMC Neuroscience, 2011. https://doi.org/10.1186/1471-2202-12-S1-P80
Connection-set algebra (CSA) library
A library for constructing connection matrices between two collections of elements. Inspired by Mikael Djurfeldt's article from 2012 (Neuroinformatics).
Introduction
Connection-set algebra is a powerful algebra for describing connections between two elements. This library provides a syntax tree for modeling the set operations, as well as a means to transform the operations into adjacency matrices.
Installation
This is a library and not an executable. Clone the repository, enter it and run stack build
(requires stack).
Connection-set algebra (CSA)
Say that you have two nodes that connect to each other. In a adjacency matrix this can be described as a full connection like so:
1 2
+ ———
1 | 1 1
2 | 1 1
In CSA this is simply an AllToAll
connection. Similarly a OneToOne
connection describes the following adjacency matrix:
1 2
+ ———
1 | 1 0
2 | 0 1
And here is the algebra part: If we say AllToAll - OneToOne
we get:
1 2
+ ———
1 | 0 1
2 | 1 0
Contact
Jens Egholm [email protected].